Generic GraphQL request action
What is GraphQL?
Learn more about GraphQL in its official documentation here.
GraphQL is an open-source query language for APIs and a server-side runtime for fulfilling those queries. It enables clients to interact with a single endpoint to get the exact data they need, without chaining requests together. Unlike traditional REST APIs that return fixed datasets, GraphQL allows clients to request specific data, eliminating over-fetching or under-fetching of data and offering improved efficiency. The GraphQL Schema defines the structure of the data and available operations, serving as a clear contract between the frontend and backend. Like REST APIs, GraphQL is composed of a basic request and response for each call. While REST APIs rely on multiple endpoints for this process, GraphQL shifts the responsibility of defining what should be called back to the user.
GraphQL in Rewst works off of two operation types:
Query: Used for reading or fetching data
Mutation: Used for writing, updating, or deleting data
GraphQL has a third operation type called subscription. Rewst's generic GraphQL action currently only supports queries and mutations. If there is a subscription you are looking to use in Rewst, please submit a request to our product team for a dedicated action.
What is the Rewst GraphQL generic request action?
Before using the Generic GraphQL request action, we recommend that you have:
An understanding of GraphQL query structure and syntax
Familiarity with Rewst's data model and the below available schema documentation
The Rewst GraphQL generic request action is used for making authenticated requests against Rewst's GraphQL API. This action is available in the Rewst actions section of the Workflow Builder's actions library, but is open-ended in its capabilities. It enables:
Direct API access: Execute custom GraphQL queries and mutations against Rewst's backend
Advanced data retrieval: Access data structures not available through standard actions
Custom automation: Build sophisticated workflows with precise data control
Administrative operations: Perform bulk operations and administrative tasks programmatically

Make your choices in the Parameters tab of the action's settings to set it up in your workflow:
Operation type: Choose the type of GraphQL operation, query or mutation
Graph operation: The name of the specific GraphQL operation to execute
Uses the Graph Operations reference
Options in the drop-down list will dynamically populate based on your selected operation type
Variable values: Variables to pass to the GraphQL operation
JSON object type, but can be passed via Jinja
Contains the input parameters for the selected operation
Response fields: Enter text into this field to specify the fields to include in the GraphQL response
Only provide the inner content, as it will be wrapped in curly braces
Example,
id orgName email { name }
Raw query: The complete raw GraphQL query string to execute
An advanced alternative to using the other fields and selectors in the Parameters tab
Allows for full control over query structure
Filtering arguments: Where versus search
Every plural list query in the Generic GraphQL Request action accepts up to two filtering arguments: where and search. They are not interchangeable.
Where: Equality only - field: value → WHERE field = value
field: value → WHERE field = valuewhere accepts a flat object of field: value pairs. Each pair is rendered as WHERE field = value. There's no way to express greater than, in this list, contains substring, etc. through where.
The set of fields exposed in each <Object>WhereInput type is hand-curated by Rewst engineering, not auto-derived from the GraphQL model. That is why Tags exposes id, name, orgId for filtering but not color or description, even though those columns exist on the model.
Search: Accepts operator wrappers
search accepts a <Object>SearchInput type whose fields are wrapped in comparison expressions. The wrapper type depends on the column type:
id_comparison_exp
_eq, _ne, _in, _nin
string_comparison_exp
_eq, _neq, _in, _nin, _like, _nlike, _ilike, _nilike, _substr, _lt, _lte, _gt, _gte
int_comparison_exp
_eq, _neq, _in, _nin, _lt, _lte, _gt, _gte
float_comparison_exp
_eq, _neq, _in, _nin, _lt, _lte, _gt, _gte
bool_comparison_exp
_eq, _ne
json_comparison_exp
_eq, _ne, _contains
Use search whenever you need anything other than strict equality, or any time the field you want to filter on isn't exposed by where.
Example: isEnabled is not on OrganizationWhereInput, but it is on OrganizationSearchInput.
Generic GraphQL request action usage examples
Basic query example
Mutation example
Raw query example
Tag example
Generic GraphQL request action: Allowed operations
Schema reference
Key entity types include:
Organization: Core organizational data and settings
Workflow: Automation workflow definitions and execution data
Action: Available actions and their configurations
Trigger: Event triggers and their configurations
Form: Dynamic forms and field definitions
Template: Reusable templates and scripts
User: User accounts and permissions
Pack: Integration packs and their components
Each of the query expanders below contains information that includes if where or search are mandatory for use of the query. Be sure to reference this information and use your query accordingly.
Operation type: Queries
Action and configuration queries
actionOption - Retrieves a specific action option configuration.
GraphQL schema
ActionOptionWhereInput supported fields
optionLabel
String
optionValue
String
organizationId
ID
packConfigId
ID
packConfig
PackConfigWhereInput (nested)
resourceName
String
Is where or search mandatory?
Yes: where with enough fields to identify a single row — typically packConfigId plus optionValue or optionLabel. The parent packConfig must belong to an organization that you manage. No search input is needed.
Usage example
actionOptions-Retrieves multiple action options with filtering and sorting.
GraphQL schema
ActionOptionWhereInput supported fields
optionLabel
String
optionValue
String
organizationId
ID
packConfigId
ID
packConfig
PackConfigWhereInput (nested)
resourceName
String
Is where or search mandatory?
Yes: where: { packConfigId: <id> } (or organizationId) plus limit/offset. The parent packConfig must belong to an organization that you manage.
No search input required— only equality filtering via where.
Usage example
localReferenceOptions-Gets dropdown options for picking another Rewst object such as a workflow, template or form, inside a parameter
GraphQL schema
Is where or search mandatory?
Yes: required modelName and orgId
Note: search here is a plain string matched against the option label, not a SearchInput with operator wrappers.
Usage example
resourceTypesByPack-Gets resource types organized by pack.
GraphQL schema
Is where or search mandatory?
No - takes no where, search, or pagination.
Action management queries
action-Retrieves a specific action definition.
GraphQL schema
ActionInput (where) supported fields
runner_type
String
deprecated
Boolean
description
String
enabled
Boolean
hidden
Boolean
id
ID
name
String
category
String
outputSchema
JSON
pack
PackInput (nested)
packId
ID
parameters
JSON
ref
String
uid
ID
ActionSearch supported fields
deprecated
bool_comparison_exp
description
string_comparison_exp
enabled
bool_comparison_exp
hidden
bool_comparison_exp
id
id_comparison_exp
name
string_comparison_exp
outputSchema
json_comparison_exp
parameters
json_comparison_exp
ref
string_comparison_exp
uid
id_comparison_exp
category
string_comparison_exp
pack
PackSearchInput (nested)
Is where or search mandatory?
where or search narrow enough to match a single action — typically id, or packId + ref. Note: ActionInput is the where-input despite the name. It's reused as the create/update input.
Usage example
actions-Retrieves multiple actions with filtering.
GraphQL schema
ActionInput (where) supported fields
runner_type
String
deprecated
Boolean
description
String
enabled
Boolean
hidden
Boolean
id
ID
name
String
category
String
outputSchema
JSON
pack
PackInput (nested)
packId
ID
parameters
JSON
ref
String
uid
ID
ActionSearch supported fields
deprecated
bool_comparison_exp
description
string_comparison_exp
enabled
bool_comparison_exp
hidden
bool_comparison_exp
id
id_comparison_exp
name
string_comparison_exp
outputSchema
json_comparison_exp
parameters
json_comparison_exp
ref
string_comparison_exp
uid
id_comparison_exp
category
string_comparison_exp
pack
PackSearchInput (nested)
Is where or search mandatory?
limit (defaults to 100) and offset. Scope by packId (where: { packId: <id> }) or by pack (search: { pack: { id: { _eq: <id> } } }) when possible — unscoped calls return every action visible to your managed orgs.
actionsForOrg-Gets actions available to a specific organization.
GraphQL schema
ActionInput (where) supported fields
runner_type
String
deprecated
Boolean
description
String
enabled
Boolean
hidden
Boolean
id
ID
name
String
category
String
outputSchema
JSON
pack
PackInput (nested)
packId
ID
parameters
JSON
ref
String
uid
ID
ActionSearch supported fields
deprecated
bool_comparison_exp
description
string_comparison_exp
enabled
bool_comparison_exp
hidden
bool_comparison_exp
id
id_comparison_exp
name
string_comparison_exp
outputSchema
json_comparison_exp
parameters
json_comparison_exp
ref
string_comparison_exp
uid
id_comparison_exp
category
string_comparison_exp
pack
PackSearchInput (nested)
Is where or search mandatory?
orgId plus limit/offset. Use this instead of actions when you want the action list as it appears for one specific org.
System and debug queries
Component management queries
component-Retrieves a specific component definition.
GraphQL schema
Is where or search mandatory?
No - identified directly by id.
components-Gets multiple components for an organization.
GraphQL schema
Is where or search mandatory?
No - scoped solely by orgId. Filter client-side or use componentsByRoots for specific IDs.
componentsByRoots-Gets components by their root IDs.
GraphQL schema
Is where or search mandatory?
No - identified by rootIds list.
componentTree-Gets the component tree structure.
GraphQL schema
Is where or search mandatory?
No - identified by id and returns the latest version's tree.
Crate management queries
crate-Retrieves a specific crate.
GraphQL schema
CrateWhereInput supported fields
description
String
id
ID
lastPublishedAt
String
name
String
orgId
ID
primaryPack
PackWhereInput (nested)
status
String
tokens
JSON
workflow
WorkflowWhereInput (nested)
workflowId
ID
gid
ID
isPublic
Boolean
CrateSearchInput supported fields
description
string_comparison_exp
id
id_comparison_exp
lastPublishedAt
string_comparison_exp
name
string_comparison_exp
primaryPack
PackSearchInput (nested)
tokens
json_comparison_exp
workflow
WorkflowSearch (nested)
Is where or search mandatory?
where or search narrow enough to match a single Crate — typically id or gid. Pass selectedOrgId to control the per-org isUnpackedForSelectedOrg flag.
crates-Gets multiple crates with filtering and sorting.
GraphQL schema
CrateWhereInput supported fields
description
String
id
ID
lastPublishedAt
String
name
String
orgId
ID
primaryPack
PackWhereInput (nested)
status
String
tokens
JSON
workflow
WorkflowWhereInput (nested)
workflowId
ID
gid
ID
isPublic
Boolean
CrateSearchInput supported fields
description
string_comparison_exp
id
id_comparison_exp
lastPublishedAt
string_comparison_exp
name
string_comparison_exp
primaryPack
PackSearchInput (nested)
tokens
json_comparison_exp
workflow
WorkflowSearch (nested)
Is where or search mandatory?
limit and offset, plus a scoping filter — typically where: { orgId: <id> }, where: { isPublic: true }, or search: { name: { _ilike: "%foo%" } }. Unscoped calls are slow.
crateExportInfo-Gets export information for a workflow to crate.
GraphQL schema
Is where or search mandatory?
No - workflowId returns an unstructured JSON blob.
crateTokenTypes-Gets available crate token types.
GraphQL schema
Is where or search mandatory?
No - Returns values like text, linebreak, selectVar, inputVar, selectPackVar, etc.
crateUnpackingArgumentSet-Gets crate unpacking argument sets.
GraphQL schema
CrateUnpackingArgumentSetWhereInput supported fields
crateId
ID
id
ID
orgId
ID
Is where or search mandatory?
Yes - where narrow enough to match a single set — typically id, or crateId + orgId. No search input is needed.
Feature preview queries
featurePreviewSetting-Gets a specific feature preview setting.
GraphQL schema
FeaturePreviewSettingWhereInput supported fields
id
ID
label
String
Is where or search mandatory?
Yes - at least one of id or label on where. No search input is needed.
featurePreviewSettings-Gets multiple feature preview settings.
GraphQL schema
Is where or search mandatory?
No - no search input, no limit/offset . The table is small and unpaginated.
Foreign object reference queries
foreignObjectReference-Gets a specific foreign object reference.
GraphQL schema
ForeignObjectReferenceWhereInput supported fields
id
ID
referenceId
ID
identifier
ID
workflowExecution
WorkflowExecutionWhereInput (nested)
action
ActionInput (nested)
actionId
ID
packConfig
PackConfigWhereInput (nested)
packConfigId
ID
orgId
ID
Is where or search mandatory?
Yes - For where, at least one filter — typically id, or referenceId + orgId. No search input is needed.
foreignObjectReferences-Gets multiple foreign object references.
GraphQL schema
ForeignObjectReferenceWhereInput supported fields
id
ID
referenceId
ID
identifier
ID
workflowExecution
WorkflowExecutionWhereInput (nested)
action
ActionInput (nested)
actionId
ID
packConfig
PackConfigWhereInput (nested)
packConfigId
ID
orgId
ID
Is where or search mandatory?
No search input and no limit/offset — scope with where: { orgId: <id> } to avoid pulling cross-organization rows.
Form management queries
form-Retrieves a specific form definition, gets a single form.
GraphQL schema
FormWhereInput — supported fields
clonedFromId
ID
id
ID
isSynchronized
Boolean
name
String
orgId
ID
triggers
TriggerWhereInput (nested)
triggerId
[ID]
unpackedFromId
ID
FormSearchInput — supported fields
clonedFromId
id_comparison_exp
createdBy
UserSearchInput (nested)
id
id_comparison_exp
isSynchronized
bool_comparison_exp
name
string_comparison_exp
organization
OrganizationSearchInput (nested)
organizationId
id_comparison_exp
triggerId
id_comparison_exp
unpackedFromId
id_comparison_exp
updatedBy
UserSearchInput (nested)
Is where or search mandatory?
Yes - At least one filter is needed, identifying a single form - typically id on where.
forms-Gets multiple forms with filtering.
GraphQL schema
FormWhereInput — supported fields
clonedFromId
ID
id
ID
isSynchronized
Boolean
name
String
orgId
ID
triggers
TriggerWhereInput (nested)
triggerId
[ID]
unpackedFromId
ID
FormSearchInput — supported fields
clonedFromId
id_comparison_exp
createdBy
UserSearchInput (nested)
id
id_comparison_exp
isSynchronized
bool_comparison_exp
name
string_comparison_exp
organization
OrganizationSearchInput (nested)
organizationId
id_comparison_exp
triggerId
id_comparison_exp
unpackedFromId
id_comparison_exp
updatedBy
UserSearchInput (nested)
Is where or search mandatory?
limit and offset.
Note: forms runs SpiceDB permission filtering with a scan-budget cap (default 5× limit). For low-auth-ratio tenants the helper may return hasMore: false before exhausting the table — raise limit if a while (hasMore) paginator stops short.
packConfigsForForm-Gets pack configurations associated with a form.
GraphQL schema
Is where or search mandatory?
No - formId, orgId.
evaluatedForm-Gets an evaluated form for a specific trigger.
GraphQL schema
EvaluatedFormWhereInput supported fields
orgId
ID! (required)
triggerId
ID! (required)
Is where or search mandatory?
No search input is needed. Use both orgId and triggerId on where - both non-null.
Microsoft CSP queries
microsoftCSPCustomer-Gets Microsoft CSP customer information.
GraphQL schema
MicrosoftCSPCustomerWhereInput supported fields
companyName
String
cspTenantId
String
hasConsent
Boolean
id
ID
linkedOrganizations
OrganizationWhereInput (nested)
tenantId
String
Is where or search mandatory?
Yes - cspPackConfigId plus at least one filter on where to identify the customer. No search input is needed.
microsoftCSPCustomers-Gets multiple Microsoft CSP customers.
GraphQL schema
MicrosoftCSPCustomerSearchInput supported fields
companyName
string_comparison_exp
cspTenantId
string_comparison_exp
hasConsent
bool_comparison_exp
id
id_comparison_exp
linkedOrganizations
OrganizationSearchInput (nested)
tenantId
string_comparison_exp
Is where or search mandatory?
cspPackConfigId. No limit/offset — results are scoped to the supplied pack config.
Trigger instance queries
orgTriggerInstance-Gets a specific organization trigger instance.
GraphQL schema
OrgTriggerInstanceWhereInput supported fields
id
ID
orgId
ID
organization
OrganizationInput (nested)
triggerId
ID
trigger
TriggerWhereInput (nested)
OrgTriggerInstanceSearchInput supported fields
id
id_comparison_exp
orgId
id_comparison_exp
organization
OrganizationInput (nested)
triggerId
id_comparison_exp
trigger
TriggerSearchInput (nested)
Is where or search mandatory?
At least one filter is needed identifying a single instance — typically id, or orgId + triggerId.
orgTriggerInstances-Gets multiple organization trigger instances.
GraphQL schema
OrgTriggerInstanceWhereInput supported fields
id
ID
orgId
ID
organization
OrganizationInput (nested)
triggerId
ID
trigger
TriggerWhereInput (nested)
OrgTriggerInstanceSearchInput supported fields
id
id_comparison_exp
orgId
id_comparison_exp
organization
OrganizationInput (nested)
triggerId
id_comparison_exp
trigger
TriggerSearchInput (nested)
Is where or search mandatory?
limit and offset .
Organization variable queries
orgVariable-Gets a specific organization variable.
GraphQL schema
OrgVariableWhereInput supported fields
id
ID
name
String
value
String
category
OrgVariableCategory
orgId
ID
organization
OrganizationWhereInput (nested)
packConfigId
ID
packConfig
PackConfigWhereInput (nested)
OrgVariableSearchInput supported fields
id
id_comparison_exp
name
string_comparison_exp
value
string_comparison_exp
category
OrgVariableCategorySearchInput
orgId
id_comparison_exp
organization
OrganizationSearchInput (nested)
packConfigId
id_comparison_exp
packConfig
PackConfigSearch (nested)
Is where or search mandatory?
At least one filter is required— typically id, or orgId + name. Pass maskSecrets: false only when raw secret values are required.
orgVariables-Gets multiple organization variables.
GraphQL schema
OrgVariableWhereInput supported fields
id
ID
name
String
value
String
category
OrgVariableCategory
orgId
ID
organization
OrganizationWhereInput (nested)
packConfigId
ID
packConfig
PackConfigWhereInput (nested)
OrgVariableSearchInput supported fields
id
id_comparison_exp
name
string_comparison_exp
value
string_comparison_exp
category
OrgVariableCategorySearchInput
orgId
id_comparison_exp
organization
OrganizationSearchInput (nested)
packConfigId
id_comparison_exp
packConfig
PackConfigSearch (nested)
Is where or search mandatory?
Yes - limit and offset; scope with where: { orgId: <id> }.
visibleOrgVariables-Gets organization variables visible to a specific organization.
GraphQL schema
OrgVariableWhereInput supported fields
id
ID
name
String
value
String
category
OrgVariableCategory
orgId
ID
organization
OrganizationWhereInput (nested)
packConfigId
ID
packConfig
PackConfigWhereInput (nested)
OrgVariableSearchInput supported fields
id
id_comparison_exp
name
string_comparison_exp
value
string_comparison_exp
category
OrgVariableCategorySearchInput
orgId
id_comparison_exp
organization
OrganizationSearchInput (nested)
packConfigId
id_comparison_exp
packConfig
PackConfigSearch (nested)
Is where or search mandatory?
Yes - filter via search. Results include cascading variables from parent orgs. No where input is required. visibleForOrgId, limit, offset.
Organization management queries
organization-Gets a specific organization.
GraphQL schema
OrganizationWhereInput supported fields
id
ID
isStaff
Boolean
managedOrgs
OrganizationWhereInput (recursive)
managingOrg
OrganizationWhereInput (recursive)
managingOrgId
ID
name
String
Exact match only
orgSlug
String
rocSiteId
String
tags
OrganizationTagsWhereInput
Nested: { id: [ID!] }
users
UserWhereInput
Filter orgs by their users
domain
String
OrganizationSearchInput supported fields
createdAt
string_comparison_exp
id
id_comparison_exp
installedPacks
PackSearchInput
isDeleted
bool_comparison_exp
isEnabled
bool_comparison_exp
isInternal
bool_comparison_exp
isOnboarding
bool_comparison_exp
isStaff
bool_comparison_exp
managedOrgs
OrganizationSearchInput (recursive)
managingOrg
OrganizationSearchInput (recursive)
managingOrgId
id_comparison_exp
name
string_comparison_exp
orgSlug
string_comparison_exp
resultsRetentionDays
int_comparison_exp
rocSiteId
string_comparison_exp
tags
TagSearchInput
users
UserSearchInput
Is where or search mandatory?
At least one of where or search to identify the org — typically where: { id: <id> } or where: { orgSlug: <slug> }.
organizations-Gets multiple organizations.
GraphQL schema
OrganizationWhereInput supported fields
id
ID
isStaff
Boolean
managedOrgs
OrganizationWhereInput (recursive)
managingOrg
OrganizationWhereInput (recursive)
managingOrgId
ID
name
String
Exact match only
orgSlug
String
rocSiteId
String
tags
OrganizationTagsWhereInput
Nested: { id: [ID!] }
users
UserWhereInput
Filter orgs by their users
domain
String
Not filterable via where - available via search: isEnabled, isInternal, isDeleted, isOnboarding, createdAt, resultsRetentionDays
Not filterable at all - neither where nor search): isMsp, tid, deletedAt
OrganizationSearchInput supported fields
createdAt
string_comparison_exp
id
id_comparison_exp
installedPacks
PackSearchInput
isDeleted
bool_comparison_exp
isEnabled
bool_comparison_exp
isInternal
bool_comparison_exp
isOnboarding
bool_comparison_exp
isStaff
bool_comparison_exp
managedOrgs
OrganizationSearchInput (recursive)
managingOrg
OrganizationSearchInput (recursive)
managingOrgId
id_comparison_exp
name
string_comparison_exp
orgSlug
string_comparison_exp
resultsRetentionDays
int_comparison_exp
rocSiteId
string_comparison_exp
tags
TagSearchInput
users
UserSearchInput
Is where or search mandatory?
Yes, in practice. organizations is one of the three unbounded tables. Always pass:
where: { managingOrgId: CTX.organization.id }or asearchfilter, andlimit(recommended ≤ 100) andoffsetfor pagination.
Worked example: Listing disabled organizations
isEnabled is not on OrganizationWhereInput, so this fails:
Use search instead:
orgSearch-Performs organization search with breadcrumbs.
GraphQL schema
Is where or search mandatory?
No - WhereInput/SearchInput - search here is a plain free-text string matched against org name, not an operator-wrapper type. ReturnsOrgSearchResult (id, name, hasChildren, breadcrumbs, managingOrgId, supportAccessStatus, isInternal), not fullOrganization`.
softDeletedOrgs-Gets soft-deleted organizations.
GraphQL schema
Is where or search mandatory?
There is no where/search/pagination. Scoping is solely managingOrgId.
Pack action option queries
packActionOption-Gets a specific pack action option.
GraphQL schema
PackActionOptionWhereInput supported fields
id
ID
packId
ID
name
String
path
String
method
HTTPMethod
paginate
Boolean
queryParams
JSON
pathParams
JSON
headers
JSON
requiredPathVars
[String!]
requiredQueryVars
[String!]
requiredHeaderVars
[String!]
resultsKey
String
valueField
String
label
String
labelIsTemplate
Boolean
valueFieldIsPath
Boolean
Is where or search mandatory?
Yes - There is no search input — equality filtering via where only. PackActionOptionWhereInput
packActionOptions-Gets multiple pack action options.
GraphQL schema
PackActionOptionsWhereInput supported fields
id
ID
packId
ID
name
String
path
String
method
HTTPMethod
paginate
Boolean
queryParams
JSON
pathParams
JSON
headers
JSON
requiredPathVars
[String!]
requiredQueryVars
[String!]
requiredHeaderVars
[String!]
resultsKey
String
valueField
String
label
String
labelIsTemplate
Boolean
valueFieldIsPath
Boolean
Is where or search mandatory?
There is no search input — equality filtering via where only. limit, offset; scope with where: { packId: <id> }.
Pack bundle queries
packBundle-Gets a specific pack bundle.
GraphQL schema
PackBundleWhereInput supported fields
description
String
id
ID
name
String
packs
PackWhereInput (nested)
ref
String
Is where or search mandatory?
Yes - there is no search input. Use where (non-null) with at least one identifying field — typically id or ref.
packBundles-Gets multiple pack bundles.
GraphQL schema
PackBundleSearchInput — supported fields
description
string_comparison_exp
id
id_comparison_exp
name
string_comparison_exp
packs
PackSearchInput (nested)
ref
String (equality only — plain string, not a comparison exp)
Is where or search mandatory?
limit and offset
Pack configuration queries
packConfig-Gets a specific pack configuration.
GraphQL schema
PackConfigWhereInput supported fields
actionOptions
ActionOptionWhereInput (nested)
config
JSON
default
Boolean
description
String
id
ID
metadata
JSON
name
String
orgId
ID
pack
PackWhereInput (nested)
packId
ID
ref
ID
PackConfigSearch supported fields
id
id_comparison_exp
name
string_comparison_exp
default
bool_comparison_exp
description
string_comparison_exp
config
json_comparison_exp
metadata
json_comparison_exp
orgId
id_comparison_exp
pack
PackSearchInput (nested)
packId
id_comparison_exp
Is where or search mandatory?
Yes - Use at least one of where or search to identify the config.
Note: config and metadata are @sensitive and may be redacted depending on caller permissions.
packConfigs-Gets multiple pack configurations.
GraphQL schema
PackConfigWhereInput supported fields
actionOptions
ActionOptionWhereInput (nested)
config
JSON
default
Boolean
description
String
id
ID
metadata
JSON
name
String
orgId
ID
pack
PackWhereInput (nested)
packId
ID
ref
ID
PackConfigSearch supported fields
id
id_comparison_exp
name
string_comparison_exp
default
bool_comparison_exp
description
string_comparison_exp
config
json_comparison_exp
metadata
json_comparison_exp
orgId
id_comparison_exp
pack
PackSearchInput (nested)
packId
id_comparison_exp
Is where or search mandatory?
Yes - orgId scoping via where or search — unscoped calls return everything visible to the caller.
There is no limit/offset — this query does not accept pagination args. Always scope aggressively - e.g. where: { orgId: <id>, packId: <id> }.
packConfigsForOrg-Gets pack configurations for a specific organization.
GraphQL schema
Is where or search mandatory?
No - There is no where/search/pagination. It's scoped solely by packIds + orgId.
Pack management queries
pack-Gets a specific integration pack.
GraphQL schema
PackWhereInput supported fields
actions
ActionInput (nested)
packType
PackType
description
String
id
ID
installedBy
OrganizationWhereInput (nested)
name
String
packBundleId
ID
ref
String
orgId
ID
status
PackStatus
isOauthConfiguration
Boolean
Is where or search mandatory?
Yes - where with at least one identifying field — typically id or ref. There is no search input.
packsAndBundlesByInstalledState-Gets packs and bundles organized by installation state.
GraphQL schema
Is where or search mandatory?
There is no where/search/pagination. Returns installedPacksAndBundles and marketplacePacksAndBundles. orgId is mandatory.
Page management queries
page-Gets a specific page definition.
GraphQL schema
PageWhereInput supported fields
id
ID
name
String
siteId
ID
site
SitePropertiesInput (nested: { id: ID, domain: String })
path
String
domain
String
orgId
ID
clonedFromId
ID
_
String (editor render hint — ignored server-side)
Is where or search mandatory?
Yes - where (non-null) with at least one identifying field — typically id or siteId + path. There is no search input.
pages-Gets multiple pages.
GraphQL schema
PageSearchInput supported fields
name
String
Equality only — plain string, NOT a string_comparison_exp
siteId
ID
Equality only
Is where or search mandatory?
Yes - limit and offset; scope with where: { orgId: <id> } or where: { siteId: <id> }.
PageSearchInput does not accept _eq/_in/_like wrappers despite being named search.
pageVars-Gets page variables.
GraphQL schema
Is where or search mandatory?
id. query is an arbitrary JSON object passed as URL query params for variable resolution.
Permission queries
permission-Gets a specific permission.
GraphQL schema
PermissionWhereInput supported fields
id
ID
templateId
ID
objectId
String
objectType
String
permissionType
String
Is where or search mandatory?
There is no search input and no limit/offset. Scope to a specific object to keep result sets small (typically objectId + objectType).
permissions-Gets multiple permissions.
GraphQL schema
PermissionWhereInput supported fields
id
ID
templateId
ID
objectId
String
objectType
String
permissionType
String
Is where or search mandatory?
There is no search input and no limit/offset. Scope to a specific object to keep result sets small (typically objectId + objectType).
Sensor type queries
sensorType-Gets a specific sensor type.
GraphQL schema
SensorTypeInput (where) supported fields
description
String
enabled
Boolean
entryPoint
String
id
ID
name
String
notifyOnTriggerChanges
Boolean
packId
ID
ref
String
SensorTypeSearchInput supported fields
description
string_comparison_exp
enabled
bool_comparison_exp
entryPoint
string_comparison_exp
id
id_comparison_exp
name
string_comparison_exp
notifyOnTriggerChanges
Boolean (equality only)
packId
id_comparison_exp
ref
string_comparison_exp
Is where or search mandatory?
Yes - where or search with at least one filter field is required.
sensorTypes-Gets multiple sensor types.
GraphQL schema
SensorTypeInput (where) supported fields
description
String
enabled
Boolean
entryPoint
String
id
ID
name
String
notifyOnTriggerChanges
Boolean
packId
ID
ref
String
SensorTypeSearchInput supported fields
description
string_comparison_exp
enabled
bool_comparison_exp
entryPoint
string_comparison_exp
id
id_comparison_exp
name
string_comparison_exp
notifyOnTriggerChanges
Boolean (equality only)
packId
id_comparison_exp
ref
string_comparison_exp
Is where or search mandatory?
limit and offset.
Site and app management queries
site-Gets a specific site/app.
GraphQL schema
SiteWhereInput supported fields
id
ID
isLive
Boolean
name
String
domain
String
orgId
ID
customDomain
String
isDnsValidated
Boolean
useCustomDomain
Boolean
clonedFromId
ID
isSynchronized
Boolean
SiteSearchInput supported fields
id
id_comparison_exp
isLive
bool_comparison_exp
name
string_comparison_exp
domain
string_comparison_exp
organization
OrganizationSearchInput (nested)
organizationId
id_comparison_exp
customDomain
string_comparison_exp
isDnsValidated
bool_comparison_exp
useCustomDomain
bool_comparison_exp
clonedFromId
id_comparison_exp
Is where or search mandatory?
Yes - where or search with at least one filter field.
sites-Gets multiple sites/apps.
GraphQL schema
SiteWhereInput supported fields
id
ID
isLive
Boolean
name
String
domain
String
orgId
ID
customDomain
String
isDnsValidated
Boolean
useCustomDomain
Boolean
clonedFromId
ID
isSynchronized
Boolean
SiteSearchInput supported fields
id
id_comparison_exp
isLive
bool_comparison_exp
name
string_comparison_exp
domain
string_comparison_exp
organization
OrganizationSearchInput (nested)
organizationId
id_comparison_exp
customDomain
string_comparison_exp
isDnsValidated
bool_comparison_exp
useCustomDomain
bool_comparison_exp
clonedFromId
id_comparison_exp
Is where or search mandatory?
There is no limit/offset. Always scope by orgId to keep result sets small.
getAppPermissions-Gets app permissions for an organization.
GraphQL schema
Is where or search mandatory?
orgId
getSiteTheme-Gets site theme configuration.
GraphQL schema
Is where or search mandatory?
One of id or domain.
Tag management queries
tag-Gets a specific tag.
GraphQL schema
TagWhereInput supported fields
id
ID
name
String
Exact match only — use search.name for _like/_ilike
orgId
ID
Recommended on every call (see scoping rule above)
organizations
TagOrganizationsWhereInput
Nested filter: { id: [ID] } — match tags assigned to any of these orgs
TagSearchInput supported fields
id
id_comparison_exp
name
string_comparison_exp
orgId
id_comparison_exp
organizations
OrganizationSearchInput (recursive)
Is where or search mandatory?
Use limit and offset.
It is not filterable via where , despite existing on the Tag model: color, description, createdAt, updatedAt, crates, packs, triggers.
tags-Gets multiple tags.
GraphQL schema
TagWhereInput supported fields
id
ID
name
String
Exact match only — use search.name for _like/_ilike
orgId
ID
Recommended on every call (see scoping rule above)
organizations
TagOrganizationsWhereInput
Nested filter: { id: [ID] } — match tags assigned to any of these orgs
It is not filterable via where , despite existing on the Tag model: color, description, createdAt, updatedAt, crates, packs, triggers.
TagSearchInput supported fields
id
id_comparison_exp
name
string_comparison_exp
orgId
id_comparison_exp
organizations
OrganizationSearchInput (recursive)
Is where or search mandatory?
Schema-level: no.
Practically: yes — pass where: { orgId: CTX.organization.id } to avoid the auto-inject path. This is the operation that produced the Symbol(or)/Symbol(eq)/Symbol(in) error.
crateTags-Gets tags associated with crates.
GraphQL schema
Is where or search mandatory?
tag.orgId, limit and offset.
Task and execution analytics queries
dailyTaskCountsByDateRange-Gets daily task counts within a date range.
GraphQL schema
Is where or search mandatory?
orgId, startDate, endDate
taskExecutionStats-Gets task execution statistics.
GraphQL schema
Is where or search mandatory?
orgId. createdSince is optional but recommended to bound the scan.
taskLog-Gets a specific task log entry.
GraphQL schema
TaskLogWhereInput supported fields
executionTime
String
id
ID
input
JSON
message
String
originalParentTaskId
String
originalPrincipalOrgId
String
originalPrincipalOrgName
String
originalRunAsOrgId
String
originalRunAsOrgName
String
originalWorkflowExecutionId
String
originalWorkflowTaskId
String
parentTaskId
ID
principalOrgId
ID
result
JSON
runAsOrgId
ID
status
String
taskExecutionId
ID
workflowExecutionId
ID
workflowTaskId
ID
TaskLogSearchInput supported fields
id
ID (equality only)
originalPrincipalOrgId
string_comparison_exp
originalPrincipalOrgName
string_comparison_exp
originalRunAsOrgId
string_comparison_exp
originalRunAsOrgName
string_comparison_exp
principalOrgId
id_comparison_exp
runAsOrgId
id_comparison_exp
status
string_comparison_exp
workflowExecutionId
id_comparison_exp
Is where or search mandatory?
Yes - where or search with at least id or workflowExecutionId is required.
Note: input and result are sensitive fields and may be redacted.
taskLogs-Gets multiple task log entries.
GraphQL schema
TaskLogWhereInput supported fields
executionTime
String
id
ID
input
JSON
message
String
originalParentTaskId
String
originalPrincipalOrgId
String
originalPrincipalOrgName
String
originalRunAsOrgId
String
originalRunAsOrgName
String
originalWorkflowExecutionId
String
originalWorkflowTaskId
String
parentTaskId
ID
principalOrgId
ID
result
JSON
runAsOrgId
ID
status
String
taskExecutionId
ID
workflowExecutionId
ID
workflowTaskId
ID
TaskLogSearchInput supported fields
id
ID (equality only)
originalPrincipalOrgId
string_comparison_exp
originalPrincipalOrgName
string_comparison_exp
originalRunAsOrgId
string_comparison_exp
originalRunAsOrgName
string_comparison_exp
principalOrgId
id_comparison_exp
runAsOrgId
id_comparison_exp
status
string_comparison_exp
workflowExecutionId
id_comparison_exp
Is where or search mandatory?
workflowExecutionId(viawhereorsearch), limit, and offset. task_logs` is one of the three large unbounded tables — unscoped or unpaginated calls will time out.
Template management queries
template- Gets a specific template.
GraphQL schema
TemplateInput (where) supported fields
body
String
clonedFromId
ID
contentType
String
description
String
id
ID
isSynchronized
Boolean
language
String
name
String
orgId
ID
tagIds
[ID!]
unpackedFromId
ID
Is where or search mandatory?
Yes - where with at least one filter field, typically id. There is no search input.
templates-Gets multiple templates.
GraphQL schema
TemplateSearch supported fields
clonedFromId
id_comparison_exp
contentType
string_comparison_exp
description
string_comparison_exp
id
id_comparison_exp
isSynchronized
bool_comparison_exp
name
string_comparison_exp
organization
OrganizationSearchInput (nested)
unpackedFromId
id_comparison_exp
Is where or search mandatory?
limit and offset
Trigger type queries
triggerType-Gets a specific trigger type.
GraphQL schema
TriggerTypeWhereInput supported fields
description
String
id
ID
isPoll
Boolean
isWebhook
Boolean
name
String
packId
ID
parametersSchema
JSON
outputSchema
JSON
ref
String
triggers
TriggerWhereInput (nested)
enabled
Boolean
Is where or search mandatory?
Yes - where with at least one filter field. There is no search input.
triggerTypes-Gets multiple trigger types.
GraphQL schema
description
string_comparison_exp
id
id_comparison_exp
isPoll
Boolean (equality only)
isWebhook
Boolean (equality only)
name
string_comparison_exp
pack
PackSearchInput (nested)
parametersSchema
json_comparison_exp
outputSchema
json_comparison_exp
ref
string_comparison_exp
triggers
TriggerSearchInput (nested)
enabled
bool_comparison_exp
Is where or search mandatory?
limit and offset
Trigger management queries
trigger-Gets a specific trigger.
GraphQL schema
TriggerWhereInput supported fields
clonedFromId
ID
criteria
JSON
description
String
enabled
Boolean
formId
ID
id
ID
isSynchronized
Boolean
name
String
orgId
ID
orgInstances
OrgTriggerInstanceWhereInput (nested)
parameters
JSON
state
JSON
triggerType
TriggerTypeInput (nested)
triggerTypeId
ID
unpackedFromId
ID
workflowId
ID
TriggerSearchInput supported fields
clonedFromId
id_comparison_exp
criteria
json_comparison_exp
description
string_comparison_exp
enabled
Boolean (equality only)
formId
id_comparison_exp
id
id_comparison_exp
isSynchronized
bool_comparison_exp
name
string_comparison_exp
organization
OrganizationSearchInput (nested)
orgId
id_comparison_exp
orgInstances
OrgTriggerInstanceSearchInput (nested)
packOverrides
PackOverrideSearchInput (nested)
parameters
json_comparison_exp
state
json_comparison_exp
triggerType
TriggerTypesSearchInput (nested)
triggerTypeId
id_comparison_exp
unpackedFromId
id_comparison_exp
workflow
WorkflowSearch (nested)
workflowId
id_comparison_exp
Is where or search mandatory?
Yes - where or search with at least one filter field.
workflowCompletionListeners-Gets triggers configured to listen for workflow completion events.
GraphQL schema:
triggers-Gets multiple triggers.
GraphQL schema
TriggerWhereInput supported fields
clonedFromId
ID
criteria
JSON
description
String
enabled
Boolean
formId
ID
id
ID
isSynchronized
Boolean
name
String
orgId
ID
orgInstances
OrgTriggerInstanceWhereInput (nested)
parameters
JSON
state
JSON
triggerType
TriggerTypeInput (nested)
triggerTypeId
ID
unpackedFromId
ID
workflowId
ID
TriggerSearchInput supported fields
clonedFromId
id_comparison_exp
criteria
json_comparison_exp
description
string_comparison_exp
enabled
Boolean (equality only)
formId
id_comparison_exp
id
id_comparison_exp
isSynchronized
bool_comparison_exp
name
string_comparison_exp
organization
OrganizationSearchInput (nested)
orgId
id_comparison_exp
orgInstances
OrgTriggerInstanceSearchInput (nested)
packOverrides
PackOverrideSearchInput (nested)
parameters
json_comparison_exp
state
json_comparison_exp
triggerType
TriggerTypesSearchInput (nested)
triggerTypeId
id_comparison_exp
unpackedFromId
id_comparison_exp
workflow
WorkflowSearch (nested)
workflowId
id_comparison_exp
Is where or search mandatory?
Yes - limit and offset, plus a scoping filter (typically where: { orgId: <id> } or workflowId). hasTagIds and excludeTagIds are convenience filters layered on top of where/search.
triggerDbNotificationErrors-Gets database notification errors for a trigger.
GraphQL schema
Is where or search mandatory?
triggerId
User invite queries
userInvite-Gets a specific user invite.
GraphQL schema
UserInviteWhereInput supported fields
acceptedAt
String
email
String
id
ID
isAccepted
Boolean
organization
OrganizationWhereInput (nested)
orgId
ID
sendEmail
Boolean
UserInviteSearchInput supported fields
email
string_comparison_exp
id
id_comparison_exp
organization
OrganizationSearchInput (nested)
orgId
id_comparison_exp
sendEmail
bool_comparison_exp
Is where or search mandatory?
Yes - use where or search with at least one filter field. Only available when ENABLE_ADMIN_APPROVAL_REQUESTS is OFF.
userInvites-Gets multiple user invites.
GraphQL schema
UserInviteWhereInput supported fields
acceptedAt
String
email
String
id
ID
isAccepted
Boolean
organization
OrganizationWhereInput (nested)
orgId
ID
sendEmail
Boolean
UserInviteSearchInput supported fields
email
string_comparison_exp
id
id_comparison_exp
organization
OrganizationSearchInput (nested)
orgId
id_comparison_exp
sendEmail
bool_comparison_exp
Is where or search mandatory?
limit, offset, and a scoping filter, typically where: { orgId: <id> }). Only available when ENABLE_ADMIN_APPROVAL_REQUESTS is OFF.
User management queries
me-Gets current user information.
GraphQL schema
Is where or search mandatory?
No - returns the currently authenticated user and their organization respectively.
user-Gets a specific user.
GraphQL schema
GetUserWhereInput supported fields
id
ID
isSuperuser
Boolean
managedOrgs
OrganizationWhereInput (nested)
organization
OrganizationWhereInput (nested)
orgId
ID! (required)
roleIds
[String!]
sub
String
username
String
isTestUser
Boolean
isApiUser
Boolean
UserSearchInput supported fields
createdAt
string_comparison_exp
id
id_comparison_exp
isApiUser
bool_comparison_exp
isSuperuser
bool_comparison_exp
isTestUser
bool_comparison_exp
managedOrgs
OrganizationSearchInput (nested)
organization
OrganizationSearchInput (nested)
orgId
id_comparison_exp
roleIds
string_comparison_exp
sub
string_comparison_exp
username
string_comparison_exp
Is where or search mandatory?
orgId on where is non-null — every user lookup must be scoped to an org. createdAt is filterable only via search, not where.
users-Gets multiple users.
GraphQL schema
GetUserWhereInput supported fields
id
ID
isSuperuser
Boolean
managedOrgs
OrganizationWhereInput (nested)
organization
OrganizationWhereInput (nested)
orgId
ID! (required)
roleIds
[String!]
sub
String
username
String
isTestUser
Boolean
isApiUser
Boolean
UserSearchInput supported fields
createdAt
string_comparison_exp
id
id_comparison_exp
isApiUser
bool_comparison_exp
isSuperuser
bool_comparison_exp
isTestUser
bool_comparison_exp
managedOrgs
OrganizationSearchInput (nested)
organization
OrganizationSearchInput (nested)
orgId
id_comparison_exp
roleIds
string_comparison_exp
sub
string_comparison_exp
username
string_comparison_exp
Is where or search mandatory?
orgId on where (non-null), limit, and offset.
getTestUsers-Gets test users.
GraphQL schema
Is where or search mandatory?
Yes - requires orgId on where.
Workflow analytics queries
timeSavedGroupByWorkflow-Gets time saved statistics grouped by workflow.
GraphQL schema
Is where or search mandatory?
orgId, updatedAt, useStatsTable
workflowExecutionStats-Gets workflow execution statistics.
GraphQL schema
Is where or search mandatory?
orgId, createdSince.
workflowExecution-Gets a specific workflow execution.
GraphQL schema
WorkflowExecutionWhereInput supported fields
id
ID
orgId
ID
Required in practice
originatingExecutionId
ID
status
String
Exact match only
numAwaitingResponseTasks
Int
workflow
WorkflowWhereInput
Nested filter on parent workflow
workflowId
ID
Not filterable via where - use search instead: createdAt, processedCompletionAt, organization
WorkflowExecutionSearchInput supported fields
id
id_comparison_exp
orgId
id_comparison_exp
originatingExecutionId
id_comparison_exp
status
string_comparison_exp
numAwaitingResponseTasks
int_comparison_exp
workflow
WorkflowSearch
createdAt
string_comparison_exp
processedCompletionAt
string_comparison_exp
organization
OrganizationSearchInput
Is where or search mandatory?
Yes - id via where or search. workflow_executions is partitioned — pass id so the lookup hits a single partition. createdAt and processedCompletionAt are filterable only via search.
workflowExecutions-Gets multiple workflow executions.
GraphQL schema
WorkflowExecutionWhereInput supported fields
id
ID
orgId
ID
Required in practice
originatingExecutionId
ID
status
String
Exact match only
numAwaitingResponseTasks
Int
workflow
WorkflowWhereInput
Nested filter on parent workflow
workflowId
ID
Not filterable via where - use search instead: createdAt, processedCompletionAt, organization
WorkflowExecutionSearchInput supported fields
id
id_comparison_exp
orgId
id_comparison_exp
originatingExecutionId
id_comparison_exp
status
string_comparison_exp
numAwaitingResponseTasks
int_comparison_exp
workflow
WorkflowSearch
createdAt
string_comparison_exp
processedCompletionAt
string_comparison_exp
organization
OrganizationSearchInput
Is where or search mandatory?
Yes, strongly. workflow_executions is the largest of the three unbounded tables. An unscoped query is essentially guaranteed to time-out. Always pass:
orgId(viawhereorsearch)limit(recommended ≤ 50; payloads are large)offsetfor paginationA
createdAtlower bound onsearchif you can will drastically narrow the partition scan
Shared pagination rule: Every plural query should be called with limit and offset. Queries against the largest tables— workflowExecutions, taskLogs, organizations, and anything that traverses into them— will time out without it.
Worked example: Recent failed executions for the current org
workflowExecutionContexts-Gets workflow execution contexts.
GraphQL schema
Is where or search mandatory?
workflowExecutionId. Always scoped to one execution — there is no list form.
dailyTimeSavedByDateRange-Gets daily time saved within a date range.
GraphQL schema
Is where or search mandatory?
orgId, startDate, endDate
Workflow patch queries
workflowPatches-Gets multiple workflow patches.
GraphQL schema
WorkflowPatchWhereInput — supported fields
comment
String
user
UserWhereInput (nested)
patchType
PatchType
workflowId
ID
foreignId
ID
createdAt
String
updatedAt
String
Is where or search mandatory?
Uses orderBy (an enum), not the order array used by most other plural queries. where: { workflowId }, limit, offset.
There is no search input.
Workflow management queries
workflow-Gets a specific workflow.
GraphQL schema
WorkflowWhereInput supported fields
clonedFromId
ID
unpackedFromId
ID
crates
CrateWhereInput (nested)
description
String
id
ID
input
[String]
isSynchronized
Boolean
name
String
orgId
ID
output
[JSON]
schemaVersion
String
timeout
Int
version
String
type
WorkflowType
visibleForOrganizations
ID
WorkflowSearch supported fields
createdAt
string_comparison_exp
clonedFromId
id_comparison_exp
description
string_comparison_exp
id
id_comparison_exp
input
string_comparison_exp
isSynchronized
bool_comparison_exp
name
string_comparison_exp
orgId
id_comparison_exp
organization
OrganizationSearchInput (nested)
org_id
id_comparison_exp (alias)
output
string_comparison_exp
schemaVersion
string_comparison_exp
tags
TagSearchInput (nested)
tasks
id_comparison_exp
timeout
int_comparison_exp
tokens
json_comparison_exp
updatedAt
string_comparison_exp
updatedBy
UserSearchInput (nested)
version
string_comparison_exp
visibleForOrganizations
id_comparison_exp
Is where or search mandatory?
Yes - id via where or search.
Note: createdAt, updatedAt, and tokens are filterable only via search.
workflows-Gets multiple workflows.
GraphQL schema
WorkflowWhereInput supported fields
clonedFromId
ID
unpackedFromId
ID
crates
CrateWhereInput (nested)
description
String
id
ID
input
[String]
isSynchronized
Boolean
name
String
orgId
ID
output
[JSON]
schemaVersion
String
timeout
Int
version
String
type
WorkflowType
visibleForOrganizations
ID
WorkflowSearch supported fields
createdAt
string_comparison_exp
clonedFromId
id_comparison_exp
description
string_comparison_exp
id
id_comparison_exp
input
string_comparison_exp
isSynchronized
bool_comparison_exp
name
string_comparison_exp
orgId
id_comparison_exp
organization
OrganizationSearchInput (nested)
org_id
id_comparison_exp (alias)
output
string_comparison_exp
schemaVersion
string_comparison_exp
tags
TagSearchInput (nested)
tasks
id_comparison_exp
timeout
int_comparison_exp
tokens
json_comparison_exp
updatedAt
string_comparison_exp
updatedBy
UserSearchInput (nested)
version
string_comparison_exp
visibleForOrganizations
id_comparison_exp
Is where or search mandatory?
limit and offset. Scope by orgId — workflows is a large table and unscoped calls will be slow.
workflowNote-Gets a specific workflow note.
GraphQL schema
WorkflowNoteWhereInput supported fields
id
ID
title
String
content
String
metadata
JSON
clonedFromId
ID
index
Int
workflowId
ID
Is where or search mandatory?
id or workflowId on where . There is no search input.
workflowNotes-Gets multiple workflow notes.
GraphQL schema
WorkflowNoteSearchInput supported fields
id
id_comparison_exp
title
string_comparison_exp
content
string_comparison_exp
metadata
json_comparison_exp
clonedFromId
id_comparison_exp
index
int_comparison_exp
workflowId
id_comparison_exp
Is where or search mandatory?
limit and offset. Scope by workflowId.
workflowTask-Gets a specific workflow task.
GraphQL schema
WorkflowTaskWhereInput supported fields
action
ActionInput (nested)
actionId
ID
description
String
humanSecondsSaved
Int
id
ID
input
JSON
isMocked
Boolean
join
Int
metadata
JSON
mockInput
JSON
name
String
next
[WorkflowTransitionInput!]
retry
WorkflowTaskRetryInput
runAsOrgId
String
timeout
Int
with
WorkflowTaskWithItemsInput
workflowId
ID
workflow
WorkflowWhereInput (nested)
Is where or search mandatory?
Yes - id or workflowId and a discriminator on where. There is no search input.
workflowTasks-Gets multiple workflow tasks.
GraphQL schema
WorkflowTaskWhereInput supported fields
action
ActionInput (nested)
actionId
ID
description
String
humanSecondsSaved
Int
id
ID
input
JSON
isMocked
Boolean
join
Int
metadata
JSON
mockInput
JSON
name
String
next
[WorkflowTransitionInput!]
retry
WorkflowTaskRetryInput
runAsOrgId
String
timeout
Int
with
WorkflowTaskWithItemsInput
workflowId
ID
workflow
WorkflowWhereInput (nested)
Is where or search mandatory?
Yes - where: { workflowId }, limit, offset. workflow_tasks is large — unscoped calls will be slow. There is no search input.
Each of the mutation expanders below contains information that includes the necessary updates you'll need to make for use of the mutation. Be sure to reference this information accordingly.
Operation type: Mutations
Action option mutations
createActionOptions-Creates multiple action options.
GraphQL schema
Necessary modifications
Each item should supply packConfigId, organizationId, optionLabel, optionValue, and resourceName. Pass replace: true to overwrite the existing set; otherwise rows are appended.
Usage example
Clone operations mutations
unlinkClone-Unlinks a cloned object from its source.
GraphQL schema
Necessary modifications
id and objectType.
Note: this only severs the link. The object itself is not deleted.
Usage example
Component mutations
createComponent-Creates a new component.
GraphQL schema
Necessary modifications
component.orgId, component.name, component.nodeTree.
updateComponent-Updates an existing component.
GraphQL schema
Necessary modifications
component.id, component.name, component.orgId. Pass through existing name/orgId values when only editing the tree.
Foreign object reference mutations
createForeignObjectReference-Creates a foreign object reference.
GraphQL schema
Necessary modifications
orgId and referenceId on the input
createOrUpdateForeignObjectReference-Creates or updates a foreign object reference.
GraphQL schema
Necessary modifications
orgId and referenceId
Form mutations
submitForm-Submits form data and triggers associated workflow.
GraphQL schema
Necessary modifications
id, values, triggerId, orgId
Organization trigger instance mutations
updateOrgTriggerInstance-Updates an organization trigger instance.
GraphQL schema
Necessary modifications
orgTriggerInstance, and an id or orgId + triggerId on the input to identify the row.
Organization variable mutations
createOrgVariable-Creates a new organization variable.
GraphQL schema:
Necessary modifications
cascade, name, value, orgId.
Usage example
updateOrgVariables-Updates multiple organization variables.
GraphQL schema
Necessary modifications
orgVariables (non-empty); each entry requires id and name.
Organization management mutations
bulkCreateOrganizations-Creates multiple organizations in bulk.
GraphQL schema
Necessary modifications
organizations (non-empty); each item requires name.
bulkDeleteOrganizations-Deletes multiple organizations in bulk.
GraphQL schema
Necessary modifications
organizationIds
createOrganization-Creates a single organization.
GraphQL schema
Necessary modifications
name on each item.
Note: createOrganizations returns nullable elements — a per-row failure yields a null slot rather than aborting the batch.
createOrganizations-Creates multiple organizations.
GraphQL schema
Necessary modifications
organizationinput
updateManagedAndSubOrganizations-Updates all managed and suborganizations.
GraphQL schema
Necessary modifications
organization.id (the parent org whose tree is being updated). Returns the count of affected rows.
updateOrganization-Updates an organization.
GraphQL schema
Necessary modifications
organization.id. Pass cascadeChildOrgReenable: true to propagate isEnabled: true to child orgs when re-enabling.
bulkUpdateOrganizationFeaturePreviewSettingByLabel-Bulk updates feature preview settings by label.
Necessary modifications
Pack configuration mutations
synchronizePackBundleConfigs-Synchronizes pack bundle configurations.
GraphQL schema
Necessary modifications
orgId, packBundleId, primaryPackConfigId
createPackConfig-Creates a new pack configuration.
GraphQL schema
Necessary modifications
packConfig.name, packConfig.orgId, packConfig.packId.
refetchPackConfigRefOptions-Refetches pack configuration reference options.
GraphQL schema
Necessary modifications
packConfigId returns a JobRequestedResponse — work is asynchronous.
testPackConfig-Tests a pack configuration.
GraphQL schema
Necessary modifications
packConfig.id returns a JobRequestedResponse — results delivered via actionResults subscription.
Pack mutations
generatePackOrBundleAuthUrl-Generates authorization URL for pack or bundle.
GraphQL schema
Necessary modifications
orgId, plus exactly one of packBundleId or packConfigId.
installPack-Installs a pack for an organization. Returns the updated Organization, not the pack.
GraphQL schema
Necessary modifications
orgId, packId
getPackInstallations-Gets pack installation information. Defined as a mutation despite being read-only.
GraphQL schema
Necessary modifications
packId
getPackPageUrl-Gets the URL for a pack page. Defined as a mutation despite being read-only.
GraphQL schema
Necessary modifications
integrationRef, pagePath
Page mutations
updatePage-Updates an existing page.
GraphQL schema
Necessary modifications
page.id, page.siteId.
Note: pageNodes is the encoded editor state passed as a string — decoded server-side.
updatePageNode-Updates a page node.
GraphQL schema
Necessary modifications
updatePageNode: requires id, props.
updatePageNodeByCraftId-Updates a page node by craft ID.
GraphQL schema
Necessary modifications
updatePageNodeByCraftId: requires craftId, pageId, props — use when you have the Craft.js editor id rather than the persisted PageNode.id.
Site mutations
validateSiteCustomDomainDNS-Validates custom domain DNS settings.
GraphQL schema
Necessary modifications
id
Tag mutations
createTag - Creates a new tag.
GraphQL schema
Necessary modifications
Use id, name, and orgId on each entry.
updateTag or updateTags-Updates one tag, updates multiple tags.
GraphQL schema
Necessary modifications
id, name, and orgId on each entry.
setOrganizationTags-Sets tags for an organization.
GraphQL schema
Necessary modifications
Use tagIds and orgId. This is a replace operation — passing tagIds: [] clears all tags on the org.
Template mutations
Trigger mutations
Createtrigger- Creates a trigger.
GraphQL schema
Necessary modifications
trigger with triggerTypeId, orgId, and either workflowId or workflow.id.
testworkflowtrigger- Fires a trigger against a workflow for testing.
GraphQL schema
Necessary modifications
triggerInstance. workflowId and input are optional but typically supplied.
User mutations
updateuserpreferences - Updates preferences for a user
GraphQL schema
Necessary modifications
userId, preferences
createuser - Creates a new user in an organization
GraphQL schema
Necessary modifications
orgId, username, roleIds. Only available when ENABLE_ADMIN_APPROVAL_REQUESTS is OFF.
deleteuser - Deletes a user in an organization
GraphQL schema
Necessary modifications
Only available when ENABLE_ADMIN_APPROVAL_REQUESTS is OFF.
removefavoriteaction - Removes a favorite action
GraphQL schema
Necessary modifications
actionId and index
setFavoriteActions - Replaces the entire favorites list
GraphQL schema
Necessary modifications
actionId and index
Workflow mutations
shallowcloneworkflow - Creates a shallow clone of a workflow into an org.
GraphQL schema
Necessary modifications
id, orgId. Does not deep-clone referenced objects.
testworkflow - Triggers a one-off test execution of a workflow.
GraphQL schema
Necessary modifications
id, orgId.
bulksetworkflowtags - Replaces tag assignments on multiple workflows in one call.
GraphQL schema
Necessary modifications
workflowIds, tagIds.
createWorkflowCompletionListener - Creates a completion listener trigger.
GraphQL schema
Necessary modifications
listeningToWorkflowId, orgId, handlerWorkflowId, triggerOnStatuses
updateWorkflowCompletionListener - Updates a completion listener trigger.
GraphQL schema
Necessary modifications
triggerId, listeningToWorkflowId, orgId, handlerWorkflowId, triggerOnStatuses.
deleteWorkflowCompletionListener - Deletes a completion listener trigger.
GraphQL schema
Necessary modifications
id
Security considerations
Always validate user inputs before including in queries
Use organization and permission filters to restrict data access
Track usage patterns for potential security issues
Common use cases for the Generic GraphQL request action
Bulk data operations
Action configuration:
Operation type:
mutationOperation:
updateOrgVariablesVariable values:
Complex reporting
Action configuration:
Operation type:
queryOperation:
workflowsVariable values:
Fields:
Data synchronization
Action configuration:
Operation type:
queryOperation:
organizationsVariable values:
Fields:
id, name, domain, createdAt, managedOrgs { id, name }
Troubleshoot the Generic GraphQL request action
Permission denied
Check for query syntax issues
You may be attempting to run an unsupported GraphQL action
Query syntax errors
Validate GraphQL syntax using a GraphQL validator
Check field names against the schema
Ensure variable types match the expected schema types
Rate limiting
Implement exponential backoff for retries
Consider breaking large operations into smaller batches
Monitor API usage patterns
Debug tips
Begin with basic queries before building complex operations
For debugging, use the
raw_queryparameter to see exact queriesReview workflow execution logs for detailed error messages
Build queries incrementally, adding fields and filters gradually
Last updated
Was this helpful?
