Overview
In this document, we'll go over the basics on how to consume the Tasklist GraphQL API. Read more about how to build a real world application here. Be sure to authenticate to use the Tasklist API.
Review the new Tasklist REST API. This API offers the same functionality as the current GraphQL API, but with a more streamlined and efficient way of interacting with our service.
The GraphQL API will be deprecated in the near future. To ensure a smooth transition, we'll continue to support our GraphQL API for a period of time, giving you an opportunity to migrate to the new REST API version at your own pace. We will provide further details on the timeline and process for this migration soon.
Endpoint
Tasklist provides a GraphQL API at endpoint /graphql
.
From Camunda 8 the endpoint is ${base-url}/graphql
.
For SaaS: https://${REGION}.tasklist.camunda.io:443/${CLUSTER_ID}/graphql
, and for Self-Managed installations: http://localhost:8080/graphql
.
Obtaining the Tasklist schema
To obtain the Tasklist GraphQL schema, visit the API collection in GitHub, which is fully functioning in Postman.
Alternatively, send a request to the endpoint with a GraphQL introspection query as described here, or use the generated API documentation.
There are also several tools to explore GraphQL APIs.
For example, you want to know about provided types:
query {
__schema {
queryType {
fields {
name
type {
kind
ofType {
kind
name
}
}
}
}
}
}
Example requests and responses
Get all task names
Request:
{
tasks(query: {}) {
name
}
}
Response:
{
"data": {
"tasks": [
{
"name": "Check payment"
},
{
"name": "Register the passenger"
}
]
}
}
Get all tasks completed with id, name, and state
Request:
{
tasks(query: { state: COMPLETED }) {
id
name
taskState
}
}
Response:
{
"data": {
"tasks": [
{
"id": "2251799813685728",
"name": "Check payment",
"taskState": "COMPLETED"
}
]
}
}