
Request
Make a GraphQL API request.
Make a GraphQL API request.
Make a GraphQL API request.
type: "io.kestra.plugin.graphql.Request"Examples
Make a GraphQL query with variables
id: graphql_request
namespace: company.team
tasks:
- id: graphql_query
type: io.kestra.plugin.graphql.Request
uri: https://example.com/graphql
query: |
query GetUser($userId: ID!) {
user(id: $userId) {
name
email
}
}
variables:
userId: "12345"
Execute a GraphQL query with authentication
id: graphql_with_auth
namespace: company.team
tasks:
- id: get_data
type: io.kestra.plugin.graphql.Request
uri: https://example.com/graphql
headers:
Authorization: "Bearer {{ secret('API_TOKEN') }}"
query: |
query {
viewer {
name
email
}
}
Execute a GraphQL query with operationName
id: graphql_with_operation_name
namespace: company.team
tasks:
- id: get_data
type: io.kestra.plugin.graphql.Request
uri: https://example.com/graphql
query: |
query GetUser {
user(id: "1") {
name
}
}
query GetPosts {
posts {
title
}
}
operationName: "GetUser"
Properties
query*Requiredstring
GraphQL query or mutation to execute.
uri*Requiredstring
The fully-qualified URI that points to the HTTP destination
bodystring
The full body as a string
contentTypestring
application/jsonThe request content type
encryptBodybooleanstring
falseIf true, the GraphQL response body will be automatically encrypted and decrypted in the outputs.
If this property is set to true, this task will output the request body using the encryptedBody output property; otherwise, the request body will be stored in the body output property.
failOnGraphQLErrorsbooleanstring
falseFail task on GraphQL errors
If true, the task will fail when GraphQL returns errors in the response.
formDataobject
The form data to be send
headersobject
The headers to pass to the request
methodstring
POSTThe HTTP method to use
operationNamestring
Operation name for the GraphQL query
Used when multiple operations are defined in the query document.
optionsNon-dynamic
{
"followRedirects": "true",
"allowFailed": "false",
"defaultCharset": "UTF-8"
}The HTTP request options
io.kestra.core.http.client.configurations.HttpConfiguration
falseIf true, allow a failed response code (response code >= 400)
List of response code allowed for this request
The authentification to use.
io.kestra.core.http.client.configurations.BasicAuthConfiguration
The password for HTTP basic authentication.
The username for HTTP basic authentication.
io.kestra.core.http.client.configurations.BearerAuthConfiguration
The token for bearer token authentication.
The password for HTTP basic authentication. Deprecated, use auth property with a BasicAuthConfiguration instance instead.
The username for HTTP basic authentication. Deprecated, use auth property with a BasicAuthConfiguration instance instead.
durationdurationThe time an idle connection can remain in the client's connection pool before being closed.
UTF-8The default charset for the request.
java.nio.charset.Charset
trueWhether redirects should be followed automatically.
ALLTRACEDEBUGINFOWARNERROROFFNOT_SPECIFIEDThe log level for the HTTP client.
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODYThe enabled log.
The maximum content length of the response.
The proxy configuration.
io.kestra.core.http.client.configurations.ProxyConfiguration
DIRECTDIRECTHTTPSOCKSThe address of the proxy server.
The password for proxy authentication.
The port of the proxy server.
DIRECTHTTPSOCKSThe type of proxy to use.
The username for proxy authentication.
durationdurationThe maximum time allowed for reading data from the server before failing.
The SSL request options
io.kestra.core.http.client.configurations.SslOptions
Whether to disable checking of the remote SSL certificate.
Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.
The timeout configuration.
io.kestra.core.http.client.configurations.TimeoutConfiguration
durationThe time allowed to establish a connection to the server before failing.
PT5MdurationThe time allowed for a read connection to remain idle before closing it.
paramsobject
The query string parameter to use
Adds parameter to URI query. The parameter name and value are expected to be unescaped and may contain non ASCII characters.
The value can be a string or a list of strings.
This method will not override parameters already existing on uri and will add them as array.
variablesobject
Variables used in the query.
GraphQL variables can be complex objects with nested structures.
Outputs
bodyobject
The GraphQL data field from the response.
Contains the data returned by the GraphQL server. If the encryptBody property is set to true, this will be null and the data will be in encryptedBody.
codeinteger
The status code of the response.
encryptedBodystring
The encrypted body of the response.
If the encryptBody property is set to true, this will contain the encrypted response.
errorobject
The GraphQL errors from the response.
Contains any errors returned by the GraphQL server.
headersobject
The headers of the response.
uristring
uriThe URL of the current request.