# GraphQL - Custom action
This action can be used to run any custom GraphQL operation.
This is useful if you have existing GraphQL queries or mutations that you want to reuse in your recipes.
It also allows you to use advanced features of GraphQL query language, such as:
- Variables
- Fragments
- Inline-fragments
- Directives
- Aliases
- Multi-operation documents
See the GraphQL documentation (opens new window) for more information about these features.
# Input fields
At a minimum, the GraphQL document must be provided. It must be a valid GraphQL query or mutation.
In the following example, the GraphQL document is a simple query for the details of a record with a specific ID, which is hard-coded in the query:
Simple custom query
Instead of hard-coding the ID, you can use recipe datapills to inject the ID.
The record ID is set by the Role Id datapill from the output of Step 2:
Custom query with datapills
Alternatively, you can also define a variable in your GraphQL document and let the user provide the value through an input field.
For example, you would enter the Role ID to provide the value for the $role_id
variable:
Custom query with variables
If the GraphQL document contains multiple queries, you must select the operation to run.
The following document contains the queries RoleWithTags
and RoleWithoutTags
, and the Operation to perform is set to Role without tags
:
Custom query with multiple queries)
# Output fields
The output fields are determined by the fields mentioned in the query. To use them in downstream steps, map in the relevant datapill from the datatree.
Example output fields for the GraphQL custom action
Last updated: 6/12/2023, 8:52:04 PM