Skip to content

Instantly share code, notes, and snippets.

@inexxt
Created August 17, 2020 11:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save inexxt/836674fb2963050d4dc5ae47cf49b334 to your computer and use it in GitHub Desktop.
Save inexxt/836674fb2963050d4dc5ae47cf49b334 to your computer and use it in GitHub Desktop.
{
"openapi": "3.0.2",
"info": {
"title": "Camunda BPM REST API",
"description": "OpenApi Spec for Camunda BPM REST API.",
"version": "7.13.0",
"license": {
"name": "Apache License 2.0",
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
}
},
"externalDocs": {
"description": "Find out more about Camunda Rest API",
"url": "https://docs.camunda.org/manual/7.13/reference/rest/overview/"
},
"servers": [
{
"url": "http://{host}:{port}/{contextPath}",
"description": "The API server for the default process engine",
"variables": {
"host": {
"default": "localhost"
},
"port": {
"default": "8080"
},
"contextPath": {
"default": "engine-rest"
}
}
},
{
"url": "http://{host}:{port}/{contextPath}/engine/{engineName}",
"description": "The API server for a named process engine",
"variables": {
"host": {
"default": "localhost"
},
"port": {
"default": "8080"
},
"contextPath": {
"default": "engine-rest"
},
"engineName": {
"default": "default"
}
}
}
],
"tags": [
{
"name": "Condition"
},
{
"name": "Deployment"
},
{
"name": "Engine"
},
{
"name": "Event Subscription"
},
{
"name": "External Task"
},
{
"name": "Message"
},
{
"name": "Metrics"
},
{
"name": "Process Definition"
},
{
"name": "Process Instance"
},
{
"name": "Signal"
},
{
"name": "Schema Log"
},
{
"name": "Task"
},
{
"name": "Task Attachment"
},
{
"name": "Task Comment"
},
{
"name": "Task Identity Link"
},
{
"name": "Task Local Variable"
},
{
"name": "Task Variable"
},
{
"name": "Version"
}
],
"paths": {
"/condition": {
"post": {
"operationId": "evaluateCondition",
"tags": [
"Condition"
],
"description": "Triggers evaluation of conditions for conditional start event(s). \nInternally this maps to the engines condition evaluation builder method ConditionEvaluationBuilder#evaluateStartConditions(). \nFor more information see the [Conditional Start Events](https://docs.camunda.org/manual/7.13/reference/bpmn20/events/conditional-events/#conditional-start-event)\nsection of the [BPMN 2.0 Implementation Reference](https://docs.camunda.org/manual/7.13/reference/bpmn20/).",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EvaluationConditionDto"
},
"examples": {
"example-1": {
"summary": "POST /condition",
"description": "The content of the Request Body",
"value": {
"variables": {
"temperature": {
"value": 24,
"type": "Integer",
"valueInfo": {
"transient": true
}
},
"city": {
"value": "Parma",
"type": "String"
}
},
"businessKey": "aBusinessKey",
"tenantId": "aTenantId"
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessInstanceDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "The Response content of a status 200",
"value": [
{
"links": [],
"id": "aProcInstId",
"definitionId": "aProcDefId",
"businessKey": "aBusinessKey",
"caseInstanceId": null,
"ended": false,
"suspended": false,
"tenantId": "aTenantId"
},
{
"links": [],
"id": "anotherId",
"definitionId": "aProcDefId",
"businessKey": "aBusinessKey",
"caseInstanceId": null,
"ended": false,
"suspended": false,
"tenantId": "aTenantId"
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "If both tenantId and withoutTenantId are supplied."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "If the user is not allowed to start the process instance of the process definition, which start condition was evaluated to `true`."
}
}
}
},
"/deployment": {
"get": {
"operationId": "getDeployments",
"tags": [
"Deployment"
],
"description": "Queries for deployments that fulfill given parameters. Parameters may be the properties of deployments,\nsuch as the id or name or a range of the deployment time. The size of the result set can be retrieved by\nusing the [Get Deployment count](https://docs.camunda.org/manual/7.13/reference/rest/deployment/get-query-count/) method.",
"parameters": [
{
"name": "id",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by deployment id"
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment name. Exact match."
},
{
"name": "nameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment name that the parameter is a substring of. The parameter can include the\nwildcard `%` to express like-strategy such as: starts with (`%`name), ends with (name`%`) or contains\n(`%`name`%`)."
},
{
"name": "source",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment source."
},
{
"name": "withoutSource",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Filter by the deployment source whereby source is equal to `null`."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids. A deployment must have one of the given tenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include deployments which belong to no tenant. Value may only be `true`, as `false` is the default\nbehavior."
},
{
"name": "includeDeploymentsWithoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Include deployments which belong to no tenant. Can be used in combination with `tenantIdIn`. Value may\nonly be `true`, as `false` is the default behavior."
},
{
"name": "after",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Restricts to all deployments after the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
{
"name": "before",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Restricts to all deployments before the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
{
"name": "sortBy",
"in": "query",
"schema": {
"type": "string"
},
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
{
"name": "sortOrder",
"in": "query",
"schema": {
"enum": [
"asc",
"desc"
],
"type": "string"
},
"description": "Sort the results in a given order. Values may be asc for ascending order or desc for descending order.\nMust be used in conjunction with the sortBy parameter."
},
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DeploymentDto"
}
},
"examples": {
"example-1": {
"summary": "GET `/deployment?name\u003ddeploymentName`",
"value": [
{
"id": "someId",
"name": "deploymentName",
"source": "process application",
"tenantId": null,
"deploymentTime": "2013-04-23T13:42:43.000+0200"
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid, for example if a `sortOrder` parameter is supplied,\nbut no `sortBy`, or if an invalid operator for variable comparison is used. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/deployment/count": {
"get": {
"operationId": "getDeploymentsCount",
"tags": [
"Deployment"
],
"description": "Queries for the number of deployments that fulfill given parameters. Takes the same parameters as the\n[Get Deployments](https://docs.camunda.org/manual/7.13/reference/rest/deployment/get-query/) method.",
"parameters": [
{
"name": "id",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by deployment id"
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment name. Exact match."
},
{
"name": "nameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment name that the parameter is a substring of. The parameter can include the\nwildcard `%` to express like-strategy such as: starts with (`%`name), ends with (name`%`) or contains\n(`%`name`%`)."
},
{
"name": "source",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment source."
},
{
"name": "withoutSource",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Filter by the deployment source whereby source is equal to `null`."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids. A deployment must have one of the given tenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include deployments which belong to no tenant. Value may only be `true`, as `false` is the default\nbehavior."
},
{
"name": "includeDeploymentsWithoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Include deployments which belong to no tenant. Can be used in combination with `tenantIdIn`. Value may\nonly be `true`, as `false` is the default behavior."
},
{
"name": "after",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Restricts to all deployments after the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
{
"name": "before",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Restricts to all deployments before the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "GET `/deployment/count?name\u003ddeploymentName`",
"value": {
"count": 1
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid, for example, if an invalid operator for variable\ncomparison is used. See the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/deployment/create": {
"post": {
"operationId": "createDeployment",
"tags": [
"Deployment"
],
"description": "Creates a deployment.\n\n**Security Consideration**\n\nDeployments can contain custom code in form of scripts or EL expressions to customize process behavior.\nThis may be abused for remote execution of arbitrary code.",
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/MultiFormDeploymentDto"
},
"examples": {
"example-1": {
"summary": "POST `/deployment/create`",
"value": [
{
"links": [
{
"method": "GET",
"href": "http://localhost:38080/rest-test/deployment/aDeploymentId",
"rel": "self"
}
],
"id": "aDeploymentId",
"name": "aName",
"source": "process application",
"deploymentTime": "2013-01-23T13:59:43.000+0200",
"tenantId": null,
"deployedProcessDefinitions": {
"aProcDefId": {
"id": "aProcDefId",
"key": "aKey",
"category": "aCategory",
"description": "aDescription",
"name": "aName",
"version": 42,
"resource": "aResourceName",
"deploymentId": "aDeploymentId",
"diagram": "aResourceName.png",
"suspended": true,
"tenantId": null,
"versionTag": null
}
},
"deployedCaseDefinitions": null,
"deployedDecisionDefinitions": null,
"deployedDecisionRequirementsDefinitions": null
}
]
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeploymentWithDefinitionsDto"
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ParseExceptionDto"
},
"examples": {
"example-1": {
"summary": "GET /deployment?name\u003ddeploymentName",
"value": [
{
"type": "ParseException",
"message": "ENGINE-09005 Could not parse BPMN process. Errors: Exclusive Gateway \u0027ExclusiveGateway_1\u0027 has outgoing sequence flow \u0027SequenceFlow_0\u0027 without condition which is not the default flow.",
"details": {
"invoice.bpmn": {
"errors": [
{
"message": "Exclusive Gateway \u0027ExclusiveGateway_1\u0027 has outgoing sequence flow \u0027SequenceFlow_0\u0027 without condition which is not the default flow.",
"line": 77,
"column": 15,
"mainBpmnElementId": "ExclusiveGateway_1",
"bpmnElementIds": [
"ExclusiveGateway_1",
"SequenceFlow_0"
]
}
],
"warnings": [
{
"message": "It is not recommended to use a cancelling boundary timer event with a time cycle.",
"line": 87,
"column": 20,
"mainBpmnElementId": "BoundaryEvent_1",
"bpmnElementIds": [
"BoundaryEvent_1"
]
}
]
}
}
}
]
}
}
}
},
"description": "Bad Request. In case one of the bpmn resources cannot be parsed.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#parse-exceptions) for\nthe error response format."
}
}
}
},
"/deployment/{id}": {
"delete": {
"operationId": "deleteDeployment",
"tags": [
"Deployment"
],
"description": "Deletes a deployment by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the deployment to be deleted."
},
{
"name": "cascade",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "`true`, if all process instances, historic process instances and jobs for this deployment\nshould be deleted."
},
{
"name": "skipCustomListeners",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "`true`, if only the built-in ExecutionListeners should be notified with the end event."
},
{
"name": "skipIoMappings",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "`true`, if all input/output mappings should not be invoked."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "A Deployment with the provided id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"get": {
"operationId": "getDeployment",
"tags": [
"Deployment"
],
"description": "Retrieves a deployment by id, according to the `Deployment` interface of the engine.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the deployment."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DeploymentDto"
}
},
"examples": {
"example-1": {
"summary": "GET `/deployments/someDeploymentId`",
"value": {
"id": "someDeploymentId",
"name": "deploymentName",
"source": "process application",
"deploymentTime": "2013-04-23T13:42:43.000+0200"
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Deployment with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/deployment/{id}/redeploy": {
"post": {
"operationId": "redeploy",
"tags": [
"Deployment"
],
"description": "Re-deploys an existing deployment.\n\nThe deployment resources to re-deploy can be restricted by using the properties `resourceIds` or\n`resourceNames`. If no deployment resources to re-deploy are passed then all existing resources of the\ngiven deployment are re-deployed.\n\n**Warning**: Deployments can contain custom code in form of scripts or EL expressions to customize\nprocess behavior. This may be abused for remote execution of arbitrary code. See the section on\n[security considerations for custom code](https://docs.camunda.org/manual/7.13/user-guide/process-engine/securing-custom-code/) in\nthe user guide for details.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the deployment to re-deploy."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RedeploymentDto"
},
"examples": {
"example-1": {
"summary": "POST `/deployment/anDeploymentId/redeploy`",
"value": {
"resourceIds": [
"aResourceId"
],
"resourceNames": [
"aResourceName"
],
"source": "cockpit"
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeploymentWithDefinitionsDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:38080/rest-test/deployment/aDeploymentId",
"rel": "self"
}
],
"id": "aDeploymentId",
"name": "aName",
"source": "cockpit",
"deploymentTime": "2015-10-13T13:59:43.000+0200",
"tenantId": null,
"deployedProcessDefinitions": {
"aProcDefId": {
"id": "aProcDefId",
"key": "aKey",
"category": "aCategory",
"description": "aDescription",
"name": "aName",
"version": 42,
"resource": "aResourceName",
"deploymentId": "aDeploymentId",
"diagram": "aResourceName.png",
"suspended": true,
"tenantId": null,
"versionTag": null
}
},
"deployedCaseDefinitions": null,
"deployedDecisionDefinitions": null,
"deployedDecisionRequirementsDefinitions": null
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Deployment or a deployment resource for the given deployment does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/deployment/{id}/resources": {
"get": {
"operationId": "getDeploymentResources",
"tags": [
"Deployment"
],
"description": "Retrieves all deployment resources of a given deployment.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the deployment to retrieve the deployment resources for."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DeploymentResourceDto"
}
},
"examples": {
"example-1": {
"summary": "GET `/deployment/anDeploymentId/resources`",
"value": [
{
"id": "anResourceId",
"name": "anResourceName",
"deploymentId": "anDeploymentId"
},
{
"id": "anotherResourceId",
"name": "anotherResourceName",
"deploymentId": "anDeploymentId"
}
]
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Deployment resources for the given deployment do not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/deployment/{id}/resources/{resourceId}": {
"get": {
"operationId": "getDeploymentResource",
"tags": [
"Deployment"
],
"description": "Retrieves a deployment resource by resource id for the given deployment.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the deployment"
},
{
"name": "resourceId",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the deployment resource"
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeploymentResourceDto"
},
"examples": {
"example-1": {
"summary": "GET `/deployments/someDeploymentId/resources/someResourceId`",
"value": {
"id": "someResourceId",
"name": "someResourceName",
"deploymentId": "someDeploymentId"
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Deployment Resource with given resource id or deployment id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/deployment/{id}/resources/{resourceId}/data": {
"get": {
"operationId": "getDeploymentResourceData",
"tags": [
"Deployment"
],
"description": "Retrieves the binary content of a deployment resource for the given deployment by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the deployment."
},
{
"name": "resourceId",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the deployment resource."
}
],
"responses": {
"200": {
"description": "Request successful. The media type of the response depends on the filename.",
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary",
"description": "For files without any MIME type information, a byte stream is returned."
}
},
"*/*": {
"schema": {
"type": "string",
"format": "binary",
"description": "Files with MIME type information are returned as the saved type. For example, a\n `process.bpmn` resource will have the media type `application/xml`."
}
}
}
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Deployment Resource with given resource id or deployment id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/engine": {
"get": {
"operationId": "getProcessEngineNames",
"tags": [
"Engine"
],
"description": "Retrieves the names of all process engines available on your platform.\n**Note**: You cannot prepend `/engine/{name}` to this method.",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessEngineDto"
}
},
"examples": {
"example-1": {
"value": [
{
"name": "default"
},
{
"name": "anotherEngineName"
}
]
}
}
}
},
"description": "Request successful."
}
}
}
},
"/event-subscription": {
"get": {
"operationId": "getEventSubscriptions",
"tags": [
"Event Subscription"
],
"description": "Queries for event subscriptions that fulfill given parameters.\nThe size of the result set can be retrieved by using the\n[Get Event Subscriptions count](https://docs.camunda.org/manual/7.13/reference/rest/event-subscription/get-query-count/) method.",
"parameters": [
{
"name": "eventSubscriptionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscription with the given id."
},
{
"name": "eventName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscriptions for events with the given name."
},
{
"name": "eventType",
"in": "query",
"schema": {
"enum": [
"message",
"signal",
"compensate",
"conditional"
],
"type": "string"
},
"description": "Only select subscriptions for events with the given type.\nValid values: `message`, `signal`, `compensate` and `conditional`."
},
{
"name": "executionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscriptions that belong to an execution with the given id."
},
{
"name": "processInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscriptions that belong to a process instance with the given id."
},
{
"name": "activityId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscriptions that belong to an activity with the given id."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids.\nOnly select subscriptions that belong to one of the given tenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only select subscriptions which have no tenant id.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "includeEventSubscriptionsWithoutTenantId",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Select event subscriptions which have no tenant id.\nCan be used in combination with tenantIdIn parameter.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "sortBy",
"in": "query",
"schema": {
"enum": [
"created",
"tenantId"
],
"type": "string"
},
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
{
"name": "sortOrder",
"in": "query",
"schema": {
"enum": [
"asc",
"desc"
],
"type": "string"
},
"description": "Sort the results in a given order. Values may be asc for ascending order or desc for descending order.\nMust be used in conjunction with the sortBy parameter."
},
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventSubscriptionDto"
}
},
"examples": {
"example-1": {
"summary": "GET `/event-subscription?eventType\u003dmessage\u0026sortBy\u003dcreated\u0026sortOrder\u003ddesc`",
"value": [
{
"id": "anId",
"eventType": "message",
"eventName": "anEventName",
"executionId": "anExecutionId",
"processInstanceId": "aProcessInstanceId",
"activityId": "anActivityId",
"createdDate": "2020-04-20T15:23:12.229+0200",
"tenantId": null
},
{
"id": "anotherId",
"eventType": "message",
"eventName": "anotherEventName",
"executionId": "anotherExecutionId",
"processInstanceId": "anotherProcessInstanceId",
"activityId": "anotherActivityId",
"createdDate": "2020-04-20T15:20:12.229+0200",
"tenantId": null
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid,\nfor example if a `sortOrder` parameter is supplied, but no `sortBy`.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/event-subscription/count": {
"get": {
"operationId": "getEventSubscriptionsCount",
"tags": [
"Event Subscription"
],
"description": "Queries for the number of event subscriptions that fulfill given parameters.\nTakes the same parameters as the\n[Get Event Subscriptions](https://docs.camunda.org/manual/7.13/reference/rest/event-subscription/get-query/) method.",
"parameters": [
{
"name": "eventSubscriptionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscription with the given id."
},
{
"name": "eventName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscriptions for events with the given name."
},
{
"name": "eventType",
"in": "query",
"schema": {
"enum": [
"message",
"signal",
"compensate",
"conditional"
],
"type": "string"
},
"description": "Only select subscriptions for events with the given type.\nValid values: `message`, `signal`, `compensate` and `conditional`."
},
{
"name": "executionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscriptions that belong to an execution with the given id."
},
{
"name": "processInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscriptions that belong to a process instance with the given id."
},
{
"name": "activityId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only select subscriptions that belong to an activity with the given id."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids.\nOnly select subscriptions that belong to one of the given tenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only select subscriptions which have no tenant id.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "includeEventSubscriptionsWithoutTenantId",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Select event subscriptions which have no tenant id.\nCan be used in combination with tenantIdIn parameter.\nValue may only be `true`, as `false` is the default behavior."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "GET `/event-subscription/count`",
"value": {
"count": 1
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task": {
"get": {
"operationId": "getExternalTasks",
"tags": [
"External Task"
],
"description": "Queries for the external tasks that fulfill given parameters. Parameters may be static as well as dynamic\nruntime properties of executions. The size of the result set can be retrieved by using the\n[Get External Task Count](https://docs.camunda.org/manual/7.13/reference/rest/external-task/get-query-count/) method.",
"parameters": [
{
"name": "externalTaskId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by an external task\u0027s id."
},
{
"name": "externalTaskIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the comma-separated list of external task ids."
},
{
"name": "topicName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by an external task topic."
},
{
"name": "workerId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the worker that the task was most recently locked by."
},
{
"name": "locked",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that are currently locked (i.e., they have a lock time and it has not expired).\nValue may only be `true`, as `false` matches any external task."
},
{
"name": "notLocked",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that are currently not locked (i.e., they have no lock or it has expired).\nValue may only be `true`, as `false` matches any external task."
},
{
"name": "withRetriesLeft",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that have a positive (\u0026gt; 0) number of retries (or `null`). Value may only be\n`true`, as `false` matches any external task."
},
{
"name": "noRetriesLeft",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that have 0 retries. Value may only be `true`, as `false` matches any\nexternal task."
},
{
"name": "lockExpirationAfter",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Restrict to external tasks that have a lock that expires after a given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
{
"name": "lockExpirationBefore",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Restrict to external tasks that have a lock that expires before a given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
{
"name": "activityId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the activity that an external task is created for."
},
{
"name": "activityIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the comma-separated list of ids of the activities that an external task is created for."
},
{
"name": "executionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the execution that an external task belongs to."
},
{
"name": "processInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the process instance that an external task belongs to."
},
{
"name": "processInstanceIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process instance ids that an external task may belong to."
},
{
"name": "processDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the process definition that an external task belongs to."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids.\nAn external task must have one of the given tenant ids."
},
{
"name": "active",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include active tasks. Value may only be `true`, as `false` matches any external task."
},
{
"name": "suspended",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include suspended tasks. Value may only be `true`, as `false` matches any external task."
},
{
"name": "priorityHigherThanOrEquals",
"in": "query",
"schema": {
"type": "integer",
"format": "int64"
},
"description": "Only include jobs with a priority higher than or equal to the given value.\nValue must be a valid `long` value."
},
{
"name": "priorityLowerThanOrEquals",
"in": "query",
"schema": {
"type": "integer",
"format": "int64"
},
"description": "Only include jobs with a priority lower than or equal to the given value.\nValue must be a valid `long` value."
},
{
"name": "sortBy",
"in": "query",
"schema": {
"enum": [
"id",
"lockExpirationTime",
"processInstanceId",
"processDefinitionId",
"processDefinitionKey",
"taskPriority",
"tenantId"
],
"type": "string"
},
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
{
"name": "sortOrder",
"in": "query",
"schema": {
"enum": [
"asc",
"desc"
],
"type": "string"
},
"description": "Sort the results in a given order. Values may be asc for ascending order or desc for descending order.\nMust be used in conjunction with the sortBy parameter."
},
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ExternalTaskDto"
}
},
"examples": {
"example-1": {
"summary": "GET /external-task?topicName\u003daTopic",
"value": [
{
"activityId": "anActivityId",
"activityInstanceId": "anActivityInstanceId",
"errorMessage": "anErrorMessage",
"executionId": "anExecutionId",
"id": "anExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.000+0200",
"processDefinitionId": "aProcessDefinitionId",
"processDefinitionKey": "aProcessDefinitionKey",
"processInstanceId": "aProcessInstanceId",
"tenantId": null,
"retries": 3,
"suspended": false,
"workerId": "aWorkerId",
"topicName": "aTopic",
"priority": 9,
"businessKey": "aBusinessKey"
},
{
"activityId": "anotherActivityId",
"activityInstanceId": "anotherActivityInstanceId",
"errorMessage": "anotherErrorMessage",
"executionId": "anotherExecutionId",
"id": "anotherExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.000+0200",
"processDefinitionId": "anotherProcessDefinitionId",
"processDefinitionKey": "anotherProcessDefinitionKey",
"processInstanceId": "anotherProcessInstanceId",
"tenantId": null,
"retries": 1,
"suspended": false,
"workerId": "aWorkerId",
"topicName": "aTopic",
"priority": 3,
"businessKey": "aBusinessKey"
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid, for example if a `sortOrder` parameter is supplied,\nbut no `sortBy`. See the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"post": {
"operationId": "queryExternalTasks",
"tags": [
"External Task"
],
"description": "Queries for external tasks that fulfill given parameters in the form of a JSON object.\n\nThis method is slightly more powerful than the\n[Get External Tasks](https://docs.camunda.org/manual/7.13/reference/rest/external-task/get-query/) method because it allows to\nspecify a hierarchical result sorting.",
"parameters": [
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExternalTaskQueryDto"
},
"examples": {
"example-1": {
"summary": "POST /external-task",
"value": {
"processDefinitionId": "aProcessDefinitionId",
"sorting": [
{
"sortBy": "processDefinitionKey",
"sortOrder": "asc"
},
{
"sortBy": "lockExpirationTime",
"sortOrder": "desc"
}
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ExternalTaskDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": [
{
"activityId": "anActivityId",
"activityInstanceId": "anActivityInstanceId",
"errorMessage": "anErrorMessage",
"executionId": "anExecutionId",
"id": "anExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.000+0200",
"processDefinitionId": "aProcessDefinitionId",
"processDefinitionKey": "aProcessDefinitionKey",
"processInstanceId": "aProcessInstanceId",
"tenantId": null,
"retries": 3,
"suspended": false,
"workerId": "aWorkerId",
"topicName": "aTopic",
"priority": 9,
"businessKey": "aBusinessKey"
},
{
"activityId": "anotherActivityId",
"activityInstanceId": "anotherActivityInstanceId",
"errorMessage": "anotherErrorMessage",
"executionId": "anotherExecutionId",
"id": "anotherExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.000+0200",
"processDefinitionId": "aProcessDefinitionId",
"processDefinitionKey": "anotherProcessDefinitionKey",
"processInstanceId": "anotherProcessInstanceId",
"tenantId": null,
"retries": 1,
"suspended": false,
"workerId": "aWorkerId",
"topicName": "aTopic",
"priority": 3,
"businessKey": "aBusinessKey"
}
]
}
}
}
},
"description": "Request successful. The Response is a JSON array of external task objects."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid, for example if a `sortOrder` parameter is supplied,\nbut no `sortBy`. See the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/count": {
"get": {
"operationId": "getExternalTasksCount",
"tags": [
"External Task"
],
"description": "Queries for the number of external tasks that fulfill given parameters. Takes the same parameters as the\n[Get External Tasks](https://docs.camunda.org/manual/7.13/reference/rest/external-task/get-query/) method.",
"parameters": [
{
"name": "externalTaskId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by an external task\u0027s id."
},
{
"name": "externalTaskIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the comma-separated list of external task ids."
},
{
"name": "topicName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by an external task topic."
},
{
"name": "workerId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the worker that the task was most recently locked by."
},
{
"name": "locked",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that are currently locked (i.e., they have a lock time and it has not expired).\nValue may only be `true`, as `false` matches any external task."
},
{
"name": "notLocked",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that are currently not locked (i.e., they have no lock or it has expired).\nValue may only be `true`, as `false` matches any external task."
},
{
"name": "withRetriesLeft",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that have a positive (\u0026gt; 0) number of retries (or `null`). Value may only be\n`true`, as `false` matches any external task."
},
{
"name": "noRetriesLeft",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that have 0 retries. Value may only be `true`, as `false` matches any\nexternal task."
},
{
"name": "lockExpirationAfter",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Restrict to external tasks that have a lock that expires after a given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
{
"name": "lockExpirationBefore",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Restrict to external tasks that have a lock that expires before a given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
{
"name": "activityId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the activity that an external task is created for."
},
{
"name": "activityIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the comma-separated list of ids of the activities that an external task is created for."
},
{
"name": "executionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the execution that an external task belongs to."
},
{
"name": "processInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the process instance that an external task belongs to."
},
{
"name": "processInstanceIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process instance ids that an external task may belong to."
},
{
"name": "processDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the id of the process definition that an external task belongs to."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids.\nAn external task must have one of the given tenant ids."
},
{
"name": "active",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include active tasks. Value may only be `true`, as `false` matches any external task."
},
{
"name": "suspended",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include suspended tasks. Value may only be `true`, as `false` matches any external task."
},
{
"name": "priorityHigherThanOrEquals",
"in": "query",
"schema": {
"type": "integer",
"format": "int64"
},
"description": "Only include jobs with a priority higher than or equal to the given value.\nValue must be a valid `long` value."
},
{
"name": "priorityLowerThanOrEquals",
"in": "query",
"schema": {
"type": "integer",
"format": "int64"
},
"description": "Only include jobs with a priority lower than or equal to the given value.\nValue must be a valid `long` value."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "GET /external-task/count?topicName\u003daTopic",
"value": {
"count": 42
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"post": {
"operationId": "queryExternalTasksCount",
"tags": [
"External Task"
],
"description": "Queries for the number of external tasks that fulfill given parameters. This method takes the same message\nbody as the [Get External Tasks (POST)](https://docs.camunda.org/manual/7.13/reference/rest/external-task/post-query/) method.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExternalTaskQueryDto"
},
"examples": {
"example-1": {
"summary": "POST /external-task/count",
"value": {
"topicName": "aTopicName",
"withRetriesLeft": true
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"count": 1
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/fetchAndLock": {
"post": {
"operationId": "fetchAndLock",
"tags": [
"External Task"
],
"description": "Fetches and locks a specific number of external tasks for execution by a worker. Query can be restricted\nto specific task topics and for each task topic an individual lock time can be provided.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FetchExternalTasksDto"
},
"examples": {
"example-1": {
"summary": "POST /external-task/fetchAndLock (1)",
"description": "Request with variable filtering",
"value": {
"workerId": "aWorkerId",
"maxTasks": 2,
"usePriority": true,
"topics": [
{
"topicName": "createOrder",
"lockDuration": 10000,
"variables": [
"orderId"
]
}
]
}
},
"example-2": {
"summary": "POST /external-task/fetchAndLock (2)",
"description": "Request with all variables included",
"value": {
"workerId": "aWorkerId",
"maxTasks": 2,
"usePriority": true,
"topics": [
{
"topicName": "createOrder",
"lockDuration": 10000,
"processDefinitionId": "aProcessDefinitionId",
"tenantIdIn": "tenantOne"
}
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LockedExternalTaskDto"
}
},
"examples": {
"example-1": {
"summary": "POST /external-task/fetchAndLock (1)",
"description": "Request with variable filtering",
"value": [
{
"activityId": "anActivityId",
"activityInstanceId": "anActivityInstanceId",
"errorMessage": "anErrorMessage",
"errorDetails": "anErrorDetails",
"executionId": "anExecutionId",
"id": "anExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.000+0200",
"processDefinitionId": "aProcessDefinitionId",
"processDefinitionKey": "aProcessDefinitionKey",
"processInstanceId": "aProcessInstanceId",
"tenantId": null,
"retries": 3,
"workerId": "aWorkerId",
"priority": 4,
"topicName": "createOrder",
"variables": {
"orderId": {
"type": "String",
"value": "1234",
"valueInfo": {}
}
}
},
{
"activityId": "anActivityId",
"activityInstanceId": "anActivityInstanceId",
"errorMessage": "anErrorMessage",
"errorDetails": "anotherErrorDetails",
"executionId": "anExecutionId",
"id": "anExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.000+0200",
"processDefinitionId": "aProcessDefinitionId",
"processDefinitionKey": "aProcessDefinitionKey",
"processInstanceId": "aProcessInstanceId",
"tenantId": null,
"retries": 3,
"workerId": "aWorkerId",
"priority": 0,
"topicName": "createOrder",
"variables": {
"orderId": {
"type": "String",
"value": "3456",
"valueInfo": {}
}
}
}
]
},
"example-2": {
"summary": "POST /external-task/fetchAndLock (2)",
"description": "Request with all variables included",
"value": [
{
"activityId": "anActivityId",
"activityInstanceId": "anActivityInstanceId",
"errorMessage": "anErrorMessage",
"errorDetails": "anErrorDetails",
"executionId": "anExecutionId",
"id": "anExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.00+0200",
"processDefinitionId": "aProcessDefinitionId",
"processDefinitionKey": "aProcessDefinitionKey",
"processInstanceId": "aProcessInstanceId",
"tenantId": "tenantOne",
"retries": 3,
"workerId": "aWorkerId",
"priority": 4,
"topicName": "createOrder",
"businessKey": "aBusinessKey",
"variables": {
"orderId": {
"type": "String",
"value": "1234",
"valueInfo": {}
}
}
},
{
"activityId": "anActivityId",
"activityInstanceId": "anActivityInstanceId",
"errorMessage": "anErrorMessage",
"errorDetails": "anotherErrorDetails",
"executionId": "anExecutionId",
"id": "anExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.000+0200",
"processDefinitionId": "aProcessDefinitionId",
"processDefinitionKey": "aProcessDefinitionKey",
"processInstanceId": "aProcessInstanceId",
"tenantId": null,
"retries": 3,
"workerId": "aWorkerId",
"priority": 0,
"topicName": "createOrder",
"businessKey": "aBusinessKey",
"variables": {
"orderId": {
"type": "String",
"value": "3456",
"valueInfo": {}
}
}
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/retries": {
"put": {
"operationId": "setExternalTaskRetries",
"tags": [
"External Task"
],
"description": "Sets the number of retries left to execute external tasks by id synchronously. If retries are set to 0, \nan incident is created.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SetRetriesForExternalTasksDto"
},
"examples": {
"example-1": {
"summary": "PUT /external-task/retries",
"value": {
"retries": 123,
"externalTaskIds": [
"anExternalTask",
"anotherExternalTask"
]
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "In case the number of retries is negative or null, an exception of type `InvalidRequestException` is\nreturned. See the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task, \ne.g., due to a caught BPMN boundary event. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/retries-async": {
"post": {
"operationId": "setExternalTaskRetriesAsyncOperation",
"tags": [
"External Task"
],
"description": "Sets the number of retries left to execute external tasks by id asynchronously. If retries are set to 0,\nan incident is created.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SetRetriesForExternalTasksDto"
},
"examples": {
"example-1": {
"summary": "POST /external-task/retries-async",
"value": {
"retries": 123,
"externalTaskIds": [
"anExternalTask",
"anotherExternalTask"
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"id": "aBatchId",
"type": "aBatchType",
"totalJobs": 10,
"jobsCreated": 10,
"batchJobsPerSeed": 100,
"invocationsPerBatchJob": 1,
"seedJobDefinitionId": "aSeedJobDefinitionId",
"monitorJobDefinitionId": "aMonitorJobDefinitionId",
"batchJobDefinitionId": "aBatchJobDefinitionId",
"tenantId": "aTenantId",
"suspended": false,
"createUserId": "demo"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "If neither externalTaskIds nor externalTaskQuery are present or externalTaskIds contains null value or \nthe number of retries is negative or null, an exception of type `InvalidRequestException` is returned.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task, \ne.g., due to a caught BPMN boundary event. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/topic-names": {
"get": {
"operationId": "getTopicNames",
"tags": [
"External Task"
],
"description": "Queries for distinct topic names of external tasks that fulfill given parameters.\nQuery can be restricted to only tasks with retries left, tasks that are locked, or tasks\nthat are unlocked. The parameters withLockedTasks and withUnlockedTasks are\nexclusive. Setting them both to true will return an empty list.\nProviding no parameters will return a list of all distinct topic names with external tasks.",
"parameters": [
{
"name": "withLockedTasks",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that are currently locked (i.e., they have a lock time and it has not expired).\nValue may only be `true`, as `false` matches any external task."
},
{
"name": "withUnlockedTasks",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that are currently not locked (i.e., they have no lock or it has expired).\nValue may only be `true`, as `false` matches any external task."
},
{
"name": "withRetriesLeft",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include external tasks that have a positive (\u0026gt; 0) number of retries (or `null`). Value may only be\n`true`, as `false` matches any external task."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"examples": {
"example-1": {
"summary": "GET /external-task/topic-names?withLockedTasks",
"value": [
"topic-a",
"topic-b",
"topic-c"
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {}
}
},
"description": "Returned if some of the query parameters are invalid."
}
}
}
},
"/external-task/{id}": {
"get": {
"operationId": "getExternalTask",
"tags": [
"External Task"
],
"description": "Retrieves an external task by id, corresponding to the `ExternalTask` interface in the engine.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the external task to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExternalTaskDto"
},
"examples": {
"example-1": {
"summary": "GET /external-task/anExternalTaskId",
"value": {
"activityId": "anActivityId",
"activityInstanceId": "anActivityInstanceId",
"errorMessage": "anErrorMessage",
"executionId": "anExecutionId",
"id": "anExternalTaskId",
"lockExpirationTime": "2015-10-06T16:34:42.000+0200",
"processDefinitionId": "aProcessDefinitionId",
"processDefinitionKey": "aProcessDefinitionKey",
"processInstanceId": "aProcessInstanceId",
"tenantId": null,
"retries": 3,
"suspended": false,
"workerId": "aWorkerId",
"priority": 0,
"topicName": "aTopic",
"businessKey": "aBusinessKey"
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "External task with the given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/{id}/bpmnError": {
"post": {
"operationId": "handleExternalTaskBpmnError",
"tags": [
"External Task"
],
"description": "Reports a business error in the context of a running external task by id. The error code must be specified\nto identify the BPMN error handler.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the external task in which context a BPMN error is reported."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExternalTaskBpmnError"
},
"examples": {
"example-1": {
"summary": "POST /external-task/anId/bpmnError",
"value": {
"workerId": "aWorker",
"errorCode": "bpmn-error",
"errorMessage": "anErrorMessage",
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task\u0027s most recent lock was not acquired by the provided worker.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task,\ne.g., due to a caught BPMN boundary event.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the corresponding process instance could not be resumed successfully.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/{id}/complete": {
"post": {
"operationId": "completeExternalTaskResource",
"tags": [
"External Task"
],
"description": "Completes an external task by id and updates process variables.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to complete."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CompleteExternalTaskDto"
},
"examples": {
"example-1": {
"summary": "POST /external-task/anId/complete",
"value": {
"workerId": "aWorker",
"variables": {
"aVariable": {
"value": "aStringValue"
},
"anotherVariable": {
"value": 42
},
"aThirdVariable": {
"value": true
}
},
"localVariables": {
"aLocalVariable": {
"value": "aStringValue"
}
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task\u0027s most recent lock was not acquired by the provided worker. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task,\ne.g., due to a caught BPMN boundary event. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the corresponding process instance could not be resumed successfully. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/{id}/errorDetails": {
"get": {
"operationId": "getExternalTaskErrorDetails",
"tags": [
"External Task"
],
"description": "Retrieves the error details in the context of a running external task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the external task for which the error details should be retrieved."
}
],
"responses": {
"200": {
"description": "Request successful.",
"content": {
"text/plain": {
"schema": {
"type": "string",
"description": "The error details for the external task."
},
"examples": {
"example-1": {
"value": "org.apache.ibatis.jdbc.RuntimeSqlException: org.apache.ibatis.jdbc.RuntimeSqlException: test cause\n at org.camunda.bpm.engine.test.api.externaltask.ExternalTaskServiceTest.testHandleFailureWithErrorDetails(ExternalTaskServiceTest.java:1424)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n "
}
}
}
}
},
"204": {
"description": "Request successful. In case the external task has no error details."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "An external task with the given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/{id}/extendLock": {
"post": {
"operationId": "extendLock",
"tags": [
"External Task"
],
"description": "Extends the timeout of the lock by a given amount of time.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the external task."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExtendLockOnExternalTaskDto"
},
"examples": {
"example-1": {
"summary": "POST /external-task/anId/extendLock",
"value": {
"workerId": "anId",
"newDuration": 100000
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "In case the new lock duration is negative or the external task is not locked by the given worker or not \nlocked at all, an exception of type `InvalidRequestException` is returned. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task,\ne.g., due to a caught BPMN boundary event. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/{id}/failure": {
"post": {
"operationId": "handleFailure",
"tags": [
"External Task"
],
"description": "Reports a failure to execute an external task by id. A number of retries and a timeout until the task can\nbe retried can be specified. If retries are set to 0, an incident for this task is created.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the external task to report a failure for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExternalTaskFailureDto"
},
"examples": {
"example-1": {
"summary": "POST /external-task/anId/failure",
"value": {
"workerId": "aWorker",
"errorMessage": "Does not compute",
"retries": 3,
"retryTimeout": 60000
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task\u0027s most recent lock was not acquired by the provided worker. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task,\ne.g., due to a caught BPMN boundary event. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the corresponding process instance could not be resumed successfully. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/{id}/priority": {
"put": {
"operationId": "setExternalTaskResourcePriority",
"tags": [
"External Task"
],
"description": "Sets the priority of an existing external task by id. The default value of a priority is 0.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the external task to set the priority for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PriorityDto"
},
"examples": {
"example-1": {
"summary": "PUT /external-task/anId/priority",
"value": {
"priority": 5
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task,\ne.g., due to a caught BPMN boundary event. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/{id}/retries": {
"put": {
"operationId": "setExternalTaskResourceRetries",
"tags": [
"External Task"
],
"description": "Sets the number of retries left to execute an external task by id. If retries are set to 0, an \nincident is created.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the external task to set the number of retries for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RetriesDto"
},
"examples": {
"example-1": {
"summary": "PUT /external-task/anId/retries",
"value": {
"retries": 123
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task,\ne.g., due to a caught BPMN boundary event. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "In case the number of retries is negative or null, an exception of type `InvalidRequestException`\nis returned. See the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/external-task/{id}/unlock": {
"post": {
"operationId": "unlock",
"tags": [
"External Task"
],
"description": "Unlocks an external task by id. Clears the task\u0027s lock expiration time and worker id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the external task to unlock."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task,\ne.g., due to a caught BPMN boundary event. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/message": {
"post": {
"operationId": "deliverMessage",
"tags": [
"Message"
],
"description": "Correlates a message to the process engine to either trigger a message start event or an intermediate message \ncatching event. Internally this maps to the engine\u0027s message correlation builder methods\n`MessageCorrelationBuilder#correlateWithResult()` and `MessageCorrelationBuilder#correlateAllWithResult()`.\nFor more information about the correlation behavior, see the [Message Events](https://docs.camunda.org/manual/7.13/bpmn20/events/message-events/)\nsection of the [BPMN 2.0 Implementation Reference](https://docs.camunda.org/manual/7.13/reference/bpmn20/).",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CorrelationMessageDto"
},
"examples": {
"example-1": {
"summary": "POST /condition",
"description": "Correlate without result",
"value": {
"messageName": "aMessage",
"businessKey": "aBusinessKey",
"correlationKeys": {
"aVariable": {
"value": "aValue",
"type": "String"
}
},
"processVariables": {
"aVariable": {
"value": "aNewValue",
"type": "String",
"valueInfo": {
"transient": true
}
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
}
}
},
"example-2": {
"summary": "POST /condition",
"description": "Correlate with result",
"value": {
"messageName": "aMessage",
"businessKey": "aBusinessKey",
"correlationKeys": {
"aVariable": {
"value": "aValue",
"type": "String"
}
},
"processVariables": {
"aVariable": {
"value": "aNewValue",
"type": "String",
"valueInfo": {
"transient": true
}
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"resultEnabled": true
}
},
"example-3": {
"summary": "POST /condition",
"description": "Correlate with result and variables",
"value": {
"messageName": "aMessage",
"businessKey": "aBusinessKey",
"correlationKeys": {
"aVariable": {
"value": "aValue",
"type": "String"
}
},
"processVariables": {
"aVariable": {
"value": "aNewValue",
"type": "String",
"valueInfo": {
"transient": true
}
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"resultEnabled": true,
"variablesInResultEnabled": true
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MessageCorrelationResultWithVariableDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response.",
"description": "The Response content of a status 200. The property `variablesInResultEnabled` in the request body was `false` (Default).",
"value": [
{
"resultType": "ProcessDefinition",
"execution": null,
"processInstance": {
"links": [],
"id": "aProcInstId",
"definitionId": "aProcDefId",
"businessKey": "aKey",
"caseInstanceId": "aCaseInstId",
"ended": false,
"suspended": false,
"tenantId": "aTenantId"
}
}
]
},
"example-2": {
"summary": "Status 200 Response.",
"description": "The Response content of a status 200. The property `variablesInResultEnabled` in the request body was `true`.",
"value": [
{
"resultType": "Execution",
"execution": {
"id": "anExecutionId",
"processInstanceId": "aProcInstId",
"ended": false,
"tenantId": "aTenantId"
},
"processInstance": null,
"variables": {
"aVariable": {
"value": "aNewValue",
"type": "String",
"valueInfo": {
"transient": true
}
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
}
}
]
}
}
}
},
"description": "Request successful. The property `resultEnabled` in the request body was `true`.\nThe `variables` property is only returned, if the property variablesInResultEnable`\nwas set to `true` in the request."
},
"204": {
"description": "Request successful. The property `resultEnabled` in the request body was `false` (Default)."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if:\n* no `messageName` was supplied\n* both `tenantId` and `withoutTenantId` are supplied\n* the message has not been correlated to exactly one entity (execution or process definition)\n* the variable value or type is invalid, for example if the value could not be parsed to an Integer value or the passed variable type is not supported.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for the error response format."
}
}
}
},
"/metrics": {
"get": {
"operationId": "interval",
"tags": [
"Metrics"
],
"description": "Retrieves a list of metrics, aggregated for a given interval.",
"parameters": [
{
"name": "name",
"in": "query",
"schema": {
"enum": [
"activity-instance-start",
"activity-instance-end",
"job-acquisition-attempt",
"job-acquired-success",
"job-acquired-failure",
"job-execution-rejected",
"job-successful",
"job-failed",
"job-locked-exclusive",
"executed-decision-elements",
"history-cleanup-removed-process-instances",
"history-cleanup-removed-case-instances",
"history-cleanup-removed-decision-instances",
"history-cleanup-removed-batch-operations"
],
"type": "string"
},
"description": "The name of the metric."
},
{
"name": "reporter",
"in": "query",
"schema": {
"type": "string"
},
"description": "The name of the reporter (host), on which the metrics was logged. This will have\nvalue provided by the [hostname configuration property](https://docs.camunda.org/manual/7.13/reference/deployment-descriptors/tags/process-engine/#hostname)."
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "The start date (inclusive)."
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "The end date (exclusive)."
},
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
},
{
"name": "interval",
"in": "query",
"schema": {
"default": 900,
"type": "string"
},
"description": "The interval for which the metrics should be aggregated. Time unit is seconds.\nDefault: The interval is set to 15 minutes (900 seconds)."
},
{
"name": "aggregateByReporter",
"in": "query",
"schema": {
"type": "string"
},
"description": "Aggregate metrics by reporter."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MetricsIntervalResultDto"
}
},
"examples": {
"example-1": {
"summary": "GET /metrics?name\u003dactivity-instance-end\u0026startDate\u003d1970-01-01T01:45:00.000%2b0200\u0026endDate\u003d1970-01-01T02:00:00.000%2b0200",
"value": [
{
"timestamp": "1970-01-01T01:45:00.000+0200",
"name": "activity-instance-end",
"reporter": "REPORTER",
"value": 23
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid."
}
}
}
},
"/metrics/{metrics-name}/sum": {
"get": {
"operationId": "getMetrics",
"tags": [
"Metrics"
],
"description": "Retrieves the `sum` (count) for a given metric.",
"parameters": [
{
"name": "metrics-name",
"in": "path",
"schema": {
"enum": [
"activity-instance-start",
"activity-instance-end",
"job-acquisition-attempt",
"job-acquired-success",
"job-acquired-failure",
"job-execution-rejected",
"job-successful",
"job-failed",
"job-locked-exclusive",
"executed-decision-elements",
"history-cleanup-removed-process-instances",
"history-cleanup-removed-case-instances",
"history-cleanup-removed-decision-instances",
"history-cleanup-removed-batch-operations"
],
"type": "string"
},
"required": true,
"description": "The name of the metric."
},
{
"name": "startDate",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "The start date (inclusive)."
},
{
"name": "endDate",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "The end date (exclusive)."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MetricsResultDto"
},
"examples": {
"example-1": {
"summary": "GET /metrics/activity-instance-end/sum?startDate\u003d2015-01-01T00:00:00.000%2b0200",
"value": {
"result": 4342343241
}
}
}
}
},
"description": "Request successful."
}
}
}
},
"/process-definition": {
"get": {
"operationId": "getProcessDefinitions",
"tags": [
"Process Definition"
],
"summary": "Get List",
"description": "Queries for process definitions that fulfill given parameters. Parameters may be the properties of \nprocess definitions, such as the name, key or version. The size of the result set can be retrieved\nby using the [Get Definition Count](https://docs.camunda.org/manual/7.13/reference/rest/process-definition/get-query-count/) method.",
"parameters": [
{
"name": "processDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition id."
},
{
"name": "processDefinitionIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process definition ids."
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition name."
},
{
"name": "nameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition names that the parameter is a substring of."
},
{
"name": "deploymentId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment the id belongs to."
},
{
"name": "deployedAfter",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Filter by the deploy time of the deployment the process definition belongs to.\nOnly selects process definitions that have been deployed after (exclusive) a specific time.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.546+0200`."
},
{
"name": "deployedAt",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Filter by the deploy time of the deployment the process definition belongs to.\nOnly selects process definitions that have been deployed at a specific time (exact match).\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.546+0200`."
},
{
"name": "key",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition key, i.e., the id in the BPMN 2.0 XML. Exact match."
},
{
"name": "keysIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process definition keys."
},
{
"name": "keyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition keys that the parameter is a substring of."
},
{
"name": "category",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition category. Exact match."
},
{
"name": "categoryLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition categories that the parameter is a substring of."
},
{
"name": "version",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
},
"description": "Filter by process definition version."
},
{
"name": "latestVersion",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include those process definitions that are latest versions.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "resourceName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the name of the process definition resource. Exact match."
},
{
"name": "resourceNameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by names of those process definition resources that the parameter is a substring of."
},
{
"name": "startableBy",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a user name who is allowed to start the process."
},
{
"name": "active",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include active process definitions.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "suspended",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include suspended process definitions.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "incidentId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident id."
},
{
"name": "incidentType",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident type.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types)\nfor a list of incident types."
},
{
"name": "incidentMessage",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident message. Exact match."
},
{
"name": "incidentMessageLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident message that the parameter is a substring of."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids.\nA process definition must have one of the given tenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include process definitions which belong to no tenant.\nValue may only be true, as false is the default behavior."
},
{
"name": "includeProcessDefinitionsWithoutTenantId",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Include process definitions which belong to no tenant. Can be used in combination with `tenantIdIn`.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "versionTag",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the version tag."
},
{
"name": "versionTagLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the version tag that the parameter is a substring of."
},
{
"name": "withoutVersionTag",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include process definitions without a `versionTag`."
},
{
"name": "startableInTasklist",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Filter by process definitions which are startable in Tasklist.."
},
{
"name": "notStartableInTasklist",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Filter by process definitions which are not startable in Tasklist."
},
{
"name": "startablePermissionCheck",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Filter by process definitions which the user is allowed to start in Tasklist.\nIf the user doesn\u0027t have these permissions the result will be empty list.\nThe permissions are:\n* `CREATE` permission for all Process instances\n* `CREATE_INSTANCE` and `READ` permission on Process definition level"
},
{
"name": "sortBy",
"in": "query",
"schema": {
"enum": [
"category",
"key",
"id",
"name",
"version",
"deploymentId",
"deployTime",
"tenantId ",
"versionTag"
],
"type": "string"
},
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
{
"name": "sortOrder",
"in": "query",
"schema": {
"enum": [
"asc",
"desc"
],
"type": "string"
},
"description": "Sort the results in a given order. Values may be asc for ascending order or desc for descending order.\nMust be used in conjunction with the sortBy parameter."
},
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessDefinitionDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"description": "Response of GET `/process-definition?keyLike\u003dinvoice\u0026sortBy\u003dversion\u0026sortOrder\u003dasc`",
"value": [
{
"id": "invoice:1:c3a63aaa-2046-11e7-8f94-34f39ab71d4e",
"key": "invoice",
"category": "http://www.omg.org/spec/BPMN/20100524/MODEL",
"description": null,
"name": "Invoice Receipt",
"version": 1,
"resource": "invoice.v1.bpmn",
"deploymentId": "c398cd26-2046-11e7-8f94-34f39ab71d4e",
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": null,
"historyTimeToLive": 5,
"startableInTasklist": true
},
{
"id": "invoice:2:c3e1bd16-2046-11e7-8f94-34f39ab71d4e",
"key": "invoice",
"category": "http://www.omg.org/spec/BPMN/20100524/MODEL",
"description": null,
"name": "Invoice Receipt",
"version": 2,
"resource": "invoice.v2.bpmn",
"deploymentId": "c3d82020-2046-11e7-8f94-34f39ab71d4e",
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": null,
"historyTimeToLive": null,
"startableInTasklist": true
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid, for example if a `sortOrder` parameter is supplied,\nbut no `sortBy`. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/count": {
"get": {
"operationId": "getProcessDefinitionsCount",
"tags": [
"Process Definition"
],
"summary": "Get List Count",
"description": "Requests the number of process definitions that fulfill the query criteria.\nTakes the same filtering parameters as the [Get Definitions](https://docs.camunda.org/manual/7.13/reference/rest/process-definition/get-query/) method.",
"parameters": [
{
"name": "processDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition id."
},
{
"name": "processDefinitionIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process definition ids."
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition name."
},
{
"name": "nameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition names that the parameter is a substring of."
},
{
"name": "deploymentId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment the id belongs to."
},
{
"name": "deployedAfter",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Filter by the deploy time of the deployment the process definition belongs to.\nOnly selects process definitions that have been deployed after (exclusive) a specific time.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.546+0200`."
},
{
"name": "deployedAt",
"in": "query",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Filter by the deploy time of the deployment the process definition belongs to.\nOnly selects process definitions that have been deployed at a specific time (exact match).\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.546+0200`."
},
{
"name": "key",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition key, i.e., the id in the BPMN 2.0 XML. Exact match."
},
{
"name": "keysIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process definition keys."
},
{
"name": "keyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition keys that the parameter is a substring of."
},
{
"name": "category",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition category. Exact match."
},
{
"name": "categoryLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process definition categories that the parameter is a substring of."
},
{
"name": "version",
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
},
"description": "Filter by process definition version."
},
{
"name": "latestVersion",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include those process definitions that are latest versions.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "resourceName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the name of the process definition resource. Exact match."
},
{
"name": "resourceNameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by names of those process definition resources that the parameter is a substring of."
},
{
"name": "startableBy",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a user name who is allowed to start the process."
},
{
"name": "active",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include active process definitions.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "suspended",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include suspended process definitions.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "incidentId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident id."
},
{
"name": "incidentType",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident type.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types)\nfor a list of incident types."
},
{
"name": "incidentMessage",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident message. Exact match."
},
{
"name": "incidentMessageLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident message that the parameter is a substring of."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids.\nA process definition must have one of the given tenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include process definitions which belong to no tenant.\nValue may only be true, as false is the default behavior."
},
{
"name": "includeProcessDefinitionsWithoutTenantId",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Include process definitions which belong to no tenant. Can be used in combination with `tenantIdIn`.\nValue may only be `true`, as `false` is the default behavior."
},
{
"name": "versionTag",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the version tag."
},
{
"name": "versionTagLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the version tag that the parameter is a substring of."
},
{
"name": "withoutVersionTag",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Only include process definitions without a `versionTag`."
},
{
"name": "startableInTasklist",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Filter by process definitions which are startable in Tasklist.."
},
{
"name": "notStartableInTasklist",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Filter by process definitions which are not startable in Tasklist."
},
{
"name": "startablePermissionCheck",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Filter by process definitions which the user is allowed to start in Tasklist.\nIf the user doesn\u0027t have these permissions the result will be empty list.\nThe permissions are:\n* `CREATE` permission for all Process instances\n* `CREATE_INSTANCE` and `READ` permission on Process definition level"
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"description": "Response of GET `/process-definition/count?keyLike\u003dKey\u0026version\u003d47`",
"value": {
"count": 1
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}": {
"delete": {
"operationId": "deleteProcessDefinitionsByKey",
"tags": [
"Process Definition"
],
"summary": "Delete By Key",
"description": "Deletes process definitions by a given key which belong to no tenant id.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definitions to be deleted."
},
{
"name": "cascade",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "`true`, if all process instances, historic process instances and jobs\nfor this process definition should be deleted."
},
{
"name": "skipCustomListeners",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "`true`, if only the built-in ExecutionListeners should be notified with the end event."
},
{
"name": "skipIoMappings",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "A boolean value to control whether input/output mappings should be executed during deletion.\n`true`, if input/output mappings should not be invoked."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "Forbidden\nThe process definitions with the given `key` cannot be deleted due to missing permissions.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Not found\nProcess definition with given `key` does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"get": {
"operationId": "getProcessDefinitionByKey",
"tags": [
"Process Definition"
],
"summary": "Get",
"description": "Retrieves the latest version of the process definition which belongs to no tenant according to the `ProcessDefinition` interface in the engine.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionDto"
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"description": "Response of GET `/process-definition/key/invoice`",
"value": {
"id": "invoice:1:c3a63aaa-2046-11e7-8f94-34f39ab71d4e",
"key": "invoice",
"category": "http://www.omg.org/spec/BPMN/20100524/MODEL",
"description": null,
"name": "Invoice Receipt",
"version": 1,
"resource": "invoice.v1.bpmn",
"deploymentId": "c398cd26-2046-11e7-8f94-34f39ab71d4e",
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": null,
"historyTimeToLive": 5,
"startableInTasklist": true
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given `key` does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/deployed-start-form": {
"get": {
"operationId": "getDeployedStartFormByKey",
"tags": [
"Process Definition"
],
"summary": "Get Deployed Start Form",
"description": "Retrieves the deployed form that can be referenced from a start event.\nFor further information please refer to [User Guide](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#embedded-task-forms).",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/xhtml+xml": {
"schema": {
"type": "string",
"format": "binary",
"description": "For `application/xhtml+xml` Responses, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "Resonse for GET `/process-definition/key/processDefinitionKey/deployed-start-form`",
"value": "\u003cform role\u003d\"form\" name\u003d\"invoiceForm\"\n class\u003d\"form-horizontal\"\u003e\n\n \u003cdiv class\u003d\"form-group\"\u003e\n \u003clabel class\u003d\"control-label col-md-4\"\n for\u003d\"creditor\"\u003eCreditor\u003c/label\u003e\n \u003cdiv class\u003d\"col-md-8\"\u003e\n \u003cinput cam-variable-name\u003d\"creditor\"\n cam-variable-type\u003d\"String\"\n id\u003d\"creditor\"\n class\u003d\"form-control\"\n type\u003d\"text\"\n required /\u003e\n \u003cdiv class\u003d\"help\"\u003e\n (e.g. \u0026quot;Great Pizza for Everyone Inc.\u0026quot;)\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c/form\u003e"
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The form key has wrong format. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The deployed start form cannot be retrieved due to missing permissions on process definition resource.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "No deployed start form for a given process definition exists. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/diagram": {
"get": {
"operationId": "getProcessDefinitionDiagramByKey",
"tags": [
"Process Definition"
],
"summary": "Get Diagram",
"description": "Retrieves the diagram for the latest version of the process definition which belongs to no tenant.\n\nIf the process definition\u0027s deployment contains an image resource with the same file name\nas the process definition, the deployed image will be returned by the Get Diagram endpoint.\nExample: `someProcess.bpmn` and `someProcess.png`.\nSupported file extentions for the image are: `svg`, `png`, `jpg`, and `gif`.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition."
}
],
"responses": {
"200": {
"description": "Request successful. The image diagram of this process.",
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary",
"description": "defaults to `application/octet-stream` if the file suffix is unknown"
}
},
"*/*": {
"schema": {
"type": "string",
"format": "binary",
"description": "Files with MIME type information image/png, image/gif, ... "
}
}
}
},
"204": {
"description": "The process definition doesn\u0027t have an associated diagram."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/form-variables": {
"get": {
"operationId": "getStartFormVariablesByKey",
"tags": [
"Process Definition"
],
"summary": "Get Start Form Variables",
"description": "Retrieves the start form variables for the latest process definition which belongs to no tenant\n(only if they are defined via the \n[Generated Task Form](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms) approach).\nThe start form variables take form data specified on the start event into account.\nIf form fields are defined, the variable types and default values\nof the form fields are taken into account.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
},
{
"name": "variableNames",
"in": "query",
"schema": {
"type": "string"
},
"description": "A comma-separated list of variable names. Allows restricting the list of requested\nvariables to the variable names in the list. It is best practice to restrict the\nlist of variables to the variables actually required by the form in order to\nminimize fetching of data. If the query parameter is ommitted all variables are\nfetched. If the query parameter contains non-existent variable names, the variable\nnames are ignored."
},
{
"name": "deserializeValues",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store\ncustom Java objects) should be deserialized on server side (default true).\n\nIf set to true, a serializable variable will be deserialized on server side and\ntransformed to JSON using [Jackson\u0027s](http://jackson.codehaus.org/) POJO/bean\nproperty introspection feature. Note that this requires the Java classes of the\nvariable value to be on the REST API\u0027s classpath.\n\nIf set to false, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string\ncontaining XML.\n\n**Note**: While true is the default value for reasons of backward compatibility, we\nrecommend setting this parameter to false when developing web applications that are\nindependent of the Java process applications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "GET `/task/anId/form-variables`",
"value": {
"amount": {
"type": "integer",
"value": 5,
"valueInfo": {}
},
"firstName": {
"type": "String",
"value": "Jonny",
"valueInfo": {}
}
}
}
}
}
},
"description": "Request successful. A JSON object containing a property for each variable returned."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The key is null or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/history-time-to-live": {
"put": {
"operationId": "updateHistoryTimeToLiveByProcessDefinitionKey",
"tags": [
"Process Definition"
],
"summary": "Update History Time to Live",
"description": "Updates history time to live for the latest version of the process definition which belongs to no tenant.\nThe field is used within [History cleanup](https://docs.camunda.org/manual/7.13/user-guide/process-engine/history/#history-cleanup).",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition to change history time to live."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HistoryTimeToLiveDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-definition/key/aProcessDefinitionKey/history-time-to-live`",
"value": {
"historyTimeToLive": 5
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the request parameters are invalid. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/rendered-form": {
"get": {
"operationId": "getRenderedStartFormByKey",
"tags": [
"Process Definition"
],
"summary": "Get Rendered Start Form",
"description": "Retrieves the rendered form for the latest version of the process definition which belongs to no tenant.\nThis method can be used to get the HTML rendering of a\n[Generated Task Form](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms).",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/xhtml+xml": {
"schema": {
"type": "string",
"format": "binary",
"description": "For `application/xhtml+xml` Responses, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "A `/process-definition/key/anKey/rendered-form` HTML\n GET response body providing the rendered (generated) form content.",
"value": "\u003cform class\u003d\"form-horizontal\"\u003e\n \u003cdiv class\u003d\"control-group\"\u003e\n \u003clabel class\u003d\"control-label\"\u003eCustomer ID\u003c/label\u003e\n \u003cdiv class\u003d\"controls\"\u003e\n \u003cinput form-field type\u003d\"string\" name\u003d\"customerId\"\u003e\u003c/input\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class\u003d\"control-group\"\u003e\n \u003clabel class\u003d\"control-label\"\u003eAmount\u003c/label\u003e\n \u003cdiv class\u003d\"controls\"\u003e\n \u003cinput form-field type\u003d\"number\" name\u003d\"amount\"\u003e\u003c/input\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/form\u003e"
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition has no form field metadata defined. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/start": {
"post": {
"operationId": "startProcessInstanceByKey",
"tags": [
"Process Definition"
],
"summary": "Start Instance",
"description": "Instantiates a given process definition, starts the latest version of the process definition\nwhich belongs to no tenant.\nProcess variables and business key may be supplied in the request body.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StartProcessInstanceDto"
},
"examples": {
"example-1": {
"summary": "Starting a process instance at its default initial activity",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey"
}
},
"example-2": {
"summary": "Starting a process instance with variables in return",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey",
"withVariablesInReturn": true
}
},
"example-3": {
"summary": "Starting a process instance at two specific activities",
"value": {
"variables": {
"aProcessVariable": {
"value": "aStringValue",
"type": "String"
}
},
"businessKey": "myBusinessKey",
"skipCustomListeners": true,
"startInstructions": [
{
"type": "startBeforeActivity",
"activityId": "activityId",
"variables": {
"var": {
"value": "aVariableValue",
"local": false,
"type": "String"
}
}
},
{
"type": "startAfterActivity",
"activityId": "anotherActivityId",
"variables": {
"varLocal": {
"value": "anotherVariableValue",
"local": true,
"type": "String"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceWithVariablesDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"description": "Response for starting a process instance at its default initial activity",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
},
"example-2": {
"summary": "Status 200 Response 2",
"description": "Response for starting a process instance with variables in return",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/aProcInstId",
"rel": "self"
}
],
"id": "aProcInstId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"ended": false,
"suspended": false,
"tenantId": null,
"variables": {
"anotherVariable": {
"type": "Boolean",
"value": true,
"valueInfo": {
"transient": true
}
},
"aVariable": {
"type": "String",
"value": "aStringValue",
"valueInfo": {}
}
}
}
},
"example-3": {
"summary": "Status 200 Response 3",
"description": "Response for starting a process instance at two specific activities",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created due to an invalid variable value,\nfor example if the value could not be parsed to an `Integer` value or\nthe passed variable type is not supported.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created successfully.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/startForm": {
"get": {
"operationId": "getStartFormByKey",
"tags": [
"Process Definition"
],
"summary": "Get Start Form Key",
"description": "Retrieves the key of the start form for the latest version of the process definition\nwhich belongs to no tenant.\nThe form key corresponds to the `FormData#formKey` property in the engine.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) for which the form key is to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FormDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "GET `process-definition/key/aKey/startForm`",
"value": {
"key": "aFormKey",
"contextPath": "http://localhost:8080/my-process-application/"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition has no start form defined. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/statistics": {
"get": {
"operationId": "getActivityStatisticsByProcessDefinitionKey",
"tags": [
"Process Definition"
],
"summary": "Get Activity Instance Statistics",
"description": "Retrieves runtime statistics of the latest version of the given process definition\nwhich belongs to no tenant, grouped by activities.\nThese statistics include the number of running activity instances, optionally the number of failed jobs\nand also optionally the number of incidents either grouped by incident types or\nfor a specific incident type.\n**Note**: This does not include historic data.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
},
{
"name": "failedJobs",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Whether to include the number of failed jobs in the result or not. Valid values are `true` or `false`."
},
{
"name": "incidents",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Valid values for this property are `true` or `false`.\nIf this property has been set to `true` the result will include the corresponding number of incidents\nfor each occurred incident type.\nIf it is set to `false`, the incidents will not be included in the result.\nCannot be used in combination with `incidentsForType`."
},
{
"name": "incidentsForType",
"in": "query",
"schema": {
"type": "string"
},
"description": "If this property has been set with any incident type (i.e., a string value) the result\nwill only include the number of incidents for the assigned incident type.\nCannot be used in combination with `incidents`.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types)\nfor a list of incident types."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActivityStatisticsResultDto"
}
},
"examples": {
"example-1": {
"summary": "GET /process-definition/key/aProcessDefinitionKey/statistics?failedJobs\u003dtrue",
"description": "Request with Query Parameter `failedJobs\u003dtrue`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 42,
"incidents": []
},
{
"id": "anotherActivity",
"instances": 124,
"failedJobs": 43,
"incidents": []
}
]
},
"example-2": {
"summary": "GET /process-definition/key/aProcessDefinitionKey/statistics?incidents\u003dtrue",
"description": "Request with Query Parameter `incidents\u003dtrue`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 0,
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 42
},
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
},
{
"id": "anotherActivity",
"instances": 124,
"failedJobs": 0,
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 43
},
{
"incidentType": "anIncident",
"incidentCount": 22
},
{
"incidentType": "anotherIncident",
"incidentCount": 15
}
]
}
]
},
"example-3": {
"summary": "GET /process-definition/key/aProcessDefinitionKey/statistics?incidentsForType\u003danIncident",
"description": "Request with Query Parameter `incidentsForType\u003danIncident`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 0,
"incidents": [
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/submit-form": {
"post": {
"operationId": "submitFormByKey",
"tags": [
"Process Definition"
],
"summary": "Submit Start Form",
"description": "Starts the latest version of the process definition which belongs to no tenant\nusing a set of process variables and the business key.\nIf the start event has Form Field Metadata defined, the process engine will perform backend validation\nfor any form fields which have validators defined.\nSee [Documentation on Generated Task Forms](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms).",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition to submit the form for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StartProcessInstanceFormDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-definition/key/aProcessDefinitionKey/submit-form`",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey"
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"description": "POST `/process-definition/key/aProcessDefinitionKey/submit-form`",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created due to an invalid variable value,\nfor example if the value could not be parsed to an `Integer` value or\nthe passed variable type is not supported.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created successfully.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/suspended": {
"put": {
"operationId": "updateProcessDefinitionSuspensionStateByKey",
"tags": [
"Process Definition"
],
"summary": "Activate/Suspend by Id",
"description": "Activates or suspends a given process definition by latest version of process definition key\nwhich belongs to no tenant.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be activated/suspended."
}
],
"requestBody": {
"description": "**Note**: Unallowed properties are `processDefinitionId` and `processDefinitionKey`.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionSuspensionStateDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-definition/key/aProcessDefinitionKey/suspended`",
"value": {
"suspended": true,
"includeProcessInstances": true,
"executionDate": "2013-11-21T10:49:45T14:42:45"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid,\nfor example if the provided `executionDate` parameter doesn\u0027t have the expected format or\nif the `processDefinitionKey` parameter is `null`. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}": {
"delete": {
"operationId": "deleteProcessDefinitionsByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Delete By Key",
"description": "Deletes process definitions by a given key and which belong to a tenant id.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definitions to be deleted."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definitions belong to."
},
{
"name": "cascade",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "`true`, if all process instances, historic process instances and jobs\nfor this process definition should be deleted."
},
{
"name": "skipCustomListeners",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "`true`, if only the built-in ExecutionListeners should be notified with the end event."
},
{
"name": "skipIoMappings",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "A boolean value to control whether input/output mappings should be executed during deletion.\n`true`, if input/output mappings should not be invoked."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "Forbidden\nThe process definitions with the given `key` cannot be deleted due to missing permissions.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Not found\nProcess definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"get": {
"operationId": "getLatestProcessDefinitionByTenantId",
"tags": [
"Process Definition"
],
"summary": "Get",
"description": "Retrieves the latest version of the process definition for tenant according to\nthe `ProcessDefinition` interface in the engine.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionDto"
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"description": "Response of GET `/process-definition/key/invoice/tenant-id/tenantOne`",
"value": {
"id": "invoice:1:c3a63aaa-2046-11e7-8f94-34f39ab71d4e",
"key": "invoice",
"category": "http://www.omg.org/spec/BPMN/20100524/MODEL",
"description": null,
"name": "Invoice Receipt",
"version": 1,
"resource": "invoice.v1.bpmn",
"deploymentId": "c398cd26-2046-11e7-8f94-34f39ab71d4e",
"diagram": null,
"suspended": false,
"tenantId": "tenantOne",
"versionTag": null,
"historyTimeToLive": 5,
"startableInTasklist": true
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given `key` does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/deployed-start-form": {
"get": {
"operationId": "getDeployedStartFormByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Get Deployed Start Form",
"description": "Retrieves the deployed form that can be referenced from a start event.\nFor further information please refer to [User Guide](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#embedded-task-forms).",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definitions belong to."
}
],
"responses": {
"200": {
"content": {
"application/xhtml+xml": {
"schema": {
"type": "string",
"format": "binary",
"description": "For `application/xhtml+xml` Responses, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "Resonse for GET\n `/process-definition/key/processDefinitionKey/tenant-id/tenantId/deployed-start-form`",
"value": "\u003cform role\u003d\"form\" name\u003d\"invoiceForm\"\n class\u003d\"form-horizontal\"\u003e\n\n \u003cdiv class\u003d\"form-group\"\u003e\n \u003clabel class\u003d\"control-label col-md-4\"\n for\u003d\"creditor\"\u003eCreditor\u003c/label\u003e\n \u003cdiv class\u003d\"col-md-8\"\u003e\n \u003cinput cam-variable-name\u003d\"creditor\"\n cam-variable-type\u003d\"String\"\n id\u003d\"creditor\"\n class\u003d\"form-control\"\n type\u003d\"text\"\n required /\u003e\n \u003cdiv class\u003d\"help\"\u003e\n (e.g. \u0026quot;Great Pizza for Everyone Inc.\u0026quot;)\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c/form\u003e"
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The form key has wrong format. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The deployed start form cannot be retrieved due to missing permissions on process definition resource.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "No deployed start form for a given process definition exists. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/diagram": {
"get": {
"operationId": "getProcessDefinitionDiagramByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Get Diagram",
"description": "Retrieves the diagram for the latest version of the process definition for tenant.\n\nIf the process definition\u0027s deployment contains an image resource with the same file name\nas the process definition, the deployed image will be returned by the Get Diagram endpoint.\nExample: `someProcess.bpmn` and `someProcess.png`.\nSupported file extentions for the image are: `svg`, `png`, `jpg`, and `gif`.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"responses": {
"200": {
"description": "Request successful. The image diagram of this process.",
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary",
"description": "defaults to `application/octet-stream` if the file suffix is unknown"
}
},
"*/*": {
"schema": {
"type": "string",
"format": "binary",
"description": "Files with MIME type information image/png, image/gif, ... "
}
}
}
},
"204": {
"description": "The process definition doesn\u0027t have an associated diagram."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/form-variables": {
"get": {
"operationId": "getStartFormVariablesByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Get Start Form Variables",
"description": "Retrieves the start form variables for the latest process definition for a tenant\n(only if they are defined via the \n[Generated Task Form](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms) approach).\nThe start form variables take form data specified on the start event into account.\nIf form fields are defined, the variable types and default values\nof the form fields are taken into account.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
},
{
"name": "variableNames",
"in": "query",
"schema": {
"type": "string"
},
"description": "A comma-separated list of variable names. Allows restricting the list of requested\nvariables to the variable names in the list. It is best practice to restrict the\nlist of variables to the variables actually required by the form in order to\nminimize fetching of data. If the query parameter is ommitted all variables are\nfetched. If the query parameter contains non-existent variable names, the variable\nnames are ignored."
},
{
"name": "deserializeValues",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store\ncustom Java objects) should be deserialized on server side (default true).\n\nIf set to true, a serializable variable will be deserialized on server side and\ntransformed to JSON using [Jackson\u0027s](http://jackson.codehaus.org/) POJO/bean\nproperty introspection feature. Note that this requires the Java classes of the\nvariable value to be on the REST API\u0027s classpath.\n\nIf set to false, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string\ncontaining XML.\n\n**Note**: While true is the default value for reasons of backward compatibility, we\nrecommend setting this parameter to false when developing web applications that are\nindependent of the Java process applications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "GET `/task/anId/form-variables`",
"value": {
"amount": {
"type": "integer",
"value": 5,
"valueInfo": {}
},
"firstName": {
"type": "String",
"value": "Jonny",
"valueInfo": {}
}
}
}
}
}
},
"description": "Request successful. A JSON object containing a property for each variable returned."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The key is null or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/history-time-to-live": {
"put": {
"operationId": "updateHistoryTimeToLiveByProcessDefinitionKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Update History Time to Live",
"description": "Updates history time to live for the latest version of the process definition for a tenant.\nThe field is used within [History cleanup](https://docs.camunda.org/manual/7.13/user-guide/process-engine/history/#history-cleanup).",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition to change history time to live."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HistoryTimeToLiveDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-definition/key/aProcessDefinitionKey/tenant-id/aTenantId/history-time-to-live`",
"value": {
"historyTimeToLive": 5
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the request parameters are invalid. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/rendered-form": {
"get": {
"operationId": "getRenderedStartFormByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Get Rendered Start Form",
"description": "Retrieves the rendered form for the latest version of the process definition for a tenant.\nThis method can be used to get the HTML rendering of a\n[Generated Task Form](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms).",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"responses": {
"200": {
"content": {
"application/xhtml+xml": {
"schema": {
"type": "string",
"format": "binary",
"description": "For `application/xhtml+xml` Responses, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "A `/process-definition/key/anKey/tenand-id/aTenantId/rendered-form` HTML\n GET response body providing the rendered (generated) form content.",
"value": "\u003cform class\u003d\"form-horizontal\"\u003e\n \u003cdiv class\u003d\"control-group\"\u003e\n \u003clabel class\u003d\"control-label\"\u003eCustomer ID\u003c/label\u003e\n \u003cdiv class\u003d\"controls\"\u003e\n \u003cinput form-field type\u003d\"string\" name\u003d\"customerId\"\u003e\u003c/input\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class\u003d\"control-group\"\u003e\n \u003clabel class\u003d\"control-label\"\u003eAmount\u003c/label\u003e\n \u003cdiv class\u003d\"controls\"\u003e\n \u003cinput form-field type\u003d\"number\" name\u003d\"amount\"\u003e\u003c/input\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/form\u003e"
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition has no form field metadata defined. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/start": {
"post": {
"operationId": "startProcessInstanceByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Start Instance",
"description": "Instantiates a given process definition, starts the latest version of the process definition for tenant.\nProcess variables and business key may be supplied in the request body.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StartProcessInstanceDto"
},
"examples": {
"example-1": {
"summary": "Starting a process instance at its default initial activity",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey"
}
},
"example-2": {
"summary": "Starting a process instance with variables in return",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey",
"withVariablesInReturn": true
}
},
"example-3": {
"summary": "Starting a process instance at two specific activities",
"value": {
"variables": {
"aProcessVariable": {
"value": "aStringValue",
"type": "String"
}
},
"businessKey": "myBusinessKey",
"skipCustomListeners": true,
"startInstructions": [
{
"type": "startBeforeActivity",
"activityId": "activityId",
"variables": {
"var": {
"value": "aVariableValue",
"local": false,
"type": "String"
}
}
},
{
"type": "startAfterActivity",
"activityId": "anotherActivityId",
"variables": {
"varLocal": {
"value": "anotherVariableValue",
"local": true,
"type": "String"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceWithVariablesDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"description": "Response for starting a process instance at its default initial activity",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
},
"example-2": {
"summary": "Status 200 Response 2",
"description": "Response for starting a process instance with variables in return",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/aProcInstId",
"rel": "self"
}
],
"id": "aProcInstId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"ended": false,
"suspended": false,
"tenantId": null,
"variables": {
"anotherVariable": {
"type": "Boolean",
"value": true,
"valueInfo": {
"transient": true
}
},
"aVariable": {
"type": "String",
"value": "aStringValue",
"valueInfo": {}
}
}
}
},
"example-3": {
"summary": "Status 200 Response 3",
"description": "Response for starting a process instance at two specific activities",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created due to an invalid variable value,\nfor example if the value could not be parsed to an `Integer` value or\nthe passed variable type is not supported.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created successfully.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/startForm": {
"get": {
"operationId": "getStartFormByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Get Start Form Key",
"description": "Retrieves the key of the start form for the latest version of the process definition for a tenant.\nThe form key corresponds to the `FormData#formKey` property in the engine.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) for which the form key is to be retrieved."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FormDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "GET `process-definition/key/aKey/tenant-id/aTenantId/startForm`",
"value": {
"key": "aFormKey",
"contextPath": "http://localhost:8080/my-process-application/"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition has no start form defined. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/statistics": {
"get": {
"operationId": "getActivityStatisticsByProcessDefinitionKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Get Activity Instance Statistics",
"description": "Retrieves runtime statistics of the latest version of the given process definition for a tenant,\ngrouped by activities.\nThese statistics include the number of running activity instances, optionally the number of failed jobs\nand also optionally the number of incidents either grouped by incident types or\nfor a specific incident type.\n**Note**: This does not include historic data.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be retrieved."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
},
{
"name": "failedJobs",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Whether to include the number of failed jobs in the result or not. Valid values are `true` or `false`."
},
{
"name": "incidents",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Valid values for this property are `true` or `false`.\nIf this property has been set to `true` the result will include the corresponding number of incidents\nfor each occurred incident type.\nIf it is set to `false`, the incidents will not be included in the result.\nCannot be used in combination with `incidentsForType`."
},
{
"name": "incidentsForType",
"in": "query",
"schema": {
"type": "string"
},
"description": "If this property has been set with any incident type (i.e., a string value) the result\nwill only include the number of incidents for the assigned incident type.\nCannot be used in combination with `incidents`.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types)\nfor a list of incident types."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActivityStatisticsResultDto"
}
},
"examples": {
"example-1": {
"summary": "GET /process-definition/key/aProcessDefinitionKey/tenant-id/aTenantId/statistics?failedJobs\u003dtrue",
"description": "Request with Query Parameter `failedJobs\u003dtrue`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 42,
"incidents": []
},
{
"id": "anotherActivity",
"instances": 124,
"failedJobs": 43,
"incidents": []
}
]
},
"example-2": {
"summary": "GET /process-definition/key/aProcessDefinitionKey/tenant-id/aTenantId/statistics?incidents\u003dtrue",
"description": "Request with Query Parameter `incidents\u003dtrue`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 0,
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 42
},
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
},
{
"id": "anotherActivity",
"instances": 124,
"failedJobs": 0,
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 43
},
{
"incidentType": "anIncident",
"incidentCount": 22
},
{
"incidentType": "anotherIncident",
"incidentCount": 15
}
]
}
]
},
"example-3": {
"summary": "GET /process-definition/key/aProcessDefinitionKey/tenant-id/aTenantId/statistics?incidentsForType\u003danIncident",
"description": "Request with Query Parameter `incidentsForType\u003danIncident`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 0,
"incidents": [
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/submit-form": {
"post": {
"operationId": "submitFormByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Submit Start Form",
"description": "Starts the latest version of the process definition for a tenant\nusing a set of process variables and the business key.\nIf the start event has Form Field Metadata defined, the process engine will perform backend validation\nfor any form fields which have validators defined.\nSee [Documentation on Generated Task Forms](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms).",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition to submit the form for."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StartProcessInstanceFormDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-definition/key/aProcessDefinitionKey/tenant-id/aTenantId/submit-form`",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey"
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"description": "POST `/process-definition/key/aProcessDefinitionKey/tenant-id/aTenantId/submit-form`",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created due to an invalid variable value,\nfor example if the value could not be parsed to an `Integer` value or\nthe passed variable type is not supported.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created successfully.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/suspended": {
"put": {
"operationId": "updateProcessDefinitionSuspensionStateByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Activate/Suspend by Id",
"description": "Activates or suspends a given process definition by the latest version of\nthe process definition for tenant.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) to be activated/suspended."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"requestBody": {
"description": "**Note**: Unallowed properties are `processDefinitionId` and `processDefinitionKey`.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionSuspensionStateDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-definition/key/aProcessDefinitionKey/tenant-id/aTenantId/suspended`",
"value": {
"suspended": true,
"includeProcessInstances": true,
"executionDate": "2013-11-21T10:49:45T14:42:45"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid,\nfor example if the provided `executionDate` parameter doesn\u0027t have the expected format or\nif the `processDefinitionKey` parameter is `null`. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/tenant/{tenant-id}/xml": {
"get": {
"operationId": "getProcessDefinitionBpmn20XmlByKeyAndTenantId",
"tags": [
"Process Definition"
],
"summary": "Get XML",
"description": "Retrieves latest version the BPMN 2.0 XML of a process definition.\nReturns the XML for the latest version of the process definition for tenant.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) whose XML should be retrieved."
},
{
"name": "tenant-id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the tenant the process definition belongs to."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionDiagramDto"
},
"examples": {
"example-1": {
"summary": "GET `/process-definition/key/aProcessDefinitionKey/tenant-id/aTenantId/xml`",
"value": {
"id": "anProcessDefinitionId",
"bpmn20Xml": "\u003c?xml version\u003d\"1.0\" encoding\u003d\"UTF-8\"?\u003e\n\u003cdefinitions\n xmlns\u003d\"http://www.omg.org/spec/BPMN/20100524/MODEL\"\n xmlns:camunda\u003d\"http://camunda.org/schema/1.0/bpmn\"\n targetNamespace\u003d\"Examples\"\u003e\n \u003cprocess id\u003d\"oneTaskProcess\" isExecutable\u003d\"true\"\u003e\n \u003cstartEvent id\u003d\"theStart\" /\u003e\n \u003csequenceFlow id\u003d\"flow1\" sourceRef\u003d\"theStart\" targetRef\u003d\"theEnd\" /\u003e\n \u003cendEvent id\u003d\"theEnd\" /\u003e\n \u003c/process\u003e\n \u003c/definitions\u003e"
}
}
}
}
},
"description": "Request successful."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The Process Definition xml cannot be retrieved due to missing permissions on the Process Definition resource.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/key/{key}/xml": {
"get": {
"operationId": "getProcessDefinitionBpmn20XmlByKey",
"tags": [
"Process Definition"
],
"summary": "Get XML",
"description": "Retrieves latest version the BPMN 2.0 XML of a process definition.",
"parameters": [
{
"name": "key",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The key of the process definition (the latest version thereof) whose XML should be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionDiagramDto"
},
"examples": {
"example-1": {
"summary": "GET `/process-definition/key/aProcessDefinitionKey/xml`",
"value": {
"id": "anProcessDefinitionId",
"bpmn20Xml": "\u003c?xml version\u003d\"1.0\" encoding\u003d\"UTF-8\"?\u003e\n\u003cdefinitions\n xmlns\u003d\"http://www.omg.org/spec/BPMN/20100524/MODEL\"\n xmlns:camunda\u003d\"http://camunda.org/schema/1.0/bpmn\"\n targetNamespace\u003d\"Examples\"\u003e\n \u003cprocess id\u003d\"oneTaskProcess\" isExecutable\u003d\"true\"\u003e\n \u003cstartEvent id\u003d\"theStart\" /\u003e\n \u003csequenceFlow id\u003d\"flow1\" sourceRef\u003d\"theStart\" targetRef\u003d\"theEnd\" /\u003e\n \u003cendEvent id\u003d\"theEnd\" /\u003e\n \u003c/process\u003e\n \u003c/definitions\u003e"
}
}
}
}
},
"description": "Request successful."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The Process Definition xml cannot be retrieved due to missing permissions on the Process Definition resource.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/statistics": {
"get": {
"operationId": "getProcessDefinitionStatistics",
"tags": [
"Process Definition"
],
"summary": "Get Process Instance Statistics",
"description": "Retrieves runtime statistics of the process engine, grouped by process definitions.\nThese statistics include the number of running process instances, optionally the number of failed jobs\nand also optionally the number of incidents either grouped by incident types or\nfor a specific incident type.\n**Note**: This does not include historic data.",
"parameters": [
{
"name": "failedJobs",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Whether to include the number of failed jobs in the result or not. Valid values are `true` or `false`."
},
{
"name": "incidents",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Valid values for this property are `true` or `false`.\nIf this property has been set to `true` the result will include the corresponding number of incidents\nfor each occurred incident type.\nIf it is set to `false`, the incidents will not be included in the result.\nCannot be used in combination with `incidentsForType`."
},
{
"name": "incidentsForType",
"in": "query",
"schema": {
"type": "string"
},
"description": "If this property has been set with any incident type (i.e., a string value) the result\nwill only include the number of incidents for the assigned incident type.\nCannot be used in combination with `incidents`.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types)\nfor a list of incident types."
},
{
"name": "rootIncidents",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Valid values for this property are `true` or `false`.\nIf this property has been set to `true` the result will include the corresponding number of\nroot incidents for each occurred incident type.\nIf it is set to `false`, the incidents will not be included in the result.\nCannot be used in combination with `incidentsForType` or `incidents`."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessDefinitionStatisticsResultDto"
}
},
"examples": {
"example-1": {
"summary": "GET /process-definition/statistics?failedJobs\u003dtrue",
"description": "Request with Query Parameter `failedJobs\u003dtrue`",
"value": [
{
"id": "aProcessDefinitionId",
"instances": 123,
"failedJobs": 42,
"definition": {
"id": "aProcessDefinitionId",
"key": "aKey",
"category": null,
"description": null,
"name": "aName",
"version": 0,
"resource": null,
"deploymentId": null,
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": "1.0.0",
"historyTimeToLive": null,
"startableInTasklist": false
},
"incidents": []
},
{
"id": "aProcessDefinitionId:2",
"instances": 124,
"failedJobs": 43,
"definition": {
"id": "aProcessDefinitionId:2",
"key": "aKey",
"category": null,
"description": null,
"name": "aName",
"version": 0,
"resource": null,
"deploymentId": null,
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": null,
"historyTimeToLive": null,
"startableInTasklist": false
},
"incidents": []
}
]
},
"example-2": {
"summary": "GET /process-definition/statistics?incidents\u003dtrue",
"description": "Request with Query Parameter `incidents\u003dtrue`",
"value": [
{
"id": "aProcessDefinitionId",
"instances": 123,
"failedJobs": 0,
"definition": {
"id": "aProcessDefinitionId",
"key": "aKey",
"category": null,
"description": null,
"name": "aName",
"version": 0,
"resource": null,
"deploymentId": null,
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": "1.0.0",
"historyTimeToLive": null,
"startableInTasklist": false
},
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 42
},
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
},
{
"id": "aProcessDefinitionId:2",
"instances": 124,
"failedJobs": 0,
"definition": {
"id": "aProcessDefinitionId:2",
"key": "aKey",
"category": null,
"description": null,
"name": "aName",
"version": 0,
"resource": null,
"deploymentId": null,
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": null,
"historyTimeToLive": null,
"startableInTasklist": false
},
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 43
},
{
"incidentType": "anIncident",
"incidentCount": 22
},
{
"incidentType": "anotherIncident",
"incidentCount": 15
}
]
}
]
},
"example-3": {
"summary": "GET /process-definition/statistics?incidentsForType\u003danIncident",
"description": "Request with Query Parameter `incidentsForType\u003danIncident`",
"value": [
{
"id": "aProcessDefinitionId",
"instances": 123,
"failedJobs": 0,
"definition": {
"id": "aProcessDefinitionId",
"key": "aKey",
"category": null,
"description": null,
"name": "aName",
"version": 0,
"resource": null,
"deploymentId": null,
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": "1.0.0",
"historyTimeToLive": null,
"startableInTasklist": false
},
"incidents": [
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
}
]
},
"example-4": {
"summary": "GET /process-definition/statistics?rootIncidents\u003dtrue",
"description": "Request with Query Parameter `rootIncidents\u003dtrue`",
"value": [
{
"id": "aProcessDefinitionId",
"instances": 123,
"failedJobs": 0,
"definition": {
"id": "aProcessDefinitionId",
"key": "aKey",
"category": null,
"description": null,
"name": "aName",
"version": 0,
"resource": null,
"deploymentId": null,
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": "1.0.0",
"historyTimeToLive": null,
"startableInTasklist": false
},
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 62
},
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/suspended": {
"put": {
"operationId": "updateProcessDefinitionSuspensionState",
"tags": [
"Process Definition"
],
"summary": "Activate/Suspend By Key",
"description": "Activates or suspends process definitions with the given process definition key.",
"requestBody": {
"description": "**Note**: Unallowed property is `processDefinitionId`.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionSuspensionStateDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-definition/suspended`",
"value": {
"processDefinitionKey": "aProcessDefinitionKey",
"suspended": true,
"includeProcessInstances": true,
"executionDate": "2013-11-21T10:49:45T14:42:45"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid,\nfor example if the provided `executionDate` parameter doesn\u0027t have the expected format or\nif the `processDefinitionKey` parameter is `null`. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}": {
"delete": {
"operationId": "deleteProcessDefinition",
"tags": [
"Process Definition"
],
"summary": "Delete",
"description": "Deletes a running process instance by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to be deleted."
},
{
"name": "cascade",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "`true`, if all process instances, historic process instances and jobs\nfor this process definition should be deleted."
},
{
"name": "skipCustomListeners",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "`true`, if only the built-in ExecutionListeners should be notified with the end event."
},
{
"name": "skipIoMappings",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "A boolean value to control whether input/output mappings should be executed during deletion.\n`true`, if input/output mappings should not be invoked."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Not found\nProcess definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"get": {
"operationId": "getProcessDefinition",
"tags": [
"Process Definition"
],
"summary": "Get",
"description": "Retrieves a process definition according to the `ProcessDefinition` interface in the engine.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionDto"
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"description": "Response of GET `/process-definition/invoice:1:c3a63aaa-2046-11e7-8f94-34f39ab71d4e`",
"value": {
"id": "invoice:1:c3a63aaa-2046-11e7-8f94-34f39ab71d4e",
"key": "invoice",
"category": "http://www.omg.org/spec/BPMN/20100524/MODEL",
"description": null,
"name": "Invoice Receipt",
"version": 1,
"resource": "invoice.v1.bpmn",
"deploymentId": "c398cd26-2046-11e7-8f94-34f39ab71d4e",
"diagram": null,
"suspended": false,
"tenantId": null,
"versionTag": null,
"historyTimeToLive": 5,
"startableInTasklist": true
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given `id` does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/deployed-start-form": {
"get": {
"operationId": "getDeployedStartForm",
"tags": [
"Process Definition"
],
"summary": "Get Deployed Start Form",
"description": "Retrieves the deployed form that can be referenced from a start event.\nFor further information please refer to [User Guide](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#embedded-task-forms).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to get the deployed start form for."
}
],
"responses": {
"200": {
"content": {
"application/xhtml+xml": {
"schema": {
"type": "string",
"format": "binary",
"description": "For `application/xhtml+xml` Responses, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "Resonse for GET `/process-definition/processDefinitionId/deployed-start-form`",
"value": "\u003cform role\u003d\"form\" name\u003d\"invoiceForm\"\n class\u003d\"form-horizontal\"\u003e\n\n \u003cdiv class\u003d\"form-group\"\u003e\n \u003clabel class\u003d\"control-label col-md-4\"\n for\u003d\"creditor\"\u003eCreditor\u003c/label\u003e\n \u003cdiv class\u003d\"col-md-8\"\u003e\n \u003cinput cam-variable-name\u003d\"creditor\"\n cam-variable-type\u003d\"String\"\n id\u003d\"creditor\"\n class\u003d\"form-control\"\n type\u003d\"text\"\n required /\u003e\n \u003cdiv class\u003d\"help\"\u003e\n (e.g. \u0026quot;Great Pizza for Everyone Inc.\u0026quot;)\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c/form\u003e"
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The form key has wrong format. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The deployed start form cannot be retrieved due to missing permissions on process definition resource.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "No deployed start form for a given process definition exists. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/diagram": {
"get": {
"operationId": "getProcessDefinitionDiagram",
"tags": [
"Process Definition"
],
"summary": "Get Diagram",
"description": "Retrieves the diagram of a process definition.\n\nIf the process definition\u0027s deployment contains an image resource with the same file name\nas the process definition, the deployed image will be returned by the Get Diagram endpoint.\nExample: `someProcess.bpmn` and `someProcess.png`.\nSupported file extentions for the image are: `svg`, `png`, `jpg`, and `gif`.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition."
}
],
"responses": {
"200": {
"description": "Request successful. The image diagram of this process.",
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary",
"description": "defaults to `application/octet-stream` if the file suffix is unknown"
}
},
"*/*": {
"schema": {
"type": "string",
"format": "binary",
"description": "Files with MIME type information image/png, image/gif, ... "
}
}
}
},
"204": {
"description": "The process definition doesn\u0027t have an associated diagram."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/form-variables": {
"get": {
"operationId": "getStartFormVariables",
"tags": [
"Process Definition"
],
"summary": "Get Start Form Variables",
"description": "Retrieves the start form variables for a process definition\n(only if they are defined via the \n[Generated Task Form](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms) approach).\nThe start form variables take form data specified on the start event into account.\nIf form fields are defined, the variable types and default values\nof the form fields are taken into account.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to retrieve the variables for."
},
{
"name": "variableNames",
"in": "query",
"schema": {
"type": "string"
},
"description": "A comma-separated list of variable names. Allows restricting the list of requested\nvariables to the variable names in the list. It is best practice to restrict the\nlist of variables to the variables actually required by the form in order to\nminimize fetching of data. If the query parameter is ommitted all variables are\nfetched. If the query parameter contains non-existent variable names, the variable\nnames are ignored."
},
{
"name": "deserializeValues",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store\ncustom Java objects) should be deserialized on server side (default true).\n\nIf set to true, a serializable variable will be deserialized on server side and\ntransformed to JSON using [Jackson\u0027s](http://jackson.codehaus.org/) POJO/bean\nproperty introspection feature. Note that this requires the Java classes of the\nvariable value to be on the REST API\u0027s classpath.\n\nIf set to false, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string\ncontaining XML.\n\n**Note**: While true is the default value for reasons of backward compatibility, we\nrecommend setting this parameter to false when developing web applications that are\nindependent of the Java process applications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "GET `/task/anId/form-variables`",
"value": {
"amount": {
"type": "integer",
"value": 5,
"valueInfo": {}
},
"firstName": {
"type": "String",
"value": "Jonny",
"valueInfo": {}
}
}
}
}
}
},
"description": "Request successful. A JSON object containing a property for each variable returned."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The id is null or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/history-time-to-live": {
"put": {
"operationId": "updateHistoryTimeToLiveByProcessDefinitionId",
"tags": [
"Process Definition"
],
"summary": "Update History Time to Live",
"description": "Updates history time to live for process definition.\nThe field is used within [History cleanup](https://docs.camunda.org/manual/7.13/user-guide/process-engine/history/#history-cleanup).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to change history time to live."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HistoryTimeToLiveDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-definition/aProcessDefinitionId/history-time-to-live`",
"value": {
"historyTimeToLive": 5
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the request parameters are invalid. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/rendered-form": {
"get": {
"operationId": "getRenderedStartForm",
"tags": [
"Process Definition"
],
"summary": "Get Rendered Start Form",
"description": "Retrieves the rendered form for a process definition.\nThis method can be used to get the HTML rendering of a\n[Generated Task Form](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to get the rendered start form for."
}
],
"responses": {
"200": {
"content": {
"application/xhtml+xml": {
"schema": {
"type": "string",
"format": "binary",
"description": "For `application/xhtml+xml` Responses, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "A `/process-definition/anId/rendered-form` HTML\n GET response body providing the rendered (generated) form content.",
"value": "\u003cform class\u003d\"form-horizontal\"\u003e\n \u003cdiv class\u003d\"control-group\"\u003e\n \u003clabel class\u003d\"control-label\"\u003eCustomer ID\u003c/label\u003e\n \u003cdiv class\u003d\"controls\"\u003e\n \u003cinput form-field type\u003d\"string\" name\u003d\"customerId\"\u003e\u003c/input\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class\u003d\"control-group\"\u003e\n \u003clabel class\u003d\"control-label\"\u003eAmount\u003c/label\u003e\n \u003cdiv class\u003d\"controls\"\u003e\n \u003cinput form-field type\u003d\"number\" name\u003d\"amount\"\u003e\u003c/input\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/form\u003e"
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition has no form field metadata defined. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/restart": {
"post": {
"operationId": "restartProcessInstance",
"tags": [
"Process Definition"
],
"summary": "Restart Process Instance",
"description": "Restarts process instances that were canceled or terminated synchronously.\nCan also restart completed process instances.\nIt will create a new instance using the original instance information.\nTo execute the restart asynchronously, use the\n[Restart Process Instance Async](https://docs.camunda.org/manual/7.13/reference/rest/process-definition/post-restart-process-instance-async/) method.\n\nFor more information about the difference between synchronous and asynchronous execution,\nplease refer to the related section of the\n[User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/process-instance-restart/#execution).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition of the process instances to restart."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RestartProcessInstanceDto"
},
"examples": {
"example-1": {
"summary": "Restarting one or more Process Instances with known processInstanceIds",
"value": {
"instructions": [
{
"type": "startAfterActivity",
"activityId": "aUserTask"
}
],
"processInstanceIds": [
"aProcessInstance",
"anotherProcessInstance"
],
"initialVariables": true,
"skipCustomListeners": true,
"withoutBusinessKey": true
}
},
"example-2": {
"summary": "Restarting one or more Process Instances using a historicProcessInstanceQuery",
"value": {
"instructions": [
{
"type": "startAfterActivity",
"activityId": "aUserTask"
}
],
"historicProcessInstanceQuery": {
"processDefinitionId": "aProcessDefinitionId",
"processInstanceBusinessKey": "businessKey"
},
"initialVariables": true,
"skipCustomListeners": true,
"withoutBusinessKey": true
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "In case following parameters are missing: `instructions`, `activityId` or `transitionId`,\n`processInstanceIds` or `historicProcessInstanceQuery`, an exception of type `InvalidRequestException` is returned. \nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/restart-async": {
"post": {
"operationId": "restartProcessInstanceAsyncOperation",
"tags": [
"Process Definition"
],
"summary": "Restart Process Instance Async",
"description": "Restarts process instances that were canceled or terminated asynchronously.\nCan also restart completed process instances.\nIt will create a new instance using the original instance information.\nTo execute the restart asynchronously, use the\n[Restart Process Instance](https://docs.camunda.org/manual/7.13/reference/rest/process-definition/post-restart-process-instance-sync/) method.\n\nFor more information about the difference between synchronous and asynchronous execution,\nplease refer to the related section of the\n[User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/process-instance-restart/#execution).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition of the process instances to restart."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RestartProcessInstanceDto"
},
"examples": {
"example-1": {
"summary": "Restarting one or more Process Instances with known processInstanceIds",
"value": {
"instructions": [
{
"type": "startAfterActivity",
"activityId": "aUserTask"
}
],
"processInstanceIds": [
"aProcessInstance",
"anotherProcessInstance"
],
"initialVariables": true,
"skipCustomListeners": true,
"withoutBusinessKey": true
}
},
"example-2": {
"summary": "Restarting one or more Process Instances using a historicProcessInstanceQuery",
"value": {
"instructions": [
{
"type": "startAfterActivity",
"activityId": "aUserTask"
}
],
"historicProcessInstanceQuery": {
"processDefinitionId": "aProcessDefinitionId",
"processInstanceBusinessKey": "businessKey"
},
"initialVariables": true,
"skipCustomListeners": true,
"withoutBusinessKey": true
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"id": "aBatchId",
"type": "aBatchType",
"totalJobs": 10,
"jobsCreated": 10,
"batchJobsPerSeed": 100,
"invocationsPerBatchJob": 1,
"seedJobDefinitionId": "aSeedJobDefinitionId",
"monitorJobDefinitionId": "aMonitorJobDefinitionId",
"batchJobDefinitionId": "aBatchJobDefinitionId",
"tenantId": "aTenantId",
"suspended": false,
"createUserId": "demo"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "In case following parameters are missing: `instructions`, `activityId` or `transitionId`,\n`processInstanceIds` or `historicProcessInstanceQuery`,\nan exception of type `InvalidRequestException` is returned. \nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/start": {
"post": {
"operationId": "startProcessInstance",
"tags": [
"Process Definition"
],
"summary": "Start Instance",
"description": "Instantiates a given process definition.\nProcess variables and business key may be supplied in the request body.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to be retrieved."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StartProcessInstanceDto"
},
"examples": {
"example-1": {
"summary": "Starting a process instance at its default initial activity",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey"
}
},
"example-2": {
"summary": "Starting a process instance with variables in return",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey",
"withVariablesInReturn": true
}
},
"example-3": {
"summary": "Starting a process instance at two specific activities",
"value": {
"variables": {
"aProcessVariable": {
"value": "aStringValue",
"type": "String"
}
},
"businessKey": "myBusinessKey",
"skipCustomListeners": true,
"startInstructions": [
{
"type": "startBeforeActivity",
"activityId": "activityId",
"variables": {
"var": {
"value": "aVariableValue",
"local": false,
"type": "String"
}
}
},
{
"type": "startAfterActivity",
"activityId": "anotherActivityId",
"variables": {
"varLocal": {
"value": "anotherVariableValue",
"local": true,
"type": "String"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceWithVariablesDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"description": "Response for starting a process instance at its default initial activity",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
},
"example-2": {
"summary": "Status 200 Response 2",
"description": "Response for starting a process instance with variables in return",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/aProcInstId",
"rel": "self"
}
],
"id": "aProcInstId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"ended": false,
"suspended": false,
"tenantId": null,
"variables": {
"anotherVariable": {
"type": "Boolean",
"value": true,
"valueInfo": {
"transient": true
}
},
"aVariable": {
"type": "String",
"value": "aStringValue",
"valueInfo": {}
}
}
}
},
"example-3": {
"summary": "Status 200 Response 3",
"description": "Response for starting a process instance at two specific activities",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created due to an invalid variable value,\nfor example if the value could not be parsed to an `Integer` value or\nthe passed variable type is not supported.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created successfully.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/startForm": {
"get": {
"operationId": "getStartForm",
"tags": [
"Process Definition"
],
"summary": "Get Start Form Key",
"description": "Retrieves the key of the start form for a process definition.\nThe form key corresponds to the `FormData#formKey` property in the engine.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to get the start form key for."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FormDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "GET `process-definition/anId/startForm`",
"value": {
"key": "aFormKey",
"contextPath": "http://localhost:8080/my-process-application/"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition has no start form defined. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/statistics": {
"get": {
"operationId": "getActivityStatistics",
"tags": [
"Process Definition"
],
"summary": "Get Activity Instance Statistics",
"description": "Retrieves runtime statistics of a given process definition, grouped by activities.\nThese statistics include the number of running activity instances, optionally the number of failed jobs\nand also optionally the number of incidents either grouped by incident types or for a specific incident type.\n**Note**: This does not include historic data.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition."
},
{
"name": "failedJobs",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Whether to include the number of failed jobs in the result or not. Valid values are `true` or `false`."
},
{
"name": "incidents",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Valid values for this property are `true` or `false`.\nIf this property has been set to `true` the result will include the corresponding number of incidents\nfor each occurred incident type.\nIf it is set to `false`, the incidents will not be included in the result.\nCannot be used in combination with `incidentsForType`."
},
{
"name": "incidentsForType",
"in": "query",
"schema": {
"type": "string"
},
"description": "If this property has been set with any incident type (i.e., a string value) the result\nwill only include the number of incidents for the assigned incident type.\nCannot be used in combination with `incidents`.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types)\nfor a list of incident types."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActivityStatisticsResultDto"
}
},
"examples": {
"example-1": {
"summary": "GET /process-definition/aProcessDefinitionId/statistics?failedJobs\u003dtrue",
"description": "Request with Query Parameter `failedJobs\u003dtrue`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 42,
"incidents": []
},
{
"id": "anotherActivity",
"instances": 124,
"failedJobs": 43,
"incidents": []
}
]
},
"example-2": {
"summary": "GET /process-definition/aProcessDefinitionId/statistics?incidents\u003dtrue",
"description": "Request with Query Parameter `incidents\u003dtrue`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 0,
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 42
},
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
},
{
"id": "anotherActivity",
"instances": 124,
"failedJobs": 0,
"incidents": [
{
"incidentType": "failedJob",
"incidentCount": 43
},
{
"incidentType": "anIncident",
"incidentCount": 22
},
{
"incidentType": "anotherIncident",
"incidentCount": 15
}
]
}
]
},
"example-3": {
"summary": "GET /process-definition/aProcessDefinitionId/statistics?incidentsForType\u003danIncident",
"description": "Request with Query Parameter `incidentsForType\u003danIncident`",
"value": [
{
"id": "anActivity",
"instances": 123,
"failedJobs": 0,
"incidents": [
{
"incidentType": "anIncident",
"incidentCount": 20
}
]
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/submit-form": {
"post": {
"operationId": "submitForm",
"tags": [
"Process Definition"
],
"summary": "Submit Start Form",
"description": "Starts a process instance using a set of process variables and the business key.\nIf the start event has Form Field Metadata defined, the process engine will perform backend validation\nfor any form fields which have validators defined.\nSee [Documentation on Generated Task Forms](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to submit the form for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StartProcessInstanceFormDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-definition/aProcessDefinitionId/submit-form`",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
},
"businessKey": "myBusinessKey"
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"description": "POST `/process-definition/aProcessDefinitionId/submit-form`",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:8080/rest-test/process-instance/anId",
"rel": "self"
}
],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "myBusinessKey",
"caseInstanceId": null,
"tenantId": null,
"ended": false,
"suspended": false
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created due to an invalid variable value,\nfor example if the value could not be parsed to an `Integer` value or\nthe passed variable type is not supported.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The instance could not be created successfully.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/suspended": {
"put": {
"operationId": "updateProcessDefinitionSuspensionStateById",
"tags": [
"Process Definition"
],
"summary": "Activate/Suspend By Id",
"description": "Activates or suspends a given process definition by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition to activate or suspend."
}
],
"requestBody": {
"description": "**Note**: Unallowed properties are `processDefinitionId` and `processDefinitionKey`.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionSuspensionStateDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-definition/aProcessDefinitionId/suspended`",
"value": {
"suspended": true,
"includeProcessInstances": true,
"executionDate": "2013-11-21T10:49:45T14:42:45"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid,\nfor example if the provided `executionDate` parameter doesn\u0027t have the expected format or\nif the `processDefinitionKey` parameter is `null`. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given key does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-definition/{id}/xml": {
"get": {
"operationId": "getProcessDefinitionBpmn20Xml",
"tags": [
"Process Definition"
],
"summary": "Get XML",
"description": "Retrieves the BPMN 2.0 XML of a process definition.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process definition."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessDefinitionDiagramDto"
},
"examples": {
"example-1": {
"summary": "GET `/process-definition/id/aProcessDefinitionId/xml`",
"value": {
"id": "anProcessDefinitionId",
"bpmn20Xml": "\u003c?xml version\u003d\"1.0\" encoding\u003d\"UTF-8\"?\u003e\n\u003cdefinitions\n xmlns\u003d\"http://www.omg.org/spec/BPMN/20100524/MODEL\"\n xmlns:camunda\u003d\"http://camunda.org/schema/1.0/bpmn\"\n targetNamespace\u003d\"Examples\"\u003e\n \u003cprocess id\u003d\"oneTaskProcess\" isExecutable\u003d\"true\"\u003e\n \u003cstartEvent id\u003d\"theStart\" /\u003e\n \u003csequenceFlow id\u003d\"flow1\" sourceRef\u003d\"theStart\" targetRef\u003d\"theEnd\" /\u003e\n \u003cendEvent id\u003d\"theEnd\" /\u003e\n \u003c/process\u003e\n \u003c/definitions\u003e"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The Process Definition xml cannot be retrieved due to missing permissions on the Process Definition resource.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process definition with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/process-instance": {
"get": {
"operationId": "getProcessInstances",
"tags": [
"Process Instance"
],
"description": "Queries for process instances that fulfill given parameters.\nParameters may be static as well as dynamic runtime properties of process instances.\nThe size of the result set can be retrieved by using the Get Instance Count method.",
"parameters": [
{
"name": "sortBy",
"in": "query",
"schema": {
"enum": [
"instanceId",
"definitionKey",
"definitionId",
"tenantId",
"businessKey"
],
"type": "string"
},
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
{
"name": "sortOrder",
"in": "query",
"schema": {
"enum": [
"asc",
"desc"
],
"type": "string"
},
"description": "Sort the results in a given order. Values may be asc for ascending order or desc for descending order.\nMust be used in conjunction with the sortBy parameter."
},
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
},
{
"name": "processInstanceIds",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process instance ids."
},
{
"name": "businessKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process instance business key."
},
{
"name": "businessKeyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process instance business key that the parameter is a substring of."
},
{
"name": "caseInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by case instance id."
},
{
"name": "processDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment the id belongs to."
},
{
"name": "processDefinitionKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the key of the process definition the instances run on."
},
{
"name": "processDefinitionKeyIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process definition keys.\nA process instance must have one of the given process definition keys."
},
{
"name": "processDefinitionKeyNotIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Exclude instances by a comma-separated list of process definition keys.\nA process instance must not have one of the given process definition keys."
},
{
"name": "deploymentId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment the id belongs to."
},
{
"name": "superProcessInstance",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all process instances that are sub process instances of the given process instance.\nTakes a process instance id."
},
{
"name": "subProcessInstance",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all process instances that have the given process instance as a sub process instance.\nTakes a process instance id."
},
{
"name": "superCaseInstance",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all process instances that are sub process instances of the given case instance.\nTakes a case instance id."
},
{
"name": "subCaseInstance",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all process instances that have the given case instance as a sub case instance.\nTakes a case instance id."
},
{
"name": "active",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include active process instances. Value may only be true,\nas false is the default behavior."
},
{
"name": "suspended",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include suspended process instances. Value may only be true,\nas false is the default behavior."
},
{
"name": "withIncident",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Filter by presence of incidents. Selects only process instances that have an incident."
},
{
"name": "incidentId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident id."
},
{
"name": "incidentType",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident type.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types)\nfor a list of incident types."
},
{
"name": "incidentMessage",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident message. Exact match."
},
{
"name": "incidentMessageLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident message that the parameter is a substring of."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids. A process instance must have one of the given tenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include process instances which belong to no tenant."
},
{
"name": "processDefinitionWithoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include process instances which process definition has no tenant id."
},
{
"name": "activityIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of activity ids.\nA process instance must currently wait in a leaf activity with one of the given activity ids."
},
{
"name": "rootProcessInstances",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Restrict the query to all process instances that are top level process instances."
},
{
"name": "leafProcessInstances",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Restrict the query to all process instances that are leaf instances. (i.e. don\u0027t have any sub instances)."
},
{
"name": "variables",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include process instances that have variables with certain values.\nVariable filtering expressions are comma-separated and are structured as follows:\n\nA valid parameter value has the form `key_operator_value`. `key` is the variable name,\n`operator` is the comparison operator to be used and `value` the variable value.\n\n**Note**: Values are always treated as String objects on server side.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
{
"name": "variableNamesIgnoreCase",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Match all variable names in this query case-insensitively.\nIf set to true variableName and variablename are treated as equal."
},
{
"name": "variableValuesIgnoreCase",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Match all variable values in this query case-insensitively.\nIf set to true variableValue and variablevalue are treated as equal."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessInstanceDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"description": "Response for GET `/process-instance?variables\u003dmyVariable_eq_camunda,mySecondVariable_neq_aBadValue`",
"value": [
{
"links": [],
"id": "anId",
"definitionId": "aProcDefId",
"businessKey": "aKey",
"caseInstanceId": "aCaseInstanceId",
"ended": false,
"suspended": false,
"tenantId": null
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid,\nfor example if a sortOrder parameter is supplied, but no sortBy, or if an invalid operator for variable comparison is used."
}
}
},
"post": {
"operationId": "queryProcessInstances",
"tags": [
"Process Instance"
],
"description": "Queries for process instances that fulfill given parameters through a JSON object.\nThis method is slightly more powerful than the Get Instances method because\nit allows filtering by multiple process variables of types `string`, `number` or `boolean`.",
"parameters": [
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceQueryDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance` Request Body 1",
"value": {
"variables": [
{
"name": "myVariable",
"operator": "eq",
"value": "camunda"
},
{
"name": "mySecondVariable",
"operator": "neq",
"value": 124
}
],
"processDefinitionId": "aProcessDefinitionId",
"sorting": [
{
"sortBy": "definitionKey",
"sortOrder": "asc"
},
{
"sortBy": "instanceId",
"sortOrder": "desc"
}
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessInstanceDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"value": [
{
"links": [],
"id": "anId",
"definitionId": "aProcessDefinitionId",
"businessKey": "aKey",
"caseInstanceId": "aCaseInstanceId",
"ended": false,
"suspended": false,
"tenantId": null
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid,\nfor example if a sortOrder parameter is supplied, but no sortBy, or if an invalid operator for variable comparison is used."
}
}
}
},
"/process-instance/count": {
"get": {
"operationId": "getProcessInstancesCount",
"tags": [
"Process Instance"
],
"description": "Queries for the number of process instances that fulfill given parameters.",
"parameters": [
{
"name": "processInstanceIds",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process instance ids."
},
{
"name": "businessKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process instance business key."
},
{
"name": "businessKeyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by process instance business key that the parameter is a substring of."
},
{
"name": "caseInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by case instance id."
},
{
"name": "processDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment the id belongs to."
},
{
"name": "processDefinitionKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the key of the process definition the instances run on."
},
{
"name": "processDefinitionKeyIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of process definition keys.\nA process instance must have one of the given process definition keys."
},
{
"name": "processDefinitionKeyNotIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Exclude instances by a comma-separated list of process definition keys.\nA process instance must not have one of the given process definition keys."
},
{
"name": "deploymentId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the deployment the id belongs to."
},
{
"name": "superProcessInstance",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all process instances that are sub process instances of the given process instance.\nTakes a process instance id."
},
{
"name": "subProcessInstance",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all process instances that have the given process instance as a sub process instance.\nTakes a process instance id."
},
{
"name": "superCaseInstance",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all process instances that are sub process instances of the given case instance.\nTakes a case instance id."
},
{
"name": "subCaseInstance",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all process instances that have the given case instance as a sub case instance.\nTakes a case instance id."
},
{
"name": "active",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include active process instances. Value may only be true,\nas false is the default behavior."
},
{
"name": "suspended",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include suspended process instances. Value may only be true,\nas false is the default behavior."
},
{
"name": "withIncident",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Filter by presence of incidents. Selects only process instances that have an incident."
},
{
"name": "incidentId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident id."
},
{
"name": "incidentType",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident type.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types)\nfor a list of incident types."
},
{
"name": "incidentMessage",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident message. Exact match."
},
{
"name": "incidentMessageLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the incident message that the parameter is a substring of."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids. A process instance must have one of the given tenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include process instances which belong to no tenant."
},
{
"name": "processDefinitionWithoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include process instances which process definition has no tenant id."
},
{
"name": "activityIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by a comma-separated list of activity ids.\nA process instance must currently wait in a leaf activity with one of the given activity ids."
},
{
"name": "rootProcessInstances",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Restrict the query to all process instances that are top level process instances."
},
{
"name": "leafProcessInstances",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Restrict the query to all process instances that are leaf instances. (i.e. don\u0027t have any sub instances)."
},
{
"name": "variables",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include process instances that have variables with certain values.\nVariable filtering expressions are comma-separated and are structured as follows:\n\nA valid parameter value has the form `key_operator_value`. `key` is the variable name,\n`operator` is the comparison operator to be used and `value` the variable value.\n\n**Note**: Values are always treated as String objects on server side.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
{
"name": "variableNamesIgnoreCase",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Match all variable names in this query case-insensitively.\nIf set to true variableName and variablename are treated as equal."
},
{
"name": "variableValuesIgnoreCase",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Match all variable values in this query case-insensitively.\nIf set to true variableValue and variablevalue are treated as equal."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"description": "Response for GET `/process-instance/count?variables\u003dmyVariable_eq_camunda`",
"value": {
"count": 1
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid, for example an invalid operator for variable comparison is used."
}
}
},
"post": {
"operationId": "queryProcessInstancesCount",
"tags": [
"Process Instance"
],
"description": "Queries for the number of process instances that fulfill the given parameters.\nThis method takes the same message body as the Get Instances (POST) method and\ntherefore it is slightly more powerful than the Get Instance Count method.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceQueryDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/count` Request Body 1",
"value": {
"variables": [
{
"name": "myVariable",
"operator": "eq",
"value": "camunda"
},
{
"name": "mySecondVariable",
"operator": "neq",
"value": 124
}
],
"processDefinitionId": "aProcessDefinitionId"
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"value": {
"count": 1
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid, for example if an invalid operator for variable comparison is used."
}
}
}
},
"/process-instance/delete": {
"post": {
"operationId": "deleteProcessInstancesAsyncOperation",
"tags": [
"Process Instance"
],
"description": "Deletes multiple process instances asynchronously (batch).",
"requestBody": {
"description": "**Unallowed property**: `historicProcessInstanceQuery`",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeleteProcessInstancesDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/delete` Request Body 1",
"value": {
"deleteReason": "aReason",
"processInstanceIds": [
"aProcess",
"secondProcess"
],
"skipCustomListeners": true,
"skipSubprocesses": true
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"value": {
"id": "aBatchId",
"type": "aBatchType",
"totalJobs": 10,
"jobsCreated": 10,
"batchJobsPerSeed": 100,
"invocationsPerBatchJob": 1,
"seedJobDefinitionId": "aSeedJobDefinitionId",
"monitorJobDefinitionId": "aMonitorJobDefinitionId",
"batchJobDefinitionId": "aBatchJobDefinitionId",
"tenantId": "aTenantId",
"suspended": false,
"createUserId": "demo"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid, i.e., neither processInstanceIds, nor processInstanceQuery is present"
}
}
}
},
"/process-instance/delete-historic-query-based": {
"post": {
"operationId": "deleteAsyncHistoricQueryBased",
"tags": [
"Process Instance"
],
"description": "Deletes a set of process instances asynchronously (batch) based on a historic process instance query.",
"requestBody": {
"description": "**Unallowed property**: `processInstanceQuery`",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeleteProcessInstancesDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/delete-historic-query-based` Request Body 1",
"value": {
"deleteReason": "aReason",
"historicProcessInstanceQuery": {
"startedBefore": "2017-04-28T11:24:37.765+0200"
},
"skipCustomListeners": true,
"skipSubprocesses": true
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response 1",
"value": {
"id": "aBatchId",
"type": "aBatchType",
"totalJobs": 10,
"jobsCreated": 10,
"batchJobsPerSeed": 100,
"invocationsPerBatchJob": 1,
"seedJobDefinitionId": "aSeedJobDefinitionId",
"monitorJobDefinitionId": "aMonitorJobDefinitionId",
"batchJobDefinitionId": "aBatchJobDefinitionId",
"tenantId": "aTenantId",
"suspended": false,
"createUserId": "demo"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid, i.e., neither processInstanceIds, nor historicProcessInstanceQuery is present"
}
}
}
},
"/process-instance/job-retries": {
"post": {
"operationId": "setRetriesByProcess",
"tags": [
"Process Instance"
],
"description": "Create a batch to set retries of jobs associated with given processes asynchronously.",
"requestBody": {
"description": "Please note that if both processInstances and processInstanceQuery are provided,\nthen the resulting execution will be performed on the union of these sets.\n**Unallowed property**: `historicProcessInstanceQuery`",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SetJobRetriesByProcessDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/job-retries` Request Body 1",
"value": {
"retries": 5,
"processInstances": [
"aProcess",
"secondProcess"
],
"processInstanceQuery": {
"processDefinitionId": "aProcessDefinitionId"
}
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchDto"
},
"examples": {
"example-1": {
"value": {
"id": "aBatchId",
"type": "aBatchType",
"totalJobs": 10,
"batchJobsPerSeed": 100,
"jobsCreated": 10,
"invocationsPerBatchJob": 1,
"seedJobDefinitionId": "aSeedJobDefinitionId",
"monitorJobDefinitionId": "aMonitorJobDefinitionId",
"batchJobDefinitionId": "aBatchJobDefinitionId",
"suspended": false,
"tenantId": "aTenantId",
"createUserId": "demo"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid, for example if neither processInstanceIds, nor processInstanceQuery is present.\nOr if the retry count is not specified."
}
}
}
},
"/process-instance/job-retries-historic-query-based": {
"post": {
"operationId": "setRetriesByProcessHistoricQueryBased",
"tags": [
"Process Instance"
],
"description": "Create a batch to set retries of jobs asynchronously based on a historic process instance query.",
"requestBody": {
"description": "Please note that if both processInstances and historicProcessInstanceQuery are provided,\nthen the resulting execution will be performed on the union of these sets.\n**Unallowed property**: `processInstanceQuery`",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SetJobRetriesByProcessDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/job-retries-historic-query-based` Request Body 1",
"value": {
"retries": 5,
"historicProcessInstanceQuery": {
"startedBefore": "2017-04-28T11:24:37.769+0200"
},
"processInstances": [
"aProcess",
"secondProcess"
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"id": "aBatchId",
"type": "aBatchType",
"totalJobs": 10,
"jobsCreated": 10,
"batchJobsPerSeed": 100,
"invocationsPerBatchJob": 1,
"seedJobDefinitionId": "aSeedJobDefinitionId",
"monitorJobDefinitionId": "aMonitorJobDefinitionId",
"batchJobDefinitionId": "aBatchJobDefinitionId",
"tenantId": "aTenantId",
"suspended": false,
"createUserId": "demo"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the query parameters are invalid, for example if neither processInstanceIds, nor historicProcessInstanceQuery is present.\nOr if the retry count is not specified."
}
}
}
},
"/process-instance/suspended": {
"put": {
"operationId": "updateSuspensionState",
"tags": [
"Process Instance"
],
"description": "Activates or suspends process instances by providing certain criteria:\n\n# Activate/Suspend Process Instance By Process Definition Id\n* `suspend`\n* `processDefinitionId`\n\n# Activate/Suspend Process Instance By Process Definition Key\n\n* `suspend`\n* `processDefinitionKey`\n* `processDefinitionTenantId`\n* `processDefinitionWithoutTenantId`\n\n# Activate/Suspend Process Instance In Group\n* `suspend`\n* `processInstanceIds`\n* `processInstanceQuery`\n* `historicProcessInstanceQuery`",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceSuspensionStateDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-instance/suspended`",
"description": "Suspend Process Instance By Process Definition Id",
"value": {
"processDefinitionId": "aProcDefId",
"suspended": true
}
},
"example-2": {
"summary": "PUT `/process-instance/suspended`",
"description": "Suspend Process Instance By Process Definition Key",
"value": {
"processDefinitionKey": "aProcDefKey",
"suspended": true
}
},
"example-3": {
"summary": "PUT `/process-instance/suspended`",
"description": "Suspend Process Instance In Group",
"value": {
"processInstanceIds": [
"processInstanceId1",
"processInstanceIdN"
],
"suspended": true
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the request parameters are invalid,\nfor example if the provided processDefinitionId or processDefinitionKey parameter is null."
}
}
}
},
"/process-instance/suspended-async": {
"post": {
"operationId": "updateSuspensionStateAsyncOperation",
"tags": [
"Process Instance"
],
"description": "Activates or suspends process instances asynchronously with a list of process instance ids,\na process instance query, and/or a historical process instance query.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceSuspensionStateAsyncDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/suspended-async`",
"description": "Suspend Process Instance In Batch",
"value": {
"processInstanceIds": [
"processInstanceId1",
"processInstanceIdN"
],
"suspended": true
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"id": "aBatchId",
"type": "aBatchType",
"totalJobs": 10,
"jobsCreated": 10,
"batchJobsPerSeed": 100,
"invocationsPerBatchJob": 1,
"seedJobDefinitionId": "aSeedJobDefinitionId",
"monitorJobDefinitionId": "aMonitorJobDefinitionId",
"batchJobDefinitionId": "aBatchJobDefinitionId",
"tenantId": "aTenantId",
"suspended": false,
"createUserId": "demo"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nReturned if some of the request parameters are invalid,\nfor example if the provided processDefinitionId or processDefinitionKey parameter is null."
}
}
}
},
"/process-instance/{id}": {
"delete": {
"operationId": "deleteProcessInstance",
"tags": [
"Process Instance"
],
"description": "Deletes a running process instance by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to be deleted."
},
{
"name": "skipCustomListeners",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "If set to true, the custom listeners will be skipped."
},
{
"name": "skipIoMappings",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "If set to true, the input/output mappings will be skipped."
},
{
"name": "skipSubprocesses",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "If set to true, subprocesses related to deleted processes will be skipped."
},
{
"name": "failIfNotExists",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "If set to false, the request will still be successful if the process id is not found."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Not found\nProcess instance with given id does not exist. "
}
}
}
},
"/process-instance/{id}/activity-instances": {
"get": {
"operationId": "getActivityInstanceTree",
"tags": [
"Process Instance"
],
"description": "Retrieves an Activity Instance (Tree) for a given process instance by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance for which the activity instance should be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActivityInstanceDto"
},
"examples": {
"example-1": {
"summary": "GET `/process-instance/aProcessInstanceId/activity-instances`",
"value": {
"id": "eca75c6b-f70c-11e9-8777-e4a7a094a9d6",
"parentActivityInstanceId": null,
"activityId": "invoice:2:e9d77375-f70c-11e9-8777-e4a7a094a9d6",
"activityType": "processDefinition",
"processInstanceId": "eca75c6b-f70c-11e9-8777-e4a7a094a9d6",
"processDefinitionId": "invoice:2:e9d77375-f70c-11e9-8777-e4a7a094a9d6",
"childActivityInstances": [
{
"id": "approveInvoice:eca89509-f70c-11e9-8777-e4a7a094a9d6",
"parentActivityInstanceId": "eca75c6b-f70c-11e9-8777-e4a7a094a9d6",
"activityId": "approveInvoice",
"activityType": "userTask",
"processInstanceId": "eca75c6b-f70c-11e9-8777-e4a7a094a9d6",
"processDefinitionId": "invoice:2:e9d77375-f70c-11e9-8777-e4a7a094a9d6",
"childActivityInstances": [],
"childTransitionInstances": [],
"executionIds": [
"eca75c6b-f70c-11e9-8777-e4a7a094a9d6"
],
"activityName": "Approve Invoice",
"incidentIds": [
"648d7e21-f71c-11e9-a725-e4a7a094a9d6"
],
"incidents": [
{
"id": "648d7e21-f71c-11e9-a725-e4a7a094a9d6",
"activityId": "AttachedTimerBoundaryEvent"
}
]
}
],
"childTransitionInstances": [],
"executionIds": [
"eca75c6b-f70c-11e9-8777-e4a7a094a9d6"
],
"activityName": "Invoice Receipt",
"incidentIds": null,
"incidents": null
}
}
}
}
},
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process instance with given id does not exist."
}
}
}
},
"/process-instance/{id}/modification": {
"post": {
"operationId": "modifyProcessInstance",
"tags": [
"Process Instance"
],
"description": "Submits a list of modification instructions to change a process instance\u0027s execution state.\nA modification instruction is one of the following:\n\n* Starting execution before an activity\n* Starting execution after an activity on its single outgoing sequence flow\n* Starting execution on a specific sequence flow\n* Canceling an activity instance, transition instance, or all instances (activity or transition) for an activity\n\nInstructions are executed immediately and in the order they are provided in this request\u0027s body.\nVariables can be provided with every starting instruction.\n\nThe exact semantics of modification can be read about in the [User guide](https://docs.camunda.org/manual/develop/user-guide/process-engine/process-instance-modification/).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to modify."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceModificationDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/aProcessInstanceId/modification`",
"value": {
"skipCustomListeners": true,
"skipIoMappings": true,
"instructions": [
{
"type": "startBeforeActivity",
"activityId": "activityId",
"variables": {
"var": {
"value": "aVariableValue",
"local": false,
"type": "String"
},
"varLocal": {
"value": "anotherVariableValue",
"local": true,
"type": "String"
}
}
},
{
"type": "cancel",
"activityInstanceId": "anActivityInstanceId"
}
],
"annotation": "Modified to resolve an error."
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "At least one modification instruction misses required parameters."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The modification cannot be performed, for example because it starts a failing activity."
}
}
}
},
"/process-instance/{id}/modification-async": {
"post": {
"operationId": "modifyProcessInstanceAsyncOperation",
"tags": [
"Process Instance"
],
"description": "Submits a list of modification instructions to change a process instance\u0027s execution state async.\nA modification instruction is one of the following:\n\n* Starting execution before an activity\n* Starting execution after an activity on its single outgoing sequence flow\n* Starting execution on a specific sequence flow\n* Cancelling an activity instance, transition instance, or all instances (activity or transition) for an activity\n\nInstructions are executed asynchronous and in the order they are provided in this request\u0027s body.\nVariables can be provided with every starting instruction.\n\nThe exact semantics of modification can be read about in the\n[User guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/process-instance-modification/).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to modify."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProcessInstanceModificationDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/aProcessInstanceId/modification-async`",
"value": {
"skipCustomListeners": true,
"skipIoMappings": true,
"instructions": [
{
"type": "startBeforeActivity",
"activityId": "activityId"
},
{
"type": "cancel",
"activityInstanceId": "anActivityInstanceId"
}
],
"annotation": "Modified to resolve an error."
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BatchDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"id": "aBatchId",
"type": "aBatchType",
"totalJobs": 10,
"jobsCreated": 10,
"batchJobsPerSeed": 100,
"invocationsPerBatchJob": 1,
"seedJobDefinitionId": "aSeedJobDefinitionId",
"monitorJobDefinitionId": "aMonitorJobDefinitionId",
"batchJobDefinitionId": "aBatchJobDefinitionId",
"tenantId": "aTenantId",
"suspended": false,
"createUserId": "demo"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nAt least one modification instruction misses required parameters."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "Forbidden\nIf the user is not allowed to execute batches. See the Introduction for the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The modification cannot be performed, for example because it starts a failing activity."
}
}
}
},
"/process-instance/{id}/suspended": {
"put": {
"operationId": "updateSuspensionStateById",
"tags": [
"Process Instance"
],
"description": "Activates or suspends a given process instance by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to activate or suspend."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SuspensionStateDto"
},
"examples": {
"example-1": {
"summary": "PUT `/process-instance/aProcessInstanceId/suspended`",
"value": {
"suspended": true
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
}
}
}
},
"/process-instance/{id}/variables": {
"get": {
"operationId": "getProcessInstanceVariables",
"tags": [
"Process Instance"
],
"description": "Retrieves all variables of a given process instance by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to retrieve the variables from."
},
{
"name": "deserializeValue",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store custom Java objects)\nshould be deserialized on server side (default true).\n\nIf set to true, a serializable variable will be deserialized on server side and transformed to JSON\nusing [Jackson\u0027s](https://github.com/FasterXML/jackson) POJO/bean property introspection feature.\nNote that this requires the Java classes of the variable value to be on the REST API\u0027s classpath.\n\nIf set to false, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string containing XML.\n\nNote: While true is the default value for reasons of backward compatibility, we recommend setting this parameter to false\nwhen developing web applications that are independent of the Java process applications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "GET `/process-instance/aProcessInstanceId/variables`",
"value": {
"aVariableKey": {
"value": {
"prop1": "a",
"prop2": "b"
},
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
},
"example-2": {
"summary": "GET `/process-instance/aProcessInstanceId/variables?deserializeValue\u003dfalse`",
"value": {
"aVariableKey": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
}
},
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Process instance with given id does not exist."
}
}
},
"post": {
"operationId": "modifyProcessInstanceVariables",
"tags": [
"Process Instance"
],
"description": "Updates or deletes the variables of a process instance by id. Updates precede deletions.\nSo, if a variable is updated AND deleted, the deletion overrides the update.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to set variables for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PatchVariablesDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/aProcessInstanceId/variables`",
"description": "Status 204 Response: No content.",
"value": {
"modifications": {
"aVariable": {
"value": "aValue",
"type": "String"
},
"anotherVariable": {
"value": 42,
"type": "Integer"
}
},
"deletions": [
"aThirdVariable",
"FourthVariable"
]
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nThe variable value or type is invalid, for example if the value could not be parsed to an Integer value or\nthe passed variable type is not supported."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Update or delete could not be executed, for example because the process instance does not exist."
}
}
}
},
"/process-instance/{id}/variables/{varName}": {
"delete": {
"operationId": "deleteProcessInstanceVariable",
"tags": [
"Process Instance"
],
"description": "Deletes a variable of a process instance by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to delete the variable from."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to delete."
}
],
"responses": {
"204": {
"description": "Request successful."
}
}
},
"get": {
"operationId": "getProcessInstanceVariable",
"tags": [
"Process Instance"
],
"description": "Retrieves a variable of a given process instance by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to retrieve the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to retrieve."
},
{
"name": "deserializeValue",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store custom Java objects)\nshould be deserialized on server side (default true).\n\nIf set to true, a serializable variable will be deserialized on server side and transformed to JSON\nusing [Jackson\u0027s](https://github.com/FasterXML/jackson) POJO/bean property introspection feature.\nNote that this requires the Java classes of the variable value to be on the REST API\u0027s classpath.\n\nIf set to false, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string containing XML.\n\nNote: While true is the default value for reasons of backward compatibility, we recommend setting this parameter to false\nwhen developing web applications that are independent of the Java process applications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VariableValueDto"
},
"examples": {
"example-1": {
"summary": "GET `/process-instance/aProcessInstanceId/variables/myObject123`",
"value": {
"value": {
"prop1": "a",
"prop2": "b"
},
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
},
"example-2": {
"summary": "GET `/process-instance/aProcessInstanceId/variables/myObject123?deserializeValue\u003dfalse`",
"value": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nVariable with given id does not exist."
}
}
},
"put": {
"operationId": "setProcessInstanceVariable",
"tags": [
"Process Instance"
],
"description": "Sets a variable of a given process instance by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to set the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to set."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VariableValueDto"
},
"examples": {
"example-1": {
"summary": "PUT /process-instance/aProcessInstanceId/variables/aVarName",
"description": "Status 204. No content.",
"value": {
"value": "someValue",
"type": "String"
}
},
"example-2": {
"summary": "PUT /process-instance/aProcessInstanceId/variables/aVarName",
"description": "Status 204. No content.",
"value": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nThe variable value or type is invalid, for example if the value could not be parsed to an Integer value or\nthe passed variable type is not supported."
}
}
}
},
"/process-instance/{id}/variables/{varName}/data": {
"get": {
"operationId": "getProcessInstanceVariableBinary",
"tags": [
"Process Instance"
],
"description": "Retrieves the content of a Process Variable by the Process Instance id and the Process Variable name.\nApplicable for byte array or file Process Variables.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to retrieve the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to retrieve."
}
],
"responses": {
"200": {
"description": "Request successful.\n For binary variables or files without any MIME type information, a byte stream is returned.\n File variables with MIME type information are returned as the saved type.\n Additionally, for file variables the Content-Disposition header will be set.",
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary",
"description": "For binary variables or files without any MIME type information, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "binary variable: Status 200",
"value": "Content-Type: application/octet-stream"
}
}
},
"text/plain": {
"schema": {
"type": "string",
"format": "binary",
"description": "File variables with MIME type information are returned as the saved type.\n Additionally, for file variables the Content-Disposition header will be set."
},
"examples": {
"example-1": {
"summary": "file variable: Status 200",
"value": "Content-Type: text/plain; charset\u003dUTF-8. Content-Disposition: attachment; filename\u003d\"someFile.txt\""
}
}
}
}
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nA Process Variable with the given id exists but does not serialize as binary data."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Not Found\nA Process Variable with the given id does not exist. "
}
}
},
"post": {
"operationId": "setProcessInstanceVariableBinary",
"tags": [
"Process Instance"
],
"description": "Sets the serialized value for a binary variable or the binary value for a file variable.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the process instance to retrieve the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to retrieve."
}
],
"requestBody": {
"description": "For binary variables a multipart form submit with the following parts:",
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/MultiFormVariableBinaryDto"
},
"examples": {
"example-1": {
"summary": "POST `/process-instance/aProcessInstanceId/variables/aVarName/data` (1)",
"description": "Post binary content of a byte array variable.",
"value": "\n ```\n ------------------------------354ddb6baeff\n Content-Disposition: form-data; name\u003d\"data\"; filename\u003d\"image.png\"\n Content-Type: application/octet-stream\n Content-Transfer-Encoding: binary\n\n \u003c\u003cByte Stream ommitted\u003e\u003e\n ------------------------------354ddb6baeff\n Content-Disposition: form-data; name\u003d\"valueType\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n Bytes\n ------------------------------1e838f8f632a--\n ```\n "
},
"example-2": {
"summary": "POST `/process-instance/aProcessInstanceId/variables/aVarName/data` (2)",
"description": "Post the JSON serialization of a Java Class (**deprecated**).",
"value": "\n ```\n ------------------------------1e838f8f632a\n Content-Disposition: form-data; name\u003d\"type\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n java.util.ArrayList\u003cjava.lang.Object\u003e\n ------------------------------1e838f8f632a\n Content-Disposition: form-data; name\u003d\"data\"\n Content-Type: application/json; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n [\"foo\",\"bar\"]\n ------------------------------1e838f8f632a--\n ```\n "
},
"example-3": {
"summary": "POST `/process-instance/aProcessInstanceId/variables/aVarName/data` (3)",
"description": "Post a text file.",
"value": "\n ```\n ---OSQH1f8lzs83iXFHphqfIuitaQfNKFY74Y\n Content-Disposition: form-data; name\u003d\"data\"; filename\u003d\"myFile.txt\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: binary\n\n \u003c\u003cByte Stream ommitted\u003e\u003e\n ---OSQH1f8lzs83iXFHphqfIuitaQfNKFY74Y\n Content-Disposition: form-data; name\u003d\"valueType\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n File\n ------------------------------1e838f8f632a--\n ```\n "
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request\nThe variable value or type is invalid, for example if no filename is set."
}
}
}
},
"/schema/log": {
"get": {
"operationId": "getSchemaLog",
"tags": [
"Schema Log"
],
"description": "Queries for schema log entries that fulfill given parameters.",
"parameters": [
{
"name": "version",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only return schema log entries with a specific version."
},
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SchemaLogEntryDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "The Response content of a status 200",
"value": [
{
"id": "0",
"version": "7.11.0",
"timestamp": "2019-05-13T09:07:11.751+0200"
},
{
"id": "1",
"version": "7.11.1",
"timestamp": "2019-06-1T17:22:05.123+0200"
}
]
}
}
}
},
"description": "Request successful.\n**Note**: In order to get any results a user of group `camunda-admin` must\nbe authenticated."
}
}
},
"post": {
"operationId": "querySchemaLog",
"tags": [
"Schema Log"
],
"description": "Queries for schema log entries that fulfill given parameters.",
"parameters": [
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SchemaLogQueryDto"
},
"examples": {
"example-1": {
"summary": "POST /schema/log",
"description": "The content of the Request Body",
"value": {
"version": "7.11.0",
"sortBy": "timestamp",
"sortOrder": "asc"
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SchemaLogEntryDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "The Response content of a status 200",
"value": [
{
"id": "0",
"version": "7.11.0",
"timestamp": "2019-05-13T09:07:11.751+0200"
}
]
}
}
}
},
"description": "Request successful.\n**Note**: In order to get any results a user of group camunda-admin must be\nauthenticated."
}
}
}
},
"/signal": {
"post": {
"operationId": "throwSignal",
"tags": [
"Signal"
],
"description": "A signal is an event of global scope (broadcast semantics) and is delivered to all\nactive handlers. Internally this maps to the engine\u0027s signal event received builder\nmethod `RuntimeService#createSignalEvent()`. For more information about the signal\nbehavior, see the [Signal Events](https://docs.camunda.org/manual/7.13/reference/bpmn20/events/signal-events/)\nsection of the [BPMN 2.0 Implementation Reference](https://docs.camunda.org/manual/7.13/reference/bpmn20/).",
"parameters": [],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SignalDto"
},
"examples": {
"examle-1": {
"summary": "POST /signal",
"description": "The content of the Request Body",
"value": {
"name": "policy_conditions_changed",
"variables": {
"newTimePeriodInMonth": {
"value": 24
}
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if:\n\n* no name was given\n* the variable value or type is invalid, for example if the value could not be\nparsed to an integer value or the passed variable type is not supported\n* a tenant id and an execution id is specified.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for the\nerror response format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "Returned if the user is not allowed to throw a signal event.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for the\nerror response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if a single execution is specified and no such execution exists or has not\nsubscribed to the signal.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for the\nerror response format."
}
}
}
},
"/task": {
"get": {
"operationId": "getTasks",
"tags": [
"Task"
],
"description": "Queries for tasks that fulfill a given filter. The size of the result set can be\nretrieved by using the Get Task Count method.\n\n**Security Consideration:** There are several query parameters (such as\nassigneeExpression) for specifying an EL expression. These are disabled by default to\nprevent remote code execution. See the section on\n[security considerations](https://docs.camunda.org/manual/7.13/user-guide/process-engine/securing-custom-code/)\nfor custom code in the user guide for details.",
"parameters": [
{
"name": "processInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given id."
},
{
"name": "processInstanceIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given ids."
},
{
"name": "processInstanceBusinessKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given business key."
},
{
"name": "processInstanceBusinessKeyExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given business key which \nis described by an expression. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions."
},
{
"name": "processInstanceBusinessKeyIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with one of the give business keys. \nThe keys need to be in a comma-separated list."
},
{
"name": "processInstanceBusinessKeyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a process instance business key that has the parameter \nvalue as a substring."
},
{
"name": "processInstanceBusinessKeyLikeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a process instance business key that has the parameter \nvalue as a substring and is described by an expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "processDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with the given id."
},
{
"name": "processDefinitionKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with the given key."
},
{
"name": "processDefinitionKeyIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with one of the given keys. The \nkeys need to be in a comma-separated list."
},
{
"name": "processDefinitionName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with the given name."
},
{
"name": "processDefinitionNameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a process definition name that has the parameter value as \na substring."
},
{
"name": "executionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to an execution with the given id."
},
{
"name": "caseInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to case instances with the given id."
},
{
"name": "caseInstanceBusinessKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to case instances with the given business key."
},
{
"name": "caseInstanceBusinessKeyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a case instance business key that has the parameter value \nas a substring."
},
{
"name": "caseDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a case definition with the given id."
},
{
"name": "caseDefinitionKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a case definition with the given key."
},
{
"name": "caseDefinitionName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a case definition with the given name."
},
{
"name": "caseDefinitionNameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a case definition name that has the parameter value as a \nsubstring."
},
{
"name": "caseExecutionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a case execution with the given id."
},
{
"name": "activityInstanceIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks which belong to one of the passed and comma-separated activity \ninstance ids."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks which belong to one of the passed and comma-separated \ntenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which belong to no tenant. Value may only be `true`, \nas `false` is the default behavior."
},
{
"name": "assignee",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that the given user is assigned to."
},
{
"name": "assigneeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that the user described by the given expression is assigned to. \nSee the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "assigneeLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have an assignee that has the parameter \nvalue as a substring."
},
{
"name": "assigneeLikeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have an assignee that has the parameter value described by the \ngiven expression as a substring. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "assigneeIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks which are assigned to one of the passed and \ncomma-separated user ids."
},
{
"name": "owner",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that the given user owns."
},
{
"name": "ownerExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that the user described by the given expression owns. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "candidateGroup",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that are offered to the given group."
},
{
"name": "candidateGroupExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that are offered to the group described by the given expression. \nSee the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "candidateUser",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that are offered to the given user or to one of his groups."
},
{
"name": "candidateUserExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that are offered to the user described by the given expression. \nSee the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "includeAssignedTasks",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Also include tasks that are assigned to users in candidate queries. Default is to only \ninclude tasks that are not assigned to any user if you query by candidate user or\ngroup(s)."
},
{
"name": "involvedUser",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that the given user is involved in. A user is involved in a task if \nan identity link exists between task and user (e.g., the user is the assignee)."
},
{
"name": "involvedUserExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that the user described by the given expression is involved in.\nA user is involved in a task if an identity link exists between task and user\n(e.g., the user is the assignee). See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions."
},
{
"name": "assigned",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "If set to `true`, restricts the query to all tasks that are assigned."
},
{
"name": "unassigned",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "If set to `true`, restricts the query to all tasks that are unassigned."
},
{
"name": "taskDefinitionKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have the given key."
},
{
"name": "taskDefinitionKeyIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have one of the given keys. The keys need to be in a\ncomma-separated list."
},
{
"name": "taskDefinitionKeyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a key that has the parameter value as a substring."
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have the given name."
},
{
"name": "nameNotEqual",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that do not have the given name."
},
{
"name": "nameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a name with the given parameter value as substring."
},
{
"name": "nameNotLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that do not have a name with the given parameter\nvalue as substring."
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have the given description."
},
{
"name": "descriptionLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a description that has the parameter\nvalue as a substring."
},
{
"name": "priority",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Restrict to tasks that have the given priority."
},
{
"name": "maxPriority",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Restrict to tasks that have a lower or equal priority."
},
{
"name": "minPriority",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Restrict to tasks that have a higher or equal priority."
},
{
"name": "dueDate",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.546+0200`."
},
{
"name": "dueDateExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due on the date described by the given expression. See the\n[User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "dueAfter",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.435+0200`."
},
{
"name": "dueAfterExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due after the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "dueBefore",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.243+0200`."
},
{
"name": "dueBeforeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due before the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "followUpDate",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date\nmust have the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.342+0200`."
},
{
"name": "followUpDateExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date on the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "followUpAfter",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the\ndate must have the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.542+0200`."
},
{
"name": "followUpAfterExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date after the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "followUpBefore",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the\ndate must have the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.234+0200`."
},
{
"name": "followUpBeforeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date before the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "followUpBeforeOrNotExistent",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have no followUp date or a followUp date before the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.432+0200`. The\ntypical use case is to query all `active` tasks for a user for a given date."
},
{
"name": "followUpBeforeOrNotExistentExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have no followUp date or a followUp date before the date\ndescribed by the given expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "createdOn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.324+0200`."
},
{
"name": "createdOnExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created on the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "createdAfter",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.342+0200`."
},
{
"name": "createdAfterExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created after the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "createdBefore",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.332+0200`."
},
{
"name": "createdBeforeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created before the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "delegationState",
"in": "query",
"schema": {
"enum": [
"PENDING",
"RESOLVED"
],
"type": "string"
},
"description": "Restrict to tasks that are in the given delegation state. Valid values are\n`PENDING` and `RESOLVED`."
},
{
"name": "candidateGroups",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are offered to any of the given candidate groups. Takes a\ncomma-separated list of group names, so for example `developers,support,sales`."
},
{
"name": "candidateGroupsExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are offered to any of the candidate groups described by the\ngiven expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to\n`java.util.List` of Strings."
},
{
"name": "withCandidateGroups",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which have a candidate group. Value may only be `true`,\nas `false` is the default behavior."
},
{
"name": "withoutCandidateGroups",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which have no candidate group. Value may only be `true`,\nas `false` is the default behavior."
},
{
"name": "withCandidateUsers",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which have a candidate user. Value may only be `true`,\nas `false` is the default behavior."
},
{
"name": "withoutCandidateUsers",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which have no candidate users. Value may only be `true`,\nas `false` is the default behavior."
},
{
"name": "active",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include active tasks. Value may only be `true`, as `false`\nis the default behavior."
},
{
"name": "suspended",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include suspended tasks. Value may only be `true`, as\n`false` is the default behavior."
},
{
"name": "taskVariables",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that have variables with certain values. Variable filtering\nexpressions are comma-separated and are structured as follows:\n\nA valid parameter value has the form `key_operator_value`. `key` is the variable name,\n`operator` is the comparison operator to be used and `value` the variable value.\n\n**Note**: Values are always treated as String objects on server side.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
{
"name": "processVariables",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that belong to process instances that have variables with certain \nvalues. Variable filtering expressions are comma-separated and are structured as\nfollows:\n\nA valid parameter value has the form `key_operator_value`. `key` is the variable name,\n`operator` is the comparison operator to be used and `value` the variable value.\n\n**Note**: Values are always treated as String objects on server side.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
{
"name": "caseInstanceVariables",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that belong to case instances that have variables with certain\nvalues. Variable filtering expressions are comma-separated and are structured as\nfollows:\n\nA valid parameter value has the form `key_operator_value`. `key` is the variable name,\n`operator` is the comparison operator to be used and `value` the variable value.\n\n**Note**: Values are always treated as String objects on server side.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
{
"name": "variableNamesIgnoreCase",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Match all variable names in this query case-insensitively. If set\n`variableName` and `variablename` are treated as equal."
},
{
"name": "variableValuesIgnoreCase",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Match all variable values in this query case-insensitively. If set\n`variableValue` and `variablevalue` are treated as equal."
},
{
"name": "parentTaskId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all tasks that are sub tasks of the given task. Takes a task id."
},
{
"name": "sortBy",
"in": "query",
"schema": {
"enum": [
"instanceId",
"caseInstanceId",
"dueDate",
"executionId",
"caseExecutionId",
"assignee",
"created",
"description",
"id",
"name",
"nameCaseInsensitive",
"priority",
"processVariable",
"executionVariable",
"taskVariable",
"caseExecutionVariable",
"caseInstanceVariable"
],
"type": "string"
},
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
{
"name": "sortOrder",
"in": "query",
"schema": {
"enum": [
"asc",
"desc"
],
"type": "string"
},
"description": "Sort the results in a given order. Values may be asc for ascending order or desc for descending order.\nMust be used in conjunction with the sortBy parameter."
},
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TaskDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"description": "Response for GET `/task?assignee\u003danAssignee\u0026delegationState\u003dRESOLVED\u0026maxPriority\u003d50`",
"value": [
{
"id": "anId",
"name": "aName",
"assignee": "anAssignee",
"created": "2013-01-23T13:42:42.657+0200",
"due": "2013-01-23T13:49:42.323+0200",
"followUp:": "2013-01-23T13:44:42.987+0200",
"delegationState": "RESOLVED",
"description": "aDescription",
"executionId": "anExecution",
"owner": "anOwner",
"parentTaskId": "aParentId",
"priority": 42,
"processDefinitionId": "aProcDefId",
"processInstanceId": "aProcInstId",
"caseDefinitionId": "aCaseDefId",
"caseInstanceId": "aCaseInstId",
"caseExecutionId": "aCaseExecution",
"taskDefinitionKey": "aTaskDefinitionKey",
"suspended": false,
"formKey": "aFormKey",
"tenantId": "aTenantId"
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid, for example if a `sortOrder`\nparameter is supplied, but no `sortBy`, or if an invalid operator for variable\ncomparison is used. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"post": {
"operationId": "queryTasks",
"tags": [
"Task"
],
"description": "Queries for tasks that fulfill a given filter. This method is slightly more powerful\nthan the [Get Tasks](https://docs.camunda.org/manual/7.13/reference/rest/task/get-query/) method because it\nallows filtering by multiple process or task variables of types `String`, `Number`\nor `Boolean`. The size of the result set can be retrieved by using the\n[Get Task Count (POST)](https://docs.camunda.org/manual/7.13/reference/rest/task/post-query-count/) method.\n\n**Security Consideration**:\nThere are several parameters (such as `assigneeExpression`) for specifying an EL\nexpression. These are disabled by default to prevent remote code execution. See the\nsection on\n[security considerations for custom code](https://docs.camunda.org/manual/7.13/user-guide/process-engine/securing-custom-code/)\nin the user guide for details.",
"parameters": [
{
"name": "firstResult",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the index of the first result to return."
},
{
"name": "maxResults",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Pagination of results. Specifies the maximum number of results to return.\nWill return less results if there are no more results left."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TaskQueryDto"
},
"examples": {
"example-1": {
"summary": "POST `/task` Request Body 1",
"value": {
"taskVariables": [
{
"name": "varName",
"value": "varValue",
"operator": "eq"
},
{
"name": "anotherVarName",
"value": 30,
"operator": "neq"
}
],
"processInstanceBusinessKeyIn": "aBusinessKey,anotherBusinessKey",
"assigneeIn": "anAssignee,anotherAssignee",
"priority": 10,
"sorting": [
{
"sortBy": "dueDate",
"sortOrder": "asc"
},
{
"sortBy": "processVariable",
"sortOrder": "desc",
"parameters": {
"variable": "orderId",
"type": "String"
}
}
]
}
},
"example-2": {
"summary": "POST `/task` Request Body 2",
"description": "Logical query: assignee \u003d \"John Munda\" AND (name \u003d \"Approve Invoice\" OR priority \u003d 5) AND (suspended \u003d false OR taskDefinitionKey \u003d \"approveInvoice\")",
"value": {
"assignee": "John Munda",
"orQueries": [
{
"name": "Approve Invoice",
"priority": 5
},
{
"suspended": false,
"taskDefinitionKey": "approveInvoice"
}
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TaskDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 response 1",
"value": [
{
"id": "anId",
"name": "aName",
"assignee": "anAssignee",
"created": "2013-01-23T13:42:42.453+0200",
"due": "2013-01-23T13:49:42.342+0200",
"followUp:": "2013-01-23T13:44:42.546+0200",
"delegationState": "RESOLVED",
"description": "aDescription",
"executionId": "anExecution",
"owner": "anOwner",
"parentTaskId": "aParentId",
"priority": 10,
"processDefinitionId": "aProcDefId",
"processInstanceId": "aProcInstId",
"caseDefinitionId": "aCaseDefId",
"caseInstanceId": "aCaseInstId",
"caseExecutionId": "aCaseExecution",
"taskDefinitionKey": "aTaskDefinitionKey",
"suspended": false,
"formKey": "aFormKey",
"tenantId": "aTenantId"
}
]
},
"example-2": {
"summary": "Status 200 response 2",
"value": [
{
"id": "349fffa8-6571-11e7-9a44-d6940f5ef88d",
"name": "Approve Invoice",
"assignee": "John Munda",
"created": "2017-07-10T15:10:54.670+0200",
"due": "2017-07-17T15:10:54.670+0200",
"followUp": null,
"delegationState": null,
"description": "Approve the invoice (or not).",
"executionId": "349f8a5c-6571-11e7-9a44-d6940f5ef88d",
"owner": null,
"parentTaskId": null,
"priority": 50,
"processDefinitionId": "invoice:1:2c8d8057-6571-11e7-9a44-d6940f5ef88d",
"processInstanceId": "349f8a5c-6571-11e7-9a44-d6940f5ef88d",
"taskDefinitionKey": "approveInvoice",
"caseExecutionId": null,
"caseInstanceId": null,
"caseDefinitionId": null,
"suspended": false,
"formKey": "embedded:app:develop/invoice-forms/approve-invoice.html",
"tenantId": null
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid, for example if a `sortOrder`\nparameter is supplied, but no `sortBy`, or if an invalid operator for variable\ncomparison is used. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/count": {
"get": {
"operationId": "getTasksCount",
"tags": [
"Task"
],
"description": "Retrieves the number of tasks that fulfill a provided filter. Corresponds to the size\nof the result set when using the [Get Tasks](https://docs.camunda.org/manual/7.13/reference/rest/task/) method.\n\n**Security Consideration:** There are several query parameters (such as\nassigneeExpression) for specifying an EL expression. These are disabled by default to\nprevent remote code execution. See the section on\n[security considerations](https://docs.camunda.org/manual/7.13/user-guide/process-engine/securing-custom-code/)\nfor custom code in the user guide for details.",
"parameters": [
{
"name": "processInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given id."
},
{
"name": "processInstanceIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given ids."
},
{
"name": "processInstanceBusinessKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given business key."
},
{
"name": "processInstanceBusinessKeyExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given business key which \nis described by an expression. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions."
},
{
"name": "processInstanceBusinessKeyIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with one of the give business keys. \nThe keys need to be in a comma-separated list."
},
{
"name": "processInstanceBusinessKeyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a process instance business key that has the parameter \nvalue as a substring."
},
{
"name": "processInstanceBusinessKeyLikeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a process instance business key that has the parameter \nvalue as a substring and is described by an expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "processDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with the given id."
},
{
"name": "processDefinitionKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with the given key."
},
{
"name": "processDefinitionKeyIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with one of the given keys. The \nkeys need to be in a comma-separated list."
},
{
"name": "processDefinitionName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with the given name."
},
{
"name": "processDefinitionNameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a process definition name that has the parameter value as \na substring."
},
{
"name": "executionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to an execution with the given id."
},
{
"name": "caseInstanceId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to case instances with the given id."
},
{
"name": "caseInstanceBusinessKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to case instances with the given business key."
},
{
"name": "caseInstanceBusinessKeyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a case instance business key that has the parameter value \nas a substring."
},
{
"name": "caseDefinitionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a case definition with the given id."
},
{
"name": "caseDefinitionKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a case definition with the given key."
},
{
"name": "caseDefinitionName",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a case definition with the given name."
},
{
"name": "caseDefinitionNameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a case definition name that has the parameter value as a \nsubstring."
},
{
"name": "caseExecutionId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that belong to a case execution with the given id."
},
{
"name": "activityInstanceIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks which belong to one of the passed and comma-separated activity \ninstance ids."
},
{
"name": "tenantIdIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks which belong to one of the passed and comma-separated \ntenant ids."
},
{
"name": "withoutTenantId",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which belong to no tenant. Value may only be `true`, \nas `false` is the default behavior."
},
{
"name": "assignee",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that the given user is assigned to."
},
{
"name": "assigneeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that the user described by the given expression is assigned to. \nSee the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "assigneeLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have an assignee that has the parameter \nvalue as a substring."
},
{
"name": "assigneeLikeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have an assignee that has the parameter value described by the \ngiven expression as a substring. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "assigneeIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks which are assigned to one of the passed and \ncomma-separated user ids."
},
{
"name": "owner",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that the given user owns."
},
{
"name": "ownerExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that the user described by the given expression owns. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "candidateGroup",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that are offered to the given group."
},
{
"name": "candidateGroupExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that are offered to the group described by the given expression. \nSee the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "candidateUser",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that are offered to the given user or to one of his groups."
},
{
"name": "candidateUserExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that are offered to the user described by the given expression. \nSee the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
{
"name": "includeAssignedTasks",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Also include tasks that are assigned to users in candidate queries. Default is to only \ninclude tasks that are not assigned to any user if you query by candidate user or\ngroup(s)."
},
{
"name": "involvedUser",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that the given user is involved in. A user is involved in a task if \nan identity link exists between task and user (e.g., the user is the assignee)."
},
{
"name": "involvedUserExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that the user described by the given expression is involved in.\nA user is involved in a task if an identity link exists between task and user\n(e.g., the user is the assignee). See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions."
},
{
"name": "assigned",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "If set to `true`, restricts the query to all tasks that are assigned."
},
{
"name": "unassigned",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "If set to `true`, restricts the query to all tasks that are unassigned."
},
{
"name": "taskDefinitionKey",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have the given key."
},
{
"name": "taskDefinitionKeyIn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have one of the given keys. The keys need to be in a\ncomma-separated list."
},
{
"name": "taskDefinitionKeyLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a key that has the parameter value as a substring."
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have the given name."
},
{
"name": "nameNotEqual",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that do not have the given name."
},
{
"name": "nameLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a name with the given parameter value as substring."
},
{
"name": "nameNotLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that do not have a name with the given parameter\nvalue as substring."
},
{
"name": "description",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have the given description."
},
{
"name": "descriptionLike",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a description that has the parameter\nvalue as a substring."
},
{
"name": "priority",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Restrict to tasks that have the given priority."
},
{
"name": "maxPriority",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Restrict to tasks that have a lower or equal priority."
},
{
"name": "minPriority",
"in": "query",
"schema": {
"type": "integer"
},
"description": "Restrict to tasks that have a higher or equal priority."
},
{
"name": "dueDate",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.546+0200`."
},
{
"name": "dueDateExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due on the date described by the given expression. See the\n[User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "dueAfter",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.435+0200`."
},
{
"name": "dueAfterExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due after the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "dueBefore",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.243+0200`."
},
{
"name": "dueBeforeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are due before the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "followUpDate",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date\nmust have the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.342+0200`."
},
{
"name": "followUpDateExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date on the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "followUpAfter",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the\ndate must have the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.542+0200`."
},
{
"name": "followUpAfterExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date after the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "followUpBefore",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the\ndate must have the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g.,\n`2013-01-23T14:42:45.234+0200`."
},
{
"name": "followUpBeforeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have a followUp date before the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "followUpBeforeOrNotExistent",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have no followUp date or a followUp date before the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.432+0200`. The\ntypical use case is to query all `active` tasks for a user for a given date."
},
{
"name": "followUpBeforeOrNotExistentExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that have no followUp date or a followUp date before the date\ndescribed by the given expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "createdOn",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.324+0200`."
},
{
"name": "createdOnExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created on the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "createdAfter",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.342+0200`."
},
{
"name": "createdAfterExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created after the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "createdBefore",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the\nformat `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.332+0200`."
},
{
"name": "createdBeforeExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that were created before the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
{
"name": "delegationState",
"in": "query",
"schema": {
"enum": [
"PENDING",
"RESOLVED"
],
"type": "string"
},
"description": "Restrict to tasks that are in the given delegation state. Valid values are\n`PENDING` and `RESOLVED`."
},
{
"name": "candidateGroups",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are offered to any of the given candidate groups. Takes a\ncomma-separated list of group names, so for example `developers,support,sales`."
},
{
"name": "candidateGroupsExpression",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict to tasks that are offered to any of the candidate groups described by the\ngiven expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to\n`java.util.List` of Strings."
},
{
"name": "withCandidateGroups",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which have a candidate group. Value may only be `true`,\nas `false` is the default behavior."
},
{
"name": "withoutCandidateGroups",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which have no candidate group. Value may only be `true`,\nas `false` is the default behavior."
},
{
"name": "withCandidateUsers",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which have a candidate user. Value may only be `true`,\nas `false` is the default behavior."
},
{
"name": "withoutCandidateUsers",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include tasks which have no candidate users. Value may only be `true`,\nas `false` is the default behavior."
},
{
"name": "active",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include active tasks. Value may only be `true`, as `false`\nis the default behavior."
},
{
"name": "suspended",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Only include suspended tasks. Value may only be `true`, as\n`false` is the default behavior."
},
{
"name": "taskVariables",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that have variables with certain values. Variable filtering\nexpressions are comma-separated and are structured as follows:\n\nA valid parameter value has the form `key_operator_value`. `key` is the variable name,\n`operator` is the comparison operator to be used and `value` the variable value.\n\n**Note**: Values are always treated as String objects on server side.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
{
"name": "processVariables",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that belong to process instances that have variables with certain \nvalues. Variable filtering expressions are comma-separated and are structured as\nfollows:\n\nA valid parameter value has the form `key_operator_value`. `key` is the variable name,\n`operator` is the comparison operator to be used and `value` the variable value.\n\n**Note**: Values are always treated as String objects on server side.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
{
"name": "caseInstanceVariables",
"in": "query",
"schema": {
"type": "string"
},
"description": "Only include tasks that belong to case instances that have variables with certain\nvalues. Variable filtering expressions are comma-separated and are structured as\nfollows:\n\nA valid parameter value has the form `key_operator_value`. `key` is the variable name,\n`operator` is the comparison operator to be used and `value` the variable value.\n\n**Note**: Values are always treated as String objects on server side.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
{
"name": "variableNamesIgnoreCase",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Match all variable names in this query case-insensitively. If set\n`variableName` and `variablename` are treated as equal."
},
{
"name": "variableValuesIgnoreCase",
"in": "query",
"schema": {
"default": false,
"type": "boolean"
},
"description": "Match all variable values in this query case-insensitively. If set\n`variableValue` and `variablevalue` are treated as equal."
},
{
"name": "parentTaskId",
"in": "query",
"schema": {
"type": "string"
},
"description": "Restrict query to all tasks that are sub tasks of the given task. Takes a task id."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"value": {
"count": 1
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"post": {
"operationId": "queryTasksCount",
"tags": [
"Task"
],
"description": "Retrieves the number of tasks that fulfill the given filter. Corresponds to the size\nof the result set of the [Get Tasks (POST)](https://docs.camunda.org/manual/7.13/reference/rest/task/post-query/)\nmethod and takes the same parameters.\n\n**Security Consideration**:\nThere are several parameters (such as `assigneeExpression`) for specifying an EL\nexpression. These are disabled by default to prevent remote code execution. See the\nsection on\n[security considerations for custom code](https://docs.camunda.org/manual/7.13/user-guide/process-engine/securing-custom-code/)\nin the user guide for details.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TaskQueryDto"
},
"examples": {
"example-1": {
"summary": "POST `/task` Request Body 1",
"value": {
"taskVariables": [
{
"name": "varName",
"value": "varValue",
"operator": "eq"
},
{
"name": "anotherVarName",
"value": 30,
"operator": "neq"
}
],
"processInstanceBusinessKeyIn": "aBusinessKey,anotherBusinessKey",
"assigneeIn": "anAssignee,anotherAssignee",
"priority": 10,
"sorting": [
{
"sortBy": "dueDate",
"sortOrder": "asc"
},
{
"sortBy": "processVariable",
"sortOrder": "desc",
"parameters": {
"variable": "orderId",
"type": "String"
}
}
]
}
},
"example-2": {
"summary": "POST `/task` Request Body 2",
"description": "Logical query: assignee \u003d \"John Munda\" AND (name \u003d \"Approve Invoice\" OR priority \u003d 5) AND (suspended \u003d false OR taskDefinitionKey \u003d \"approveInvoice\")",
"value": {
"assignee": "John Munda",
"orQueries": [
{
"name": "Approve Invoice",
"priority": 5
},
{
"suspended": false,
"taskDefinitionKey": "approveInvoice"
}
]
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CountResultDto"
},
"examples": {
"example-1": {
"summary": "Status 200 response",
"value": {
"count": 1
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if some of the query parameters are invalid. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/create": {
"post": {
"operationId": "createTask",
"tags": [
"Task"
],
"description": "Creates a new task.",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TaskDto"
},
"examples": {
"example-1": {
"summary": "POST /task/create",
"value": {
"id": "aTaskId",
"name": "My Task",
"description": "This have to be done very urgent",
"priority": 30,
"assignee": "peter",
"owner": "mary",
"delegationState": "PENDING",
"due": "2014-08-30T10:00:00.000+0200",
"followUp": "2014-08-25T10:00:00.000+0200",
"parentTaskId": "aParentTaskId",
"caseInstanceId": "aCaseInstanceId",
"tenantId": null
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if a not valid `delegationState` is supplied. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}": {
"delete": {
"operationId": "deleteTask",
"tags": [
"Task"
],
"description": "Removes a task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to be removed."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Bad Request. The Task with the given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The Task with the given id cannot be deleted because it is part of a running process or case instance.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for\nthe error response format."
}
}
},
"get": {
"operationId": "getTask",
"tags": [
"Task"
],
"description": "Retrieves a task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TaskDto"
},
"examples": {
"example-1": {
"summary": "GET /task/anId Response",
"value": {
"id": "anId",
"name": "aName",
"assignee": "anAssignee",
"created": "2013-01-23T13:42:42.000+0200",
"due": "2013-01-23T13:49:42.576+0200",
"followUp": "2013-01-23T13:44:42.437+0200",
"delegationState": "RESOLVED",
"description": "aDescription",
"executionId": "anExecution",
"owner": "anOwner",
"parentTaskId": "aParentId",
"priority": 42,
"processDefinitionId": "aProcDefId",
"processInstanceId": "aProcInstId",
"caseDefinitionId": "aCaseDefId",
"caseInstanceId": "aCaseInstId",
"caseExecutionId": "aCaseExecution",
"taskDefinitionKey": "aTaskDefinitionKey",
"suspended": false,
"formKey": "aFormKey",
"tenantId": "aTenantId"
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"put": {
"operationId": "updateTask",
"tags": [
"Task"
],
"description": "Updates a task.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to be updated."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TaskDto"
},
"examples": {
"example-1": {
"summary": "PUT /task/aTaskId/ Response",
"value": {
"name": "My Task",
"description": "This have to be done very urgent",
"priority": 30,
"assignee": "peter",
"owner": "mary",
"delegationState": "PENDING",
"due": "2014-08-30T10:00:00.000+0200",
"followUp": "2014-08-25T10:00:00.000+0200",
"parentTaskId": "aParentTaskId",
"caseInstanceId": "aCaseInstanceId",
"tenantId": "tenantId"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if a not valid `delegationState` is supplied. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "If the corresponding task cannot be found."
}
}
}
},
"/task/{id}/assignee": {
"post": {
"operationId": "setAssignee",
"tags": [
"Task"
],
"description": "Changes the assignee of a task to a specific user.\n\n**Note:** The difference with the [Claim Task](https://docs.camunda.org/manual/7.13/reference/rest/task/post-claim/)\nmethod is that this method does not check if the task already has a user\nassigned to it.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to set the assignee for."
}
],
"requestBody": {
"description": "Provide the id of the user that will be the assignee of the task.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserIdDto"
},
"examples": {
"example-1": {
"summary": "Request Body",
"description": "POST `/task/anId/assignee`",
"value": {
"userId": "aUserId"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task with given id does not exist or setting the assignee was not successful.\nSee the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/attachment": {
"get": {
"operationId": "getAttachments",
"tags": [
"Task Attachment"
],
"description": "Gets the attachments for a task.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the attachments for."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AttachmentDto"
}
},
"examples": {
"example-1": {
"summary": "GET /task/aTaskId/attachment",
"value": [
{
"id": "attachmentId",
"name": "attachmentName",
"taskId": "aTaskId",
"description": "attachmentDescription",
"type": "attachmentType",
"url": "http://my-attachment-content-url.de",
"createTime": "2017-02-10T14:33:19.000+0200",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId"
},
{
"id": "anotherAttachmentId",
"name": "anotherAttachmentName",
"taskId": "aTaskId",
"description": "anotherAttachmentDescription",
"type": "anotherAttachmentType",
"url": "http://my-another-attachment-content-url.de",
"createTime": "2017-02-10T14:33:19.000+0200",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId"
},
{
"id": "yetAnotherAttachmentId",
"name": "yetAnotherAttachmentName",
"taskId": "aTaskId",
"description": "yetAnotherAttachmentDescription",
"type": "yetAnotherAttachmentType",
"url": "http://yet-another-attachment-content-url.de",
"createTime": "2017-02-10T14:33:19.000+0200",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId"
}
]
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "No task exists for the given task id. See the [Introduction](/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/attachment/create": {
"post": {
"operationId": "addAttachment",
"tags": [
"Task Attachment"
],
"description": "Creates an attachment for a task.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to add the attachment to."
}
],
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/MultiFormAttachmentDto"
},
"examples": {
"example-1": {
"summary": "POST /task/aTaskId/attachment/create",
"description": "Post data for a new task attachment.",
"value": "------------------------------925df49a954b\n Content-Disposition: form-data; name\u003d\"url\"\n\n http://my-attachment-content-url.de\n ------------------------------925df49a954b\n Content-Disposition: form-data; name\u003d\"attachment-name\"\n\n attachmentName\n ------------------------------925df49a954b\n Content-Disposition: form-data; name\u003d\"attachment-description\"\n\n attachmentDescription\n ------------------------------925df49a954b\n Content-Disposition: form-data; name\u003d\"attachment-type\"\n\n attachmentType\n ------------------------------925df49a954b--"
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AttachmentDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"id": "attachmentId",
"name": "attachmentName",
"taskId": "aTaskId",
"description": "attachmentDescription",
"type": "attachmentType",
"url": "http://my-attachment-content-url.de",
"createTime": "2017-02-10T14:33:19.000+0200",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId",
"links": [
{
"method": "GET",
"href": "http://localhost:38080/rest-test/task/aTaskId/attachment/aTaskAttachmentId",
"rel": "self"
}
]
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The task does not exists or task id is null. No content or url to remote content exists. See the\n[Introduction](/reference/rest/overview/#error-handling) for the error response format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The history of the engine is disabled. See the [Introduction](/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/attachment/{attachmentId}": {
"delete": {
"operationId": "deleteAttachment",
"tags": [
"Task Attachment"
],
"description": "Removes an attachment from a task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task."
},
{
"name": "attachmentId",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the attachment to be removed."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The history of the engine is disabled. See the [Introduction](/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "A Task Attachment for the given task id and attachment id does not exist. See the\n[Introduction](/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"get": {
"operationId": "getAttachment",
"tags": [
"Task Attachment"
],
"description": "Retrieves a task attachment by task id and attachment id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task."
},
{
"name": "attachmentId",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the attachment to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AttachmentDto"
},
"examples": {
"example-1": {
"summary": "GET /task/aTaskId/attachment/aTaskAttachmentId",
"value": {
"id": "attachmentId",
"name": "attachmentName",
"taskId": "aTaskId",
"description": "attachmentDescription",
"type": "attachmentType",
"url": "http://my-attachment-content-url.de",
"createTime": "2017-02-10T14:33:19.000+0200",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId",
"links": [
{
"method": "GET",
"href": "http://localhost:38080/rest-test/task/aTaskId/attachment/aTaskAttachmentId",
"rel": "self"
}
]
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The attachment for the given task and attachment id does not exist or the history of the engine is\ndisabled.\n\nSee the [Introduction](/reference/rest/overview/#error-handling) for the error response format."
}
}
}
},
"/task/{id}/attachment/{attachmentId}/data": {
"get": {
"operationId": "getAttachmentData",
"tags": [
"Task Attachment"
],
"description": "Retrieves the binary content of a task attachment by task id and attachment id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task."
},
{
"name": "attachmentId",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the attachment to be retrieved."
}
],
"responses": {
"200": {
"description": "Request successful.",
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary",
"description": "For files without any MIME type information, a byte stream is returned."
}
},
"text/plain": {
"schema": {
"type": "string",
"format": "binary",
"description": "Files with MIME type information are returned as the saved type. Additionally, for file\n responses, the Content-Disposition header will be set."
}
}
}
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The attachment content for the given task id and attachment id does not exist, or the history of the\nengine is disabled.\n\nSee the [Introduction](/reference/rest/overview/#error-handling) for the error response format."
}
}
}
},
"/task/{id}/bpmnError": {
"post": {
"operationId": "handleBpmnError",
"tags": [
"Task"
],
"description": "Reports a business error in the context of a running task by id. The error code must\nbe specified to identify the BPMN error handler. See the documentation for\n[Reporting Bpmn Error](https://docs.camunda.org/manual/7.13/reference/bpmn20/tasks/user-task/#reporting-bpmn-error)\nin User Tasks.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task a BPMN error is reported for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TaskBpmnErrorDto"
},
"examples": {
"example-1": {
"summary": "Request Body",
"description": "POST `/task/aTaskId/bpmnError`",
"value": {
"errorCode": "bpmn-error-543",
"errorMessage": "anErrorMessage",
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "If the authenticated user is unauthorized to update the process instance. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist or \u003ccode\u003eerrorCode\u003c/code\u003e is not presented in\nthe request. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/bpmnEscalation": {
"post": {
"operationId": "handleEscalation",
"tags": [
"Task"
],
"description": "Reports an escalation in the context of a running task by id. The escalation code must\nbe specified to identify the escalation handler. See the documentation for\n[Reporting Bpmn Escalation](https://docs.camunda.org/manual/7.13/reference/bpmn20/tasks/user-task/#reporting-bpmn-escalation)\nin User Tasks.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task in which context a BPMN escalation is reported."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TaskEscalationDto"
},
"examples": {
"example-1": {
"summary": "Request Body",
"description": "POST `/task/aTaskId/bpmnEscalation`",
"value": {
"escalationCode": "bpmn-escalation-432",
"variables": {
"aVariable": {
"value": "aStringValue",
"type": "String"
},
"anotherVariable": {
"value": true,
"type": "Boolean"
}
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "If the authenticated user is unauthorized to update the process instance. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Returned if the task does not exist or \u003ccode\u003eerrorCode\u003c/code\u003e is not presented in\nthe request. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/claim": {
"post": {
"operationId": "claim",
"tags": [
"Task"
],
"description": "Claims a task for a specific user.\n\n**Note:** The difference with the\n[Set Assignee](https://docs.camunda.org/manual/7.13/reference/rest/task/post-assignee/)\nmethod is that here a check is performed to see if the task already has a user\nassigned to it.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to claim."
}
],
"requestBody": {
"description": "Provide the id of the user that claims the task.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserIdDto"
},
"examples": {
"example-1": {
"summary": "Request Body",
"description": "POST `/task/anId/claim`",
"value": {
"userId": "aUserId"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task with given id does not exist or claiming was not successful. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/comment": {
"get": {
"operationId": "getComments",
"tags": [
"Task Comment"
],
"description": "Gets the comments for a task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the comments for."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CommentDto"
}
},
"examples": {
"example-1": {
"summary": "GET /task/aTaskId/comment",
"value": [
{
"id": "commentId",
"userId": "userId",
"taskId": "aTaskId",
"time": "2013-01-02T21:37:03.764+0200",
"message": "message",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId"
},
{
"id": "anotherCommentId",
"userId": "anotherUserId",
"taskId": "aTaskId",
"time": "2013-02-23T20:37:43.975+0200",
"message": "anotherMessage",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId"
},
{
"id": "yetAnotherCommentId",
"userId": "yetAnotherUserId",
"taskId": "aTaskId",
"time": "2013-04-21T10:15:23.764+0200",
"message": "yetAnotherMessage",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId"
}
]
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "No task exists for the given task id. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/comment/create": {
"post": {
"operationId": "createComment",
"tags": [
"Task Comment"
],
"description": "Creates a comment for a task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to add the comment to."
}
],
"requestBody": {
"description": "**Note:** Only the `message` property will be used. Every other property passed to this endpoint will be ignored.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommentDto"
},
"examples": {
"example-1": {
"summary": "POST /task/aTaskId/comment/create",
"value": {
"message": "a task comment"
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommentDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"value": {
"links": [
{
"method": "GET",
"href": "http://localhost:38080/rest-test/task/aTaskId/comment/aTaskCommentId",
"rel": "self"
}
],
"id": "aTaskCommentId",
"userId": "userId",
"taskId": "aTaskId",
"time": "2013-01-02T21:37:03.887+0200",
"message": "comment message",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The task does not exist or no comment message was submitted. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The history of the engine is disabled. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/comment/{commentId}": {
"get": {
"operationId": "getComment",
"tags": [
"Task Comment"
],
"description": "Retrieves a task comment by task id and comment id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task."
},
{
"name": "commentId",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the comment to be retrieved."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CommentDto"
},
"examples": {
"example-1": {
"summary": "GET /task/aTaskId/comment",
"value": {
"id": "aTaskCommentId",
"userId": "userId",
"taskId": "aTaskId",
"time": "2013-01-02T21:37:03.664+0200",
"message": "comment content",
"removalTime": "2018-02-10T14:33:19.000+0200",
"rootProcessInstanceId": "aRootProcessInstanceId"
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The task or comment with given task and comment id does not exist, or the history of\nthe engine is disabled. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/complete": {
"post": {
"operationId": "complete",
"tags": [
"Task"
],
"description": "Completes a task and updates process variables.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to complete."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CompleteTaskDto"
},
"examples": {
"example-1": {
"summary": "POST `/task/anId/complete`",
"description": "Complete Task with variables in return",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue"
},
"anotherVariable": {
"value": 42
},
"aThirdVariable": {
"value": true
}
},
"withVariablesInReturn": true
}
},
"example-2": {
"summary": "POST `/task/anId/complete`",
"description": "Complete Task without variables in return",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue"
},
"anotherVariable": {
"value": 42
},
"aThirdVariable": {
"value": true
}
}
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "POST `/task/anId/complete`",
"description": "Response Body",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue"
},
"anotherVariable": {
"value": 42
},
"aThirdVariable": {
"value": true
}
}
}
}
}
}
},
"description": "Request successful. The response contains the process variables."
},
"204": {
"description": "Request successful. The response contains no variables."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable value or type is invalid, for example if the value could not be parsed\nto an Integer value or the passed variable type is not supported. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "If the task does not exist or the corresponding process instance could not be\nresumed successfully. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/delegate": {
"post": {
"operationId": "delegateTask",
"tags": [
"Task"
],
"description": "Delegates a task to another user.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to delegate."
}
],
"requestBody": {
"description": "Provide the id of the user that the task should be delegated to.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserIdDto"
},
"examples": {
"example-1": {
"summary": "Request Body",
"description": "POST `/task/anId/delegate`",
"value": {
"userId": "aUserId"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "If the task does not exist or delegation was not successful. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/deployed-form": {
"get": {
"operationId": "getDeployedForm",
"tags": [
"Task"
],
"description": "Retrieves the deployed form that is referenced from a given task. For further\ninformation please refer to the\n[User Guide](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#embedded-task-forms).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to get the deployed form for."
}
],
"responses": {
"200": {
"content": {
"application/xhtml+xml": {
"schema": {
"type": "string",
"format": "binary",
"description": "For `application/xhtml+xml` Responses, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "Resonse for GET `/task/taskId/deployed-form`",
"value": "\u003cform role\u003d\"form\" name\u003d\"invoiceForm\"\n class\u003d\"form-horizontal\"\u003e\n\n \u003cdiv class\u003d\"form-group\"\u003e\n \u003clabel class\u003d\"control-label col-md-4\"\n for\u003d\"creditor\"\u003eCreditor\u003c/label\u003e\n \u003cdiv class\u003d\"col-md-8\"\u003e\n \u003cinput cam-variable-name\u003d\"creditor\"\n cam-variable-type\u003d\"String\"\n id\u003d\"creditor\"\n class\u003d\"form-control\"\n type\u003d\"text\"\n required /\u003e\n \u003cdiv class\u003d\"help\"\u003e\n (e.g. \u0026quot;Great Pizza for Everyone Inc.\u0026quot;)\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c/form\u003e"
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The form key has wrong format. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthorizationExceptionDto"
}
}
},
"description": "The deployed form cannot be retrieved due to missing permissions on task resource.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "No deployed form for a given task exists. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/form": {
"get": {
"operationId": "getForm",
"tags": [
"Task"
],
"description": "Retrieves the form key for a task. The form key corresponds to the `FormData#formKey`\nproperty in the engine. This key can be used to do task-specific form rendering in\nclient applications. Additionally, the context path of the containing process\napplication is returned.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the form for."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FormDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "GET `/task/anId/form`",
"value": {
"key": "aFormKey",
"contextPath": "http://localhost:8080/my-process-application/"
}
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/form-variables": {
"get": {
"operationId": "getFormVariables",
"tags": [
"Task"
],
"description": "Retrieves the form variables for a task. The form variables take form data specified\non the task into account. If form fields are defined, the variable types and default\nvalues of the form fields are taken into account.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variables for."
},
{
"name": "variableNames",
"in": "query",
"schema": {
"type": "string"
},
"description": "A comma-separated list of variable names. Allows restricting the list of requested\nvariables to the variable names in the list. It is best practice to restrict the\nlist of variables to the variables actually required by the form in order to\nminimize fetching of data. If the query parameter is ommitted all variables are\nfetched. If the query parameter contains non-existent variable names, the variable\nnames are ignored."
},
{
"name": "deserializeValues",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store\ncustom Java objects) should be deserialized on server side (default true).\n\nIf set to true, a serializable variable will be deserialized on server side and\ntransformed to JSON using [Jackson\u0027s](http://jackson.codehaus.org/) POJO/bean\nproperty introspection feature. Note that this requires the Java classes of the\nvariable value to be on the REST API\u0027s classpath.\n\nIf set to false, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string\ncontaining XML.\n\nNote: While true is the default value for reasons of backward compatibility, we\nrecommend setting this parameter to false when developing web applications that are\nindependent of the Java process applications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "GET `/task/anId/form-variables`",
"value": {
"amount": {
"type": "integer",
"value": 5,
"valueInfo": {}
},
"firstName": {
"type": "String",
"value": "Jonny",
"valueInfo": {}
}
}
}
}
}
},
"description": "Request successful. A JSON object containing a property for each variable returned."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": " id is null or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/identity-links": {
"get": {
"operationId": "getIdentityLinks",
"tags": [
"Task Identity Link"
],
"description": "Gets the identity links for a task by id, which are the users and groups that are in\n*some* relation to it (including assignee and owner).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the identity links for."
},
{
"name": "type",
"in": "query",
"schema": {
"type": "string"
},
"description": "Filter by the type of links to include."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IdentityLinkDto"
}
},
"examples": {
"example-1": {
"summary": "GET /task/anId/identityLinks",
"value": [
{
"userId": "userId",
"groupId": null,
"type": "assignee"
},
{
"userId": null,
"groupId": "groupId1",
"type": "candidate"
},
{
"userId": null,
"groupId": "groupId2",
"type": "candidate"
}
]
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for the error response format."
}
}
},
"post": {
"operationId": "addIdentityLink",
"tags": [
"Task Identity Link"
],
"description": "Adds an identity link to a task by id. Can be used to link any user or group to a task\nand specify a relation.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to add a link to."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IdentityLinkDto"
},
"examples": {
"example-1": {
"summary": "POST `/task/anId/identity-links`",
"value": {
"groupId": "aNewGroupId",
"type": "candidate"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for the error response format."
}
}
}
},
"/task/{id}/identity-links/delete": {
"post": {
"operationId": "deleteIdentityLink",
"tags": [
"Task Identity Link"
],
"description": "Removes an identity link from a task by id",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to remove a link from."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/IdentityLinkDto"
},
"examples": {
"example-1": {
"summary": "POST `/task/anId/identityLinks/delete`",
"value": {
"groupId": "theOldGroupId",
"type": "candidate"
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task with given id does not exist.\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for\nthe error response format."
}
}
}
},
"/task/{id}/localVariables": {
"get": {
"operationId": "getTaskLocalVariables",
"tags": [
"Task Local Variable"
],
"description": "Retrieves all variables of a given task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variables from."
},
{
"name": "deserializeValues",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store custom Java objects)\nshould be deserialized on the server side (default `true`).\n\nIf set to `true`, a serializable variable will be deserialized on server side and transformed to JSON\nusing [Jackson\u0027s](https://github.com/FasterXML/jackson) POJO/bean property introspection feature.\nNote that this requires the Java classes of the variable value to be on the REST API\u0027s classpath.\n\nIf set to `false`, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string containing XML.\n\n**Note:** While `true` is the default value for reasons of backward compatibility, we recommend setting this\nparameter to `false` when developing web applications that are independent of the Java process\napplications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "GET `/task/aTaskId/variables`",
"value": {
"aVariableKey": {
"value": {
"prop1": "a",
"prop2": "b"
},
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
},
"example-2": {
"summary": "GET `/task/aTaskId/variables?deserializeValue\u003dfalse`",
"value": {
"aVariableKey": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
}
},
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"post": {
"operationId": "modifyTaskLocalVariables",
"tags": [
"Task Local Variable"
],
"description": "Updates or deletes the variables in the context of a task. Updates precede deletions. So, if a variable is\nupdated AND deleted, the deletion overrides the update.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to set variables for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PatchVariablesDto"
},
"examples": {
"example-1": {
"summary": "POST `/task/aTaskId/variables`",
"description": "Status 204 Response: No content.",
"value": {
"modifications": {
"aVariable": {
"value": "aValue",
"type": "String"
},
"anotherVariable": {
"value": 42,
"type": "Integer"
}
},
"deletions": [
"aThirdVariable",
"FourthVariable"
]
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable value or type is invalid. For example the value could not be parsed to an `Integer` value\nor the passed variable type is not supported. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Update or delete could not be executed because the task is `null` or does not exist.. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/localVariables/{varName}": {
"delete": {
"operationId": "deleteTaskLocalVariable",
"tags": [
"Task Local Variable"
],
"description": "Removes a local variable from a task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to delete the variable from."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to be removed."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"get": {
"operationId": "getTaskLocalVariable",
"tags": [
"Task Local Variable"
],
"description": "Retrieves a variable from the context of a given task by id.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variable from."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to get"
},
{
"name": "deserializeValue",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store custom Java objects)\nshould be deserialized on the server side (default `true`).\n\nIf set to `true`, a serializable variable will be deserialized on server side and transformed to JSON\nusing [Jackson\u0027s](https://github.com/FasterXML/jackson) POJO/bean property introspection feature.\nNote that this requires the Java classes of the variable value to be on the REST API\u0027s classpath.\n\nIf set to `false`, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string containing XML.\n\nNote: While `true` is the default value for reasons of backward compatibility, we recommend setting this\nparameter to `false` when developing web applications that are independent of the Java process\napplications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VariableValueDto"
},
"examples": {
"example-1": {
"summary": "GET `/task/aTaskId/variables/myObject123`",
"value": {
"value": {
"prop1": "a",
"prop2": "b"
},
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
},
"example-2": {
"summary": "GET `/task/aTaskId/variables/myObject123?deserializeValue\u003dfalse`",
"value": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Variable with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"put": {
"operationId": "putTaskLocalVariable",
"tags": [
"Task Local Variable"
],
"description": "Sets a variable in the context of a given task.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to set the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to set."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VariableValueDto"
},
"examples": {
"example-1": {
"summary": "PUT /task/aTaskId/variables/aVarName",
"description": "Status 204. No content.",
"value": {
"value": "someValue",
"type": "String"
}
},
"example-2": {
"summary": "PUT /task/aTaskId/variables/aVarName",
"description": "An Object Variable PUT Request. Status 204. No content.",
"value": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable name, value or type is invalid, for example if the value could not be parsed to an `Integer`\nvalue or the passed variable type is not supported or a new transient variable has the name that is\nalready persisted. See the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable name is `null`, or the Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/localVariables/{varName}/data": {
"get": {
"operationId": "getTaskLocalVariableBinary",
"tags": [
"Task Local Variable"
],
"description": "Retrieves a binary variable from the context of a given task by id. Applicable for byte array and file\nvariables.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to retrieve."
}
],
"responses": {
"200": {
"description": "Request successful.\n For binary variables or files without any MIME type information, a byte stream is returned.\n File variables with MIME type information are returned as the saved type.\n Additionally, for file variables the Content-Disposition header will be set.",
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary",
"description": "For binary variables or files without any MIME type information, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "GET /task/aTaskId/variables/aVarName/data",
"value": "binary variable: Status 200. Content-Type: application/octet-stream"
}
}
},
"text/plain": {
"schema": {
"type": "string",
"format": "binary",
"description": "File variables with MIME type information are returned as the saved type.\n Additionally, for file variables the Content-Disposition header will be set."
},
"examples": {
"example-1": {
"summary": "GET /task/aTaskId/variables/aVarName/data",
"value": "file variable: Status 200. Content-Type: text/plain; charset\u003dUTF-8. Content-Disposition: attachment; filename\u003d\"someFile.txt\""
}
}
}
}
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Variable with given id exists but is not a binary variable.See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Variable with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"post": {
"operationId": "setBinaryTaskLocalVariable",
"tags": [
"Task Local Variable"
],
"description": "Sets the serialized value for a binary variable or the binary value for a file variable.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to retrieve."
}
],
"requestBody": {
"description": "For binary variables a multipart form submit with the following parts:",
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/MultiFormVariableBinaryDto"
},
"examples": {
"example-1": {
"summary": "POST `/task/aTaskId/variables/aVarName/data` (1)",
"description": "Post binary content of a byte array variable.",
"value": "\n ```\n ------------------------------354ddb6baeff\n Content-Disposition: form-data; name\u003d\"data\"; filename\u003d\"image.png\"\n Content-Type: application/octet-stream\n Content-Transfer-Encoding: binary\n\n \u003c\u003cByte Stream ommitted\u003e\u003e\n ------------------------------354ddb6baeff\n Content-Disposition: form-data; name\u003d\"valueType\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n Bytes\n ------------------------------1e838f8f632a--\n ```\n "
},
"example-2": {
"summary": "POST `/task/aTaskId/variables/aVarName/data` (2)",
"description": "Post the JSON serialization of a Java Class (**deprecated**).",
"value": "\n ```\n ------------------------------1e838f8f632a\n Content-Disposition: form-data; name\u003d\"type\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n java.util.ArrayList\u003cjava.lang.Object\u003e\n ------------------------------1e838f8f632a\n Content-Disposition: form-data; name\u003d\"data\"\n Content-Type: application/json; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n [\"foo\",\"bar\"]\n ------------------------------1e838f8f632a--\n ```\n "
},
"example-3": {
"summary": "POST `/task/aTaskId/variables/aVarName/data` (3)",
"description": "Post a text file.",
"value": "\n ```\n ---OSQH1f8lzs83iXFHphqfIuitaQfNKFY74Y\n Content-Disposition: form-data; name\u003d\"data\"; filename\u003d\"myFile.txt\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: binary\n\n \u003c\u003cByte Stream ommitted\u003e\u003e\n ---OSQH1f8lzs83iXFHphqfIuitaQfNKFY74Y\n Content-Disposition: form-data; name\u003d\"valueType\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n File\n ------------------------------1e838f8f632a--\n ```\n "
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable value or type is invalid, for example if no filename is set. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Variable name is `null`, or the Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/rendered-form": {
"get": {
"operationId": "getRenderedForm",
"tags": [
"Task"
],
"description": "Retrieves the rendered form for a task. This method can be used to get the HTML\nrendering of a\n[Generated Task Form](https://docs.camunda.org/manual/7.13/user-guide/task-forms/#generated-task-forms).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to get the rendered form for."
}
],
"responses": {
"200": {
"content": {
"application/xhtml+xml": {
"schema": {
"type": "string",
"format": "binary",
"description": "For `application/xhtml+xml` Responses, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "A `/task/anId/rendered-form` HTML GET response body providing the rendered (generated) form content.",
"value": "\u003cform class\u003d\"form-horizontal\"\u003e\n \u003cdiv class\u003d\"control-group\"\u003e\n \u003clabel class\u003d\"control-label\"\u003eCustomer ID\u003c/label\u003e\n \u003cdiv class\u003d\"controls\"\u003e\n \u003cinput form-field type\u003d\"string\" name\u003d\"customerId\"\u003e\u003c/input\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class\u003d\"control-group\"\u003e\n \u003clabel class\u003d\"control-label\"\u003eAmount\u003c/label\u003e\n \u003cdiv class\u003d\"controls\"\u003e\n \u003cinput form-field type\u003d\"number\" name\u003d\"amount\"\u003e\u003c/input\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/form\u003e"
}
}
}
},
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The task with the given id does not exist or has no form field metadata defined for\nthis task. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/resolve": {
"post": {
"operationId": "resolve",
"tags": [
"Task"
],
"description": "Resolves a task and updates execution variables.\n\nResolving a task marks that the assignee is done with the task delegated to them, and\nthat it can be sent back to the owner. Can only be executed when the task has been\ndelegated. The assignee will be set to the owner, who performed the delegation.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to resolve."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CompleteTaskDto"
},
"examples": {
"example-1": {
"summary": "Request Body",
"description": "POST `/task/anId/resolve`",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue"
},
"anotherVariable": {
"value": 42
},
"aThirdVariable": {
"value": true
}
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable value or type is invalid, for example if the value could not be parsed\nto an Integer value or the passed variable type is not supported. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "If the task does not exist or the corresponding process instance could not be\nresumed successfully. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/submit-form": {
"post": {
"operationId": "submit",
"tags": [
"Task"
],
"description": "Completes a task and updates process variables using a form submit. There are two\ndifference between this method and the `complete` method:\n\n* If the task is in state `PENDING` - i.e., has been delegated before, it is not\ncompleted but resolved. Otherwise it will be completed.\n* If the task has Form Field Metadata defined, the process engine will perform backend\nvalidation for any form fields which have validators defined.\nSee the\n[Generated Task Forms](https://docs.camunda.org/manual/7.13/user-guide/task-forms/_index/#generated-task-forms)\nsection of the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/) for more information.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to submit the form for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CompleteTaskDto"
},
"examples": {
"example-1": {
"summary": "Request Body 1",
"description": "POST `/task/anId/submit-form`",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue"
},
"anotherVariable": {
"value": 42
},
"aThirdVariable": {
"value": true
},
"aFileVariable": {
"value": "TG9yZW0gaXBzdW0\u003d",
"type": "File",
"valueInfo": {
"filename": "myFile.txt"
}
}
}
}
},
"example-2": {
"summary": "Request Body 2",
"description": "POST `/task/anId/complete`",
"value": {
"variables": {
"aVariable": {
"value": "aStringValue"
},
"anotherVariable": {
"value": 42
},
"aThirdVariable": {
"value": true
}
},
"withVariablesInReturn": true
}
}
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "Response Body",
"description": "Response of a submitted task form with variables in return",
"value": {
"aVariable": {
"value": "aStringValue",
"type": "String",
"valueInfo": {}
},
"anotherVariable": {
"value": 42,
"type": "Integer",
"valueInfo": {}
},
"aThirdVariable": {
"value": true,
"type": "Boolean",
"valueInfo": {}
}
}
}
}
}
},
"description": "Request successful. The response contains the process variables."
},
"204": {
"description": "Request successful. The response contains no variables."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable value or type is invalid, for example if the value could not be parsed to an Integer value\nor the passed variable type is not supported.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for\nthe error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "If the task does not exist or the corresponding process instance could not be resumed successfully.\n\nSee the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling) for\nthe error response format."
}
}
}
},
"/task/{id}/unclaim": {
"post": {
"operationId": "unclaim",
"tags": [
"Task"
],
"description": "Resets a task\u0027s assignee. If successful, the task is not assigned to a user.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to unclaim."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The Task with the given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/variables": {
"get": {
"operationId": "getTaskVariables",
"tags": [
"Task Variable"
],
"description": "Retrieves all variables visible from the task. A variable is visible from the task if it is a local task\nvariable or declared in a parent scope of the task. See documentation on\n[visiblity of variables](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variables from."
},
{
"name": "deserializeValue",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store custom Java objects)\nshould be deserialized on the server side (default `true`).\nIf set to `true`, a serializable variable will be deserialized on server side and transformed to JSON\nusing [Jackson\u0027s](https://github.com/FasterXML/jackson) POJO/bean property introspection feature.\nNote that this requires the Java classes of the variable value to be on the REST API\u0027s classpath.\n\nIf set to `false`, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string containing XML.\n\nNote: While `true` is the default value for reasons of backward compatibility, we recommend setting this\nparameter to `false` when developing web applications that are independent of the Java process\napplications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
}
},
"examples": {
"example-1": {
"summary": "GET `/task/aTaskId/variables`",
"value": {
"aVariableKey": {
"value": {
"prop1": "a",
"prop2": "b"
},
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
},
"example-2": {
"summary": "GET `/task/aTaskId/variables?deserializeValue\u003dfalse`",
"value": {
"aVariableKey": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
}
},
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"post": {
"operationId": "modifyTaskVariables",
"tags": [
"Task Variable"
],
"description": "Updates or deletes the variables visible from the task. Updates precede deletions. So, if a variable is\nupdated AND deleted, the deletion overrides the update. A variable is visible from the task if it is a\nlocal task variable or declared in a parent scope of the task. See documentation on\n[visiblity of variables](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to set variables for."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PatchVariablesDto"
},
"examples": {
"example-1": {
"summary": "POST `/task/aTaskId/variables`",
"description": "Status 204 Response: No content.",
"value": {
"modifications": {
"aVariable": {
"value": "aValue",
"type": "String"
},
"anotherVariable": {
"value": 42,
"type": "Integer"
}
},
"deletions": [
"aThirdVariable",
"FourthVariable"
]
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable value or type is invalid. For example the value could not be parsed to an `Integer` value\nor the passed variable type is not supported. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Update or delete could not be executed because the task is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/variables/{varName}": {
"delete": {
"operationId": "deleteTaskVariable",
"tags": [
"Task Variable"
],
"description": "Removes a variable that is visible to a task. A variable is visible to a task if it is a local task\nvariable or declared in a parent scope of the task. See documentation on\n[visiblity of variables](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to delete the variable from."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to be removed."
}
],
"responses": {
"204": {
"description": "Request successful."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task id is null or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"get": {
"operationId": "getTaskVariable",
"tags": [
"Task Variable"
],
"description": "Retrieves a variable from the context of a given task.\nThe variable must be visible from the task. It is visible from the task if it is a local task variable or\ndeclared in a parent scope of the task. See documentation on\n[visiblity of variables](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variable from."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to get."
},
{
"name": "deserializeValue",
"in": "query",
"schema": {
"default": true,
"type": "boolean"
},
"description": "Determines whether serializable variable values (typically variables that store custom Java objects)\nshould be deserialized on the server side (default `true`).\n\nIf set to `true`, a serializable variable will be deserialized on server side and transformed to JSON\nusing [Jackson\u0027s](https://github.com/FasterXML/jackson) POJO/bean property introspection feature.\nNote that this requires the Java classes of the variable value to be on the REST API\u0027s classpath.\n\nIf set to `false`, a serializable variable will be returned in its serialized format.\nFor example, a variable that is serialized as XML will be returned as a JSON string containing XML.\n\nNote: While `true` is the default value for reasons of backward compatibility, we recommend setting this\nparameter to `false` when developing web applications that are independent of the Java process\napplications deployed to the engine."
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VariableValueDto"
},
"examples": {
"example-1": {
"summary": "GET `/task/aTaskId/variables/myObject123`",
"value": {
"value": {
"prop1": "a",
"prop2": "b"
},
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
},
"example-2": {
"summary": "GET `/task/aTaskId/variables/myObject123?deserializeValue\u003dfalse`",
"value": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
},
"description": "Request successful."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Variable with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"put": {
"operationId": "putTaskVariable",
"tags": [
"Task Variable"
],
"description": "Updates a process variable that is visible from the Task scope. A variable is visible from the task if it\nis a local task variable, or declared in a parent scope of the task. See the documentation on\n[variable scopes and visibility](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables#variable-scopes-and-variable-visibility).\n\n**Note**: If a variable doesn\u0027t exist, the variable is created in the top-most scope\nvisible from the task.",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to set the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to set."
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VariableValueDto"
},
"examples": {
"example-1": {
"summary": "PUT /task/aTaskId/variables/aVarName",
"description": "Status 204. No content.",
"value": {
"value": "someValue",
"type": "String"
}
},
"example-2": {
"summary": "PUT /task/aTaskId/variables/aVarName",
"description": "Status 204. No content.",
"value": {
"value": "ab",
"type": "Object",
"valueInfo": {
"objectTypeName": "com.example.MyObject",
"serializationDataFormat": "application/xml"
}
}
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable name, value or type is invalid, for example if the value could not be parsed to an `Integer`\nvalue or the passed variable type is not supported or a new transient variable has the name that is\nalready persisted. See the [Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable name is `null`, or the Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/task/{id}/variables/{varName}/data": {
"get": {
"operationId": "getTaskVariableBinary",
"tags": [
"Task Variable"
],
"description": "Retrieves a binary variable from the context of a given task. Applicable for byte array and file\nvariables. The variable must be visible from the task. It is visible from the task if it is a local task\nvariable or declared in a parent scope of the task. See documentation on\n[visiblity of variables](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to retrieve."
}
],
"responses": {
"200": {
"description": "Request successful.\n For binary variables or files without any MIME type information, a byte stream is returned.\n File variables with MIME type information are returned as the saved type.\n Additionally, for file variables the Content-Disposition header will be set.",
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary",
"description": "For binary variables or files without any MIME type information, a byte stream is returned."
},
"examples": {
"example-1": {
"summary": "GET /task/aTaskId/variables/aVarName/data",
"value": "binary variable: Status 200. Content-Type: application/octet-stream"
}
}
},
"text/plain": {
"schema": {
"type": "string",
"format": "binary",
"description": "File variables with MIME type information are returned as the saved type.\n Additionally, for file variables the Content-Disposition header will be set."
},
"examples": {
"example-1": {
"summary": "GET /task/aTaskId/variables/aVarName/data",
"value": "file variable: Status 200. Content-Type: text/plain; charset\u003dUTF-8. Content-Disposition: attachment; filename\u003d\"someFile.txt\""
}
}
}
}
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Variable with given id exists but is not a binary variable.See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Variable with given id does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
},
"post": {
"operationId": "setBinaryTaskVariable",
"tags": [
"Task Variable"
],
"description": "Sets the serialized value for a binary variable or the binary value for a file variable visible from the\ntask. A variable is visible from the task if it is a local task variable or declared in a parent scope of\nthe task. See documentation on\n[visiblity of variables](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/).",
"parameters": [
{
"name": "id",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The id of the task to retrieve the variable for."
},
{
"name": "varName",
"in": "path",
"schema": {
"type": "string"
},
"required": true,
"description": "The name of the variable to retrieve."
}
],
"requestBody": {
"description": "For binary variables a multipart form submit with the following parts:",
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/MultiFormVariableBinaryDto"
},
"examples": {
"example-1": {
"summary": "POST `/task/aTaskId/variables/aVarName/data` (1)",
"description": "Post binary content of a byte array variable.",
"value": "\n ```\n ------------------------------354ddb6baeff\n Content-Disposition: form-data; name\u003d\"data\"; filename\u003d\"image.png\"\n Content-Type: application/octet-stream\n Content-Transfer-Encoding: binary\n\n \u003c\u003cByte Stream ommitted\u003e\u003e\n ------------------------------354ddb6baeff\n Content-Disposition: form-data; name\u003d\"valueType\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n Bytes\n ------------------------------1e838f8f632a--\n ```\n "
},
"example-2": {
"summary": "POST `/task/aTaskId/variables/aVarName/data` (2)",
"description": "Post the JSON serialization of a Java Class (**deprecated**).",
"value": "\n ```\n ------------------------------1e838f8f632a\n Content-Disposition: form-data; name\u003d\"type\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n java.util.ArrayList\u003cjava.lang.Object\u003e\n ------------------------------1e838f8f632a\n Content-Disposition: form-data; name\u003d\"data\"\n Content-Type: application/json; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n [\"foo\",\"bar\"]\n ------------------------------1e838f8f632a--\n ```\n "
},
"example-3": {
"summary": "POST `/task/aTaskId/variables/aVarName/data` (3)",
"description": "Post a text file.",
"value": "\n ```\n ---OSQH1f8lzs83iXFHphqfIuitaQfNKFY74Y\n Content-Disposition: form-data; name\u003d\"data\"; filename\u003d\"myFile.txt\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: binary\n\n \u003c\u003cByte Stream ommitted\u003e\u003e\n ---OSQH1f8lzs83iXFHphqfIuitaQfNKFY74Y\n Content-Disposition: form-data; name\u003d\"valueType\"\n Content-Type: text/plain; charset\u003dUS-ASCII\n Content-Transfer-Encoding: 8bit\n\n File\n ------------------------------1e838f8f632a--\n ```\n "
}
}
}
}
},
"responses": {
"204": {
"description": "Request successful."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "The variable value or type is invalid, for example if no filename is set. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
},
"500": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExceptionDto"
}
}
},
"description": "Variable name is `null`, or the Task id is `null` or does not exist. See the\n[Introduction](https://docs.camunda.org/manual/7.13/reference/rest/overview/#error-handling)\nfor the error response format."
}
}
}
},
"/version": {
"get": {
"operationId": "getRestAPIVersion",
"tags": [
"Version"
],
"description": "Retrieves the version of the Rest API.",
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VersionDto"
},
"examples": {
"example-1": {
"summary": "Status 200 Response",
"description": "The Response content of a status 200",
"value": {
"version": "7.13.0"
}
}
}
}
},
"description": "Request successful."
}
}
}
}
},
"components": {
"schemas": {
"ActivityInstanceDto": {
"type": "object",
"description": "A JSON object corresponding to the Activity Instance tree of the given process instance.",
"properties": {
"id": {
"type": "string",
"description": "The id of the activity instance."
},
"parentActivityInstanceId": {
"type": "string",
"description": "The id of the parent activity instance, for example a sub process instance."
},
"activityId": {
"type": "string",
"description": "The id of the activity."
},
"activityName": {
"type": "string",
"description": "The name of the activity"
},
"activityType": {
"type": "string",
"description": "The type of activity (corresponds to the XML element name in the BPMN 2.0, e.g., \u0027userTask\u0027)"
},
"processInstanceId": {
"type": "string",
"description": "The id of the process instance this activity instance is part of."
},
"processDefinitionId": {
"type": "string",
"description": "The id of the process definition."
},
"childActivityInstances": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActivityInstanceDto"
},
"description": "A list of child activity instances."
},
"childTransitionInstances": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TransitionInstanceDto"
},
"description": "A list of child transition instances.\nA transition instance represents an execution waiting in an asynchronous continuation."
},
"executionIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of execution ids."
},
"incidentIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of incident ids."
},
"incidents": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActivityInstanceIncidentDto"
},
"description": "A list of JSON objects containing incident specific properties:\n* `id`: the id of the incident\n* `activityId`: the activity id in which the incident occurred"
}
}
},
"ActivityInstanceIncidentDto": {
"type": "object",
"description": "An activity instance, incident pair.",
"properties": {
"id": {
"type": "string",
"description": "The id of the incident."
},
"parentActivityInstanceId": {
"type": "string",
"description": "The activity id in which the incident happened."
}
}
},
"ActivityStatisticsResultDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the activity the results are aggregated for."
},
"instances": {
"type": "integer",
"format": "int32",
"description": "The total number of running process instances of this activity."
},
"failedJobs": {
"type": "integer",
"format": "int32",
"description": "The total number of failed jobs for the running instances.\n**Note**: Will be `0` (not `null`), if failed jobs were excluded."
},
"incidents": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IncidentStatisticsResultDto"
},
"description": "Each item in the resulting array is an object which contains `incidentType` and `incidentCount`.\n**Note**: Will be an empty array, if `incidents` or `incidentsForType` were excluded.\nFurthermore, the array will be also empty if no incidents were found."
}
}
},
"AtomLink": {
"type": "object",
"properties": {
"rel": {
"type": "string",
"description": "The relation of the link to the object that belogs to."
},
"href": {
"type": "string",
"description": "The url of the link."
},
"method": {
"type": "string",
"description": "The http method."
}
}
},
"AttachmentDto": {
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the task attachment."
},
"name": {
"type": "string",
"description": "The name of the task attachment."
},
"description": {
"type": "string",
"description": "The description of the task attachment."
},
"taskId": {
"type": "string",
"description": "The id of the task to which the attachment belongs."
},
"type": {
"type": "string",
"description": "Indication of the type of content that this attachment refers to.\nCan be MIME type or any other indication."
},
"url": {
"type": "string",
"description": "The url to the remote content of the task attachment."
},
"createTime": {
"type": "string",
"format": "date-time",
"description": "The time the variable was inserted.\n[Default format](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/)\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`."
},
"removalTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The time after which the attachment should be removed by the History Cleanup job.\n[Default format](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/)\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`."
},
"rootProcessInstanceId": {
"type": "string",
"description": "The process instance id of the root process instance that initiated the process containing the task."
}
}
},
{
"$ref": "#/components/schemas/LinkableDto"
}
]
},
"AuthorizationExceptionDto": {
"allOf": [
{
"type": "object",
"properties": {
"userId": {
"type": "string",
"description": "The id of the user that does not have expected permissions"
},
"missingAuthorizations": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MissingAuthorizationDto"
},
"description": ""
}
}
},
{
"$ref": "#/components/schemas/ExceptionDto"
}
]
},
"BatchDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the batch."
},
"type": {
"type": "string",
"description": "The type of the batch."
},
"totalJobs": {
"type": "integer",
"format": "int32",
"description": "The total jobs of a batch is the number of batch execution jobs required to complete the batch."
},
"jobsCreated": {
"type": "integer",
"format": "int32",
"description": "The number of batch execution jobs already created by the seed job."
},
"batchJobsPerSeed": {
"type": "integer",
"format": "int32",
"description": "The number of batch execution jobs created per seed job invocation.\nThe batch seed job is invoked until it has created all batch execution jobs required by the batch (see totalJobs property)."
},
"invocationsPerBatchJob": {
"type": "integer",
"format": "int32",
"description": "Every batch execution job invokes the command executed by the batch invocationsPerBatchJob times.\nE.g., for a process instance migration batch this specifies the number of process instances which are migrated per batch execution job."
},
"seedJobDefinitionId": {
"type": "string",
"description": "The job definition id for the seed jobs of this batch."
},
"monitorJobDefinitionId": {
"type": "string",
"description": "The job definition id for the monitor jobs of this batch."
},
"batchJobDefinitionId": {
"type": "string",
"description": "The job definition id for the batch execution jobs of this batch."
},
"suspended": {
"type": "boolean",
"description": "Indicates whether this batch is suspended or not."
},
"tenantId": {
"type": "string",
"description": "The tenant id of the batch."
},
"createUserId": {
"type": "string",
"description": "The id of the user that created the batch."
}
}
},
"CaseDefinitionDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the case definition"
},
"key": {
"type": "string",
"description": "The key of the case definition, i.e., the id of the CMMN 2.0 XML case definition."
},
"category": {
"type": "string",
"description": "The category of the case definition."
},
"name": {
"type": "string",
"description": "The name of the case definition."
},
"version": {
"type": "integer",
"format": "int32",
"description": "The version of the case definition that the engine assigned to it."
},
"resource": {
"type": "string",
"description": "The file name of the case definition."
},
"deploymentId": {
"type": "string",
"description": "The deployment id of the case definition."
},
"tenantId": {
"type": "string",
"description": "The tenant id of the case definition."
},
"historyTimeToLive": {
"type": "integer",
"format": "int32",
"nullable": true,
"minimum": 0,
"description": "History time to live value of the case definition.\nIs used within [History cleanup](https://docs.camunda.org/manual/7.13/user-guide/process-engine/history/#history-cleanup)."
}
}
},
"CommentDto": {
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the task comment."
},
"userId": {
"type": "string",
"description": "The id of the user who created the comment."
},
"taskId": {
"type": "string",
"description": "The id of the task to which the comment belongs."
},
"time": {
"type": "string",
"format": "date-time",
"description": "The time when the comment was created.\n[Default format]($(docsUrl)/reference/rest/overview/date-format/)\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`."
},
"message": {
"type": "string",
"description": "The content of the comment."
},
"removalTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The time after which the comment should be removed by the History Cleanup job.\n[Default format]($(docsUrl)/reference/rest/overview/date-format/)\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`."
},
"rootProcessInstanceId": {
"type": "string",
"description": "The process instance id of the root process instance that initiated the process\ncontaining the task."
}
}
},
{
"$ref": "#/components/schemas/LinkableDto"
}
]
},
"CompleteExternalTaskDto": {
"type": "object",
"properties": {
"workerId": {
"type": "string",
"description": "The id of the worker that completes the task. Must match the id of the worker who has most recently locked the task."
},
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A JSON object containing variable key-value pairs. Each key is a variable name and each value a JSON variable value object with the following properties:"
},
"localVariables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A JSON object containing local variable key-value pairs. Local variables are set only in the scope of external task. Each key is a variable name and each value a JSON variable value object with the following properties:"
}
}
},
"CompleteTaskDto": {
"type": "object",
"properties": {
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A JSON object containing variable key-value pairs."
},
"withVariablesInReturn": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Indicates whether the response should contain the process variables or not. The\ndefault is `false` with a response code of `204`. If set to `true` the response\ncontains the process variables and has a response code of `200`. If the task is not\nassociated with a process instance (e.g. if it\u0027s part of a case instance) no\nvariables will be returned."
}
}
},
"CorrelationMessageDto": {
"type": "object",
"properties": {
"messageName": {
"type": "string",
"description": "The name of the message to deliver."
},
"businessKey": {
"type": "string",
"description": "Used for correlation of process instances that wait for incoming messages.\nWill only correlate to executions that belong to a process instance with the provided business key."
},
"tenantId": {
"type": "string",
"description": "Used to correlate the message for a tenant with the given id.\nWill only correlate to executions and process definitions which belong to the tenant.\nMust not be supplied in conjunction with a `withoutTenantId`."
},
"withoutTenantId": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "A Boolean value that indicates whether the message should only be correlated to executions\nand process definitions which belong to no tenant or not. Value may only be `true`, as `false`\nis the default behavior.\nMust not be supplied in conjunction with a `tenantId`."
},
"processInstanceId": {
"type": "string",
"description": "Used to correlate the message to the process instance with the given id."
},
"correlationKeys": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "Used for correlation of process instances that wait for incoming messages.\nHas to be a JSON object containing key-value pairs that are matched against process instance variables\nduring correlation. Each key is a variable name and each value a JSON variable value object with the\nfollowing properties."
},
"localCorrelationKeys": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "Local variables used for correlation of executions (process instances) that wait for incoming messages.\nHas to be a JSON object containing key-value pairs that are matched against local variables during correlation.\nEach key is a variable name and each value a JSON variable value object with the following properties."
},
"processVariables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A map of variables that is injected into the triggered execution or process instance after the message\nhas been delivered. Each key is a variable name and each value a JSON variable value object with\nthe following properties."
},
"processVariablesLocal": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A map of local variables that is injected into the triggered execution or process instance after the\nmessage has been delivered. Each key is a variable name and each value a JSON variable value object\nwith the following properties."
},
"all": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "A Boolean value that indicates whether the message should be correlated to exactly one entity or multiple entities.\nIf the value is set to `false`, the message will be correlated to exactly one entity (execution or process definition).\nIf the value is set to `true`, the message will be correlated to multiple executions and a process definition that\ncan be instantiated by this message in one go."
},
"resultEnabled": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "A Boolean value that indicates whether the result of the correlation should be returned or not.\nIf this property is set to `true`, there will be returned a list of message correlation result objects. Depending on the\nall property, there will be either one ore more returned results in the list.\n\nThe default value is `false`, which means no result will be returned."
},
"variablesInResultEnabled": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "A Boolean value that indicates whether the result of the correlation should contain process variables or not.\nThe parameter resultEnabled should be set to `true` in order to use this it.\n\nThe default value is `false`, which means the variables will not be returned."
}
}
},
"CountResultDto": {
"type": "object",
"properties": {
"count": {
"type": "integer",
"format": "int64",
"description": "The number of matching instances."
}
}
},
"DecisionDefinitionDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the decision definition"
},
"key": {
"type": "string",
"description": "The key of the decision definition, i.e., the id of the DMN 1.0 XML decision definition."
},
"category": {
"type": "string",
"description": "The category of the decision definition."
},
"name": {
"type": "string",
"description": "The name of the decision definition."
},
"version": {
"type": "integer",
"format": "int32",
"description": "The version of the decision definition that the engine assigned to it."
},
"resource": {
"type": "string",
"description": "The file name of the decision definition."
},
"deploymentId": {
"type": "string",
"description": "The deployment id of the decision definition."
},
"tenantId": {
"type": "string",
"description": "The tenant id of the decision definition."
},
"decisionRequirementsDefinitionId": {
"type": "string",
"description": "The id of the decision requirements definition this decision definition belongs to."
},
"decisionRequirementsDefinitionKey": {
"type": "string",
"description": "The key of the decision requirements definition this decision definition belongs to."
},
"historyTimeToLive": {
"type": "integer",
"format": "int32",
"nullable": true,
"minimum": 0,
"description": "History time to live value of the decision definition.\nIs used within [History cleanup](https://docs.camunda.org/manual/7.13/user-guide/process-engine/history/#history-cleanup)."
},
"versionTag": {
"type": "string",
"description": "The version tag of the decision definition."
}
}
},
"DecisionRequirementsDefinitionDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the decision requirements definition"
},
"key": {
"type": "string",
"description": "The key of the decision requirements definition, i.e., the id of the DMN 1.0 XML decision definition."
},
"name": {
"type": "string",
"description": "The name of the decision requirements definition."
},
"category": {
"type": "string",
"description": "The category of the decision requirements definition."
},
"version": {
"type": "integer",
"format": "int32",
"description": "The version of the decision requirements definition that the engine assigned to it."
},
"resource": {
"type": "string",
"description": "The file name of the decision requirements definition."
},
"deploymentId": {
"type": "string",
"description": "The deployment id of the decision requirements definition."
},
"tenantId": {
"type": "string",
"description": "The tenant id of the decisionrequirements definition."
}
}
},
"DeleteProcessInstancesDto": {
"type": "object",
"properties": {
"processInstanceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list process instance ids to delete."
},
"deleteReason": {
"type": "string",
"description": "A string with delete reason."
},
"skipCustomListeners": {
"type": "boolean",
"nullable": true,
"description": "Skip execution listener invocation for activities that are started or ended as part of this request."
},
"skipSubprocesses": {
"type": "boolean",
"nullable": true,
"description": "Skip deletion of the subprocesses related to deleted processes as part of this request."
},
"processInstanceQuery": {
"$ref": "#/components/schemas/ProcessInstanceQueryDto"
},
"historicProcessInstanceQuery": {
"$ref": "#/components/schemas/HistoricProcessInstanceQueryDto"
}
}
},
"DeploymentDto": {
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the deployment."
},
"tenantId": {
"type": "string",
"description": "The tenant id of the deployment."
},
"deploymentTime": {
"type": "string",
"format": "date-time",
"description": "The time when the deployment was created."
},
"source": {
"type": "string",
"description": "The source of the deployment."
},
"name": {
"type": "string",
"description": "The name of the deployment."
}
}
},
{
"$ref": "#/components/schemas/LinkableDto"
}
]
},
"DeploymentResourceDto": {
"title": "DeploymentResourceDto",
"type": "object",
"description": "A JSON object corresponding to the `Resource` interface in the engine.\nIts properties are as follows:",
"properties": {
"id": {
"type": "string",
"description": "The id of the deployment resource."
},
"name": {
"type": "string",
"description": "The name of the deployment resource"
},
"deploymentId": {
"type": "string",
"description": "The id of the deployment."
}
}
},
"DeploymentWithDefinitionsDto": {
"allOf": [
{
"type": "object",
"properties": {
"deployedProcessDefinitions": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/ProcessDefinitionDto"
},
"description": "A JSON Object containing a property for each of the process definitions,\nwhich are successfully deployed with that deployment.\nThe key is the process definition id, the value is a JSON Object corresponding to the process definition."
},
"deployedDecisionDefinitions": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/DecisionDefinitionDto"
},
"description": "A JSON Object containing a property for each of the decision definitions,\nwhich are successfully deployed with that deployment.\nThe key is the decision definition id, the value is a JSON Object corresponding to the decision definition."
},
"deployedDecisionRequirementsDefinitions": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/DecisionRequirementsDefinitionDto"
},
"description": "A JSON Object containing a property for each of the decision requirements definitions,\nwhich are successfully deployed with that deployment.\nThe key is the decision requirements definition id, the value is a JSON Object corresponding to the decision requirements definition."
},
"deployedCaseDefinitions": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/CaseDefinitionDto"
},
"description": "A JSON Object containing a property for each of the case definitions,\nwhich are successfully deployed with that deployment.\nThe key is the case definition id, the value is a JSON Object corresponding to the case definition."
}
}
},
{
"$ref": "#/components/schemas/DeploymentDto"
}
]
},
"EvaluationConditionDto": {
"type": "object",
"properties": {
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A map of variables which are used for evaluation of the conditions and are injected into the process instances which have been triggered.\nEach key is a variable name and each value a JSON variable value object with the following properties."
},
"businessKey": {
"type": "string",
"description": "Used for the process instances that have been triggered after the evaluation."
},
"tenantId": {
"type": "string",
"description": "Used to evaluate a condition for a tenant with the given id.\nWill only evaluate conditions of process definitions which belong to the tenant."
},
"withoutTenantId": {
"type": "boolean",
"nullable": true,
"description": "A Boolean value that indicates whether the conditions should only be evaluated of process definitions which belong to no tenant or not.\nValue may only be true, as false is the default behavior."
},
"processDefinitionId": {
"type": "string",
"description": "Used to evaluate conditions of the process definition with the given id."
}
}
},
"EventSubscriptionDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the event subscription."
},
"eventType": {
"type": "string",
"description": "The type of the event subscription."
},
"eventName": {
"type": "string",
"description": "The name of the event this subscription belongs to as defined in the process model."
},
"executionId": {
"type": "string",
"description": "The execution that is subscribed on the referenced event."
},
"processInstanceId": {
"type": "string",
"description": "The process instance this subscription belongs to."
},
"activityId": {
"type": "string",
"description": "The identifier of the activity that this event subscription belongs to.\nThis could for example be the id of a receive task."
},
"createdDate": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The time this event subscription was created."
},
"tenantId": {
"type": "string",
"description": "The id of the tenant this event subscription belongs to.\nCan be `null` if the subscription belongs to no single tenant."
}
}
},
"EventSubscriptionQueryDto": {
"type": "object",
"description": "A event subscription query which retrieves a list of event subscriptions",
"properties": {
"eventSubscriptionId": {
"type": "string",
"description": "The id of the event subscription."
},
"eventName": {
"type": "string",
"description": "The name of the event this subscription belongs to as defined in the process model."
},
"eventType": {
"type": "string",
"enum": [
"message",
"signal",
"compensate",
"conditional"
],
"description": "The type of the event subscription."
},
"executionId": {
"type": "string",
"description": "The execution that is subscribed on the referenced event."
},
"processInstanceId": {
"type": "string",
"description": "The process instance this subscription belongs to."
},
"activityId": {
"type": "string",
"description": "The identifier of the activity that this event subscription belongs to.\nThis could for example be the id of a receive task."
},
"tenantIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids.\nOnly select subscriptions that belong to one of the given tenant ids."
},
"withoutTenantId": {
"type": "boolean",
"nullable": true,
"description": "Only select subscriptions which have no tenant id.\nValue may only be `true`, as `false` is the default behavior."
},
"includeEventSubscriptionsWithoutTenantId": {
"type": "boolean",
"nullable": true,
"description": "Select event subscriptions which have no tenant id.\nCan be used in combination with tenantIdIn parameter.\nValue may only be `true`, as `false` is the default behavior."
},
"sorting": {
"type": "array",
"description": "Apply sorting of the result",
"items": {
"type": "object",
"properties": {
"sortBy": {
"type": "string",
"enum": [
"created",
"tenantId"
],
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
"sortOrder": {
"type": "string",
"enum": [
"asc",
"desc"
],
"description": "Sort the results in a given order. Values may be `asc` for ascending order or `desc` for\ndescending order. Must be used in conjunction with the sortBy parameter."
}
}
}
}
}
},
"ExceptionDto": {
"title": "ExceptionDto",
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "An exception class indicating the occurred error."
},
"message": {
"type": "string",
"description": "A detailed message of the error."
}
}
},
"ExecutionDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the Execution."
},
"processInstanceId": {
"type": "string",
"description": "The id of the root of the execution tree representing the process instance."
},
"ended": {
"type": "boolean",
"description": "Indicates if the execution is ended."
},
"tenantId": {
"type": "string",
"description": "The id of the tenant this execution belongs to. Can be `null`\nif the execution belongs to no single tenant."
}
}
},
"ExtendLockOnExternalTaskDto": {
"type": "object",
"properties": {
"workerId": {
"type": "string",
"description": "The ID of a worker who is locking the external task."
},
"newDuration": {
"type": "integer",
"format": "int64",
"description": "An amount of time (in milliseconds). This is the new lock duration starting from the current moment."
}
}
},
"ExternalTaskBpmnError": {
"allOf": [
{
"type": "object",
"properties": {
"workerId": {
"type": "string",
"description": "The id of the worker that reports the failure. Must match the id of the worker who has most recently\nlocked the task."
}
}
},
{
"$ref": "#/components/schemas/TaskBpmnErrorDto"
}
]
},
"ExternalTaskDto": {
"title": "ExternalTaskDto",
"type": "object",
"description": "An External Task object with the following properties",
"properties": {
"activityId": {
"type": "string",
"description": "The id of the activity that this external task belongs to."
},
"activityInstanceId": {
"type": "string",
"description": "The id of the activity instance that the external task belongs to."
},
"errorMessage": {
"type": "string",
"description": "The full error message submitted with the latest reported failure executing this task; `null` if no\nfailure was reported previously or if no error message was submitted"
},
"executionId": {
"type": "string",
"description": "The id of the execution that the external task belongs to."
},
"id": {
"type": "string",
"description": "The id of the external task."
},
"lockExpirationTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The date that the task\u0027s most recent lock expires or has expired."
},
"processDefinitionId": {
"type": "string",
"description": "The id of the process definition the external task is defined in."
},
"processDefinitionKey": {
"type": "string",
"description": "The key of the process definition the external task is defined in."
},
"processDefinitionVersionTag": {
"type": "string",
"description": "The version tag of the process definition the external task is defined in."
},
"processInstanceId": {
"type": "string",
"description": "The id of the process instance the external task belongs to."
},
"tenantId": {
"type": "string",
"description": "The id of the tenant the external task belongs to."
},
"retries": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "The number of retries the task currently has left."
},
"suspended": {
"type": "boolean",
"nullable": true,
"description": "A flag indicating whether the external task is suspended or not."
},
"workerId": {
"type": "string",
"description": "The id of the worker that posesses or posessed the most recent lock."
},
"topicName": {
"type": "string",
"description": "The topic name of the external task."
},
"priority": {
"type": "integer",
"format": "int64",
"nullable": true,
"description": "The priority of the external task."
},
"businessKey": {
"type": "string",
"description": "The business key of the process instance the external task belongs to."
}
}
},
"ExternalTaskFailureDto": {
"type": "object",
"properties": {
"workerId": {
"type": "string",
"description": "The id of the worker that reports the failure. Must match the id of the worker who has most recently\nlocked the task."
},
"errorMessage": {
"type": "string",
"description": "An message indicating the reason of the failure."
},
"errorDetails": {
"type": "string",
"description": "A detailed error description."
},
"retries": {
"type": "integer",
"format": "int32",
"description": "A number of how often the task should be retried. Must be \u003e\u003d 0. If this is 0, an incident is created and\nthe task cannot be fetched anymore unless the retries are increased again. The incident\u0027s message is set\nto the `errorMessage` parameter."
},
"retryTimeout": {
"type": "integer",
"format": "int64",
"description": "A timeout in milliseconds before the external task becomes available again for fetching. Must be \u003e\u003d 0."
}
}
},
"ExternalTaskQueryDto": {
"title": "ExternalTaskQueryDto",
"type": "object",
"description": "A JSON object with the following properties:",
"properties": {
"externalTaskId": {
"type": "string",
"description": "Filter by an external task\u0027s id."
},
"externalTaskIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by the comma-separated list of external task ids."
},
"topicName": {
"type": "string",
"description": "Filter by an external task topic."
},
"workerId": {
"type": "string",
"description": "Filter by the id of the worker that the task was most recently locked by."
},
"locked": {
"type": "boolean",
"nullable": true,
"description": "Only include external tasks that are currently locked (i.e., they have a lock time and it has not expired).\nValue may only be `true`, as `false` matches any external task."
},
"notLocked": {
"type": "boolean",
"nullable": true,
"description": "Only include external tasks that are currently not locked (i.e., they have no lock or it has expired).\nValue may only be `true`, as `false` matches any external task."
},
"withRetriesLeft": {
"type": "boolean",
"nullable": true,
"description": "Only include external tasks that have a positive (\u0026gt; 0) number of retries (or `null`). Value may only be\n`true`, as `false` matches any external task."
},
"noRetriesLeft": {
"type": "boolean",
"nullable": true,
"description": "Only include external tasks that have 0 retries. Value may only be `true`, as `false` matches any\nexternal task."
},
"lockExpirationAfter": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to external tasks that have a lock that expires after a given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
"lockExpirationBefore": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to external tasks that have a lock that expires before a given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.000+0200`."
},
"activityId": {
"type": "string",
"description": "Filter by the id of the activity that an external task is created for."
},
"activityIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by the comma-separated list of ids of the activities that an external task is created for."
},
"executionId": {
"type": "string",
"description": "Filter by the id of the execution that an external task belongs to."
},
"processInstanceId": {
"type": "string",
"description": "Filter by the id of the process instance that an external task belongs to."
},
"processInstanceIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a comma-separated list of process instance ids that an external task may belong to."
},
"processDefinitionId": {
"type": "string",
"description": "Filter by the id of the process definition that an external task belongs to."
},
"tenantIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a comma-separated list of tenant ids.\nAn external task must have one of the given tenant ids."
},
"active": {
"type": "boolean",
"nullable": true,
"description": "Only include active tasks. Value may only be `true`, as `false` matches any external task."
},
"suspended": {
"type": "boolean",
"nullable": true,
"description": "Only include suspended tasks. Value may only be `true`, as `false` matches any external task."
},
"priorityHigherThanOrEquals": {
"type": "integer",
"format": "int64",
"nullable": true,
"description": "Only include jobs with a priority higher than or equal to the given value.\nValue must be a valid `long` value."
},
"priorityLowerThanOrEquals": {
"type": "integer",
"format": "int64",
"nullable": true,
"description": "Only include jobs with a priority lower than or equal to the given value.\nValue must be a valid `long` value."
},
"sorting": {
"type": "array",
"description": "A JSON array of criteria to sort the result by. Each element of the array is a JSON object that\n specifies one ordering. The position in the array identifies the rank of an ordering, i.e., whether\n it is primary, secondary, etc. The ordering objects have the following properties:\n\n **Note:** The `sorting` properties will not be applied to the External Task count query.",
"items": {
"type": "object",
"properties": {
"sortBy": {
"type": "string",
"enum": [
"id",
"lockExpirationTime",
"processInstanceId",
"processDefinitionId",
"processDefinitionKey",
"taskPriority",
"tenantId"
],
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
"sortOrder": {
"type": "string",
"enum": [
"asc",
"desc"
],
"description": "Sort the results in a given order. Values may be `asc` for ascending order or `desc` for\ndescending order. Must be used in conjunction with the sortBy parameter."
}
}
}
}
}
},
"FetchExternalTaskTopicDto": {
"type": "object",
"required": [
"topicName",
"lockDuration"
],
"properties": {
"topicName": {
"type": "string",
"description": "**Mandatory.** The topic\u0027s name."
},
"lockDuration": {
"type": "integer",
"format": "int64",
"nullable": true,
"description": "**Mandatory.** The duration to lock the external tasks for in milliseconds."
},
"variables": {
"type": "array",
"items": {
"type": "string"
},
"description": "A JSON array of `String` values that represent variable names. For each result task belonging to this\ntopic, the given variables are returned as well if they are accessible from the external task\u0027s\nexecution. If not provided - all variables will be fetched."
},
"localVariables": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "If `true` only local variables will be fetched."
},
"businessKey": {
"type": "string",
"description": "A `String` value which enables the filtering of tasks based on process instance business key."
},
"processDefinitionId": {
"type": "string",
"description": "Filter tasks based on process definition id."
},
"processDefinitionIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter tasks based on process definition ids."
},
"processDefinitionKey": {
"type": "string",
"description": "Filter tasks based on process definition key."
},
"processDefinitionKeyIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter tasks based on process definition keys."
},
"processDefinitionVersionTag": {
"type": "string",
"description": "Filter tasks based on process definition version tag."
},
"withoutTenantId": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Filter tasks without tenant id."
},
"tenantIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter tasks based on tenant ids."
},
"processVariables": {
"type": "object",
"additionalProperties": true,
"description": "A `JSON` object used for filtering tasks based on process instance variable values. A property name of\nthe object represents a process variable name, while the property value represents the process variable\nvalue to filter tasks by."
},
"deserializeValues": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Determines whether serializable variable values (typically variables that store custom Java objects)\nshould be deserialized on server side (default `false`).\n\nIf set to `true`, a serializable variable will be deserialized on server side and transformed to JSON\nusing [Jackson\u0027s](https://github.com/FasterXML/jackson) POJO/bean property introspection feature. Note\nthat this requires the Java classes of the variable value to be on the REST API\u0027s classpath.\n\nIf set to `false`, a serializable variable will be returned in its serialized format. For example, a\nvariable that is serialized as XML will be returned as a JSON string containing XML."
}
}
},
"FetchExternalTasksDto": {
"type": "object",
"required": [
"workerId",
"maxTasks"
],
"properties": {
"workerId": {
"type": "string",
"description": "**Mandatory.** The id of the worker on which behalf tasks are fetched. The returned tasks are locked for\nthat worker and can only be completed when providing the same worker id."
},
"maxTasks": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "**Mandatory.** The maximum number of tasks to return."
},
"usePriority": {
"type": "boolean",
"nullable": true,
"description": "A `boolean` value, which indicates whether the task should be fetched based on its priority\nor arbitrarily."
},
"asyncResponseTimeout": {
"type": "integer",
"format": "int64",
"nullable": true,
"description": "The [Long Polling](https://docs.camunda.org/manual/7.13/user-guide/process-engine/external-tasks/#long-polling-to-fetch-and-lock-external-tasks)\ntimeout in milliseconds.\n\n**Note:** The value cannot be set larger than 1.800.000 milliseconds (corresponds to 30 minutes)."
},
"topics": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FetchExternalTaskTopicDto"
},
"description": "A JSON array of topic objects for which external tasks should be fetched. The returned tasks may be\narbitrarily distributed among these topics. Each topic object has the following properties:"
}
}
},
"FormDto": {
"title": "FormDto",
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The form key."
},
"contextPath": {
"type": "string",
"description": "The context path of the process application. If the task (or the process definition) does not\nbelong to a process application deployment or a process definition at all, this\nproperty is not set."
}
}
},
"HistoricProcessInstanceQueryDto": {
"type": "object",
"description": "A historic process instance query which defines a group of historic process instances",
"properties": {
"processInstanceId": {
"type": "string",
"description": "Filter by process instance id."
},
"processInstanceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by process instance ids. Must be a JSON array process instance ids."
},
"processDefinitionId": {
"type": "string",
"description": "Filter by the process definition the instances run on."
},
"processDefinitionKey": {
"type": "string",
"description": "Filter by the key of the process definition the instances run on."
},
"processDefinitionKeyIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a list of process definition keys.\nA process instance must have one of the given process definition keys. Must be a JSON array of Strings."
},
"processDefinitionName": {
"type": "string",
"description": "Filter by the name of the process definition the instances run on."
},
"processDefinitionNameLike": {
"type": "string",
"description": "Filter by process definition names that the parameter is a substring of."
},
"processDefinitionKeyNotIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Exclude instances that belong to a set of process definitions.\nMust be a JSON array of process definition keys."
},
"processInstanceBusinessKey": {
"type": "string",
"description": "Filter by process instance business key."
},
"processInstanceBusinessKeyLike": {
"type": "string",
"description": "Filter by process instance business key that the parameter is a substring of."
},
"rootProcessInstances": {
"type": "boolean",
"nullable": true,
"description": "Restrict the query to all process instances that are top level process instances."
},
"finished": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include finished process instances. Value may only be true, as false is the default behavior."
},
"unfinished": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include unfinished process instances. Value may only be true, as false is the default behavior."
},
"withIncidents": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include process instances which have an incident. Value may only be true, as false is the default behavior."
},
"withRootIncidents": {
"type": "boolean",
"nullable": true,
"default": "false",
"description": "Only include process instances which have a root incident. Value may only be true, as false is the default behavior."
},
"incidentType": {
"type": "string",
"description": "Filter by the incident type.\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types) for a list of incident types. "
},
"incidentStatus": {
"type": "string",
"enum": [
"open",
"resolved"
],
"description": "Only include process instances which have an incident in status either open or resolved.\nTo get all process instances, use the query parameter withIncidents."
},
"incidentMessage": {
"type": "string",
"description": "Filter by the incident message. Exact match."
},
"incidentMessageLike": {
"type": "string",
"description": "Filter by the incident message that the parameter is a substring of."
},
"startedBefore": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to instances that were started before the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
},
"startedAfter": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to instances that were started after the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
},
"finishedBefore": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to instances that were finished before the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
},
"finishedAfter": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to instances that were finished after the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
},
"executedActivityAfter": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to instances that executed an activity after the given date (inclusive).\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
},
"executedActivityBefore": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to instances that executed an activity before the given date (inclusive).\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
},
"executedJobAfter": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to instances that executed an job after the given date (inclusive).\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
},
"executedJobBefore": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to instances that executed an job before the given date (inclusive).\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
},
"startedBy": {
"type": "string",
"description": "Only include process instances that were started by the given user."
},
"superProcessInstanceId": {
"type": "string",
"description": "Restrict query to all process instances that are sub process instances of the given process instance.\nTakes a process instance id."
},
"subProcessInstanceId": {
"type": "string",
"description": "Restrict query to one process instance that has a sub process instance with the given id."
},
"superCaseInstanceId": {
"type": "string",
"description": "Restrict query to all process instances that are sub process instances of the given case instance.\nTakes a case instance id."
},
"subCaseInstanceId": {
"type": "string",
"description": "Restrict query to one process instance that has a sub case instance with the given id."
},
"caseInstanceId": {
"type": "string",
"description": "Restrict query to all process instances that are sub process instances of the given case instance.\nTakes a case instance id."
},
"tenantIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a list of tenant ids. A process instance must have one of the given tenant ids.\nMust be a JSON array of Strings."
},
"withoutTenantId": {
"type": "boolean",
"nullable": true,
"description": "Only include historic process instances which belong to no tenant.\nValue may only be true, as false is the default behavior."
},
"executedActivityIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Restrict to instances that executed an activity with one of given ids."
},
"activeActivityIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Restrict to instances that have an active activity with one of given ids."
},
"active": {
"type": "boolean",
"nullable": true,
"description": "Restrict to instances that are active."
},
"suspended": {
"type": "boolean",
"nullable": true,
"description": "Restrict to instances that are suspended."
},
"completed": {
"type": "boolean",
"nullable": true,
"description": "Restrict to instances that are completed."
},
"externallyTerminated": {
"type": "boolean",
"nullable": true,
"description": "Restrict to instances that are externallyTerminated."
},
"internallyTerminated": {
"type": "boolean",
"nullable": true,
"description": "Restrict to instances that are internallyTerminated."
},
"variables": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VariableQueryParameterDto"
},
"description": "A JSON array to only include process instances that have/had variables with certain values.\nThe array consists of objects with the three properties `name`, `operator` and `value`.\n`name` (String) is the variable name,\n`operator` (String) is the comparison operator to be used and\n`value` the variable value.\n`value` may be String, Number or Boolean.\nValid operator values are: `eq` - equal to; `neq` - not equal to; `gt` - greater than; `gteq` - greater than or equal to;\n`lt` - lower than; `lteq` - lower than or equal to; `like`."
},
"variableNamesIgnoreCase": {
"type": "boolean",
"nullable": true,
"description": "Match all variable names provided in variables case-insensitively.\nIf set to true variableName and variablename are treated as equal."
},
"variableValuesIgnoreCase": {
"type": "boolean",
"nullable": true,
"description": "Match all variable values provided in variables case-insensitively.\nIf set to true variableValue and variablevalue are treated as equal."
},
"orQueries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/HistoricProcessInstanceQueryDto"
},
"description": "A JSON array of nested historic process instance queries with OR semantics.\nA process instance matches a nested query if it fulfills at least one of the query\u0027s predicates.\nWith multiple nested queries, a process instance must fulfill at least one predicate of each query (Conjunctive Normal Form).\nAll process instance query properties can be used except for: sorting\nSee the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/process-engine-api/#or-queries) for more information about OR queries."
},
"sorting": {
"type": "array",
"description": "Apply sorting of the result",
"items": {
"type": "object",
"properties": {
"sortBy": {
"type": "string",
"enum": [
"instanceId",
"definitionId",
"definitionKey",
"definitionName",
"definitionVersion",
"businessKey",
"startTime",
"endTime",
"duration",
"tenantId"
],
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
"sortOrder": {
"type": "string",
"enum": [
"asc",
"desc"
],
"description": "Sort the results in a given order. Values may be `asc` for ascending order or `desc` for\ndescending order. Must be used in conjunction with the sortBy parameter."
}
}
}
}
}
},
"HistoryTimeToLiveDto": {
"type": "object",
"properties": {
"historyTimeToLive": {
"type": "integer",
"format": "int32",
"nullable": true,
"minimum": 0,
"description": "New value for historyTimeToLive field of the definition.\nCan be `null`. Can not be negative."
}
}
},
"IdentityLinkDto": {
"type": "object",
"required": [
"type"
],
"properties": {
"userId": {
"type": "string",
"description": "The id of the user participating in this link. Either `userId` or `groupId` is set."
},
"groupId": {
"type": "string",
"description": "The id of the group participating in this link. Either `groupId` or `userId` is set."
},
"type": {
"type": "string",
"description": "The type of the identity link. The value of the this property can be user-defined. The Process Engine\nprovides three pre-defined Identity Link `type`s:\n\n* `candidate`\n* `assignee` - reserved for the task assignee\n* `owner` - reserved for the task owner\n\n**Note**: When adding or removing an Identity Link, the `type` property must be defined."
}
}
},
"IncidentStatisticsResultDto": {
"type": "object",
"properties": {
"incidentType": {
"type": "string",
"description": "The type of the incident the number of incidents is aggregated for. See the [User Guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/incidents/#incident-types) for a list of incident types."
},
"incidentCount": {
"type": "integer",
"format": "int32",
"description": "The total number of incidents for the corresponding incident type."
}
}
},
"LinkableDto": {
"type": "object",
"properties": {
"links": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AtomLink"
},
"description": "The links associated to this resource, with `method`, `href` and `rel`."
}
}
},
"LockedExternalTaskDto": {
"title": "LockedExternalTaskDto",
"type": "object",
"properties": {
"activityId": {
"type": "string",
"description": "The id of the activity that this external task belongs to."
},
"activityInstanceId": {
"type": "string",
"description": "The id of the activity instance that the external task belongs to."
},
"errorMessage": {
"type": "string",
"description": "The full error message submitted with the latest reported failure executing this task;`null` if no failure\nwas reported previously or if no error message was submitted"
},
"errorDetails": {
"type": "string",
"description": "The error details submitted with the latest reported failure executing this task.`null` if no failure was\nreported previously or if no error details was submitted"
},
"executionId": {
"type": "string",
"description": "The id of the execution that the external task belongs to."
},
"id": {
"type": "string",
"description": "The id of the external task."
},
"lockExpirationTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The date that the task\u0027s most recent lock expires or has expired."
},
"processDefinitionId": {
"type": "string",
"description": "The id of the process definition the external task is defined in."
},
"processDefinitionKey": {
"type": "string",
"description": "The key of the process definition the external task is defined in."
},
"processDefinitionVersionTag": {
"type": "string",
"description": "The version tag of the process definition the external task is defined in."
},
"processInstanceId": {
"type": "string",
"description": "The id of the process instance the external task belongs to."
},
"tenantId": {
"type": "string",
"description": "The id of the tenant the external task belongs to."
},
"retries": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "The number of retries the task currently has left."
},
"suspended": {
"type": "boolean",
"nullable": true,
"description": "Whether the process instance the external task belongs to is suspended."
},
"workerId": {
"type": "string",
"description": "The id of the worker that posesses or posessed the most recent lock."
},
"priority": {
"type": "integer",
"format": "int64",
"nullable": true,
"description": "The priority of the external task."
},
"topicName": {
"type": "string",
"description": "The topic name of the external task."
},
"businessKey": {
"type": "string",
"description": "The business key of the process instance the external task belongs to."
},
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A JSON object containing a property for each of the requested variables. The key is the variable name,\nthe value is a JSON object of serialized variable values with the following properties:"
}
}
},
"MessageCorrelationResultWithVariableDto": {
"type": "object",
"description": "The `processInstance` property only has a value if the resultType is set to `ProcessDefinition`.\nThe processInstance with the properties as described in the\n[get single instance](https://docs.camunda.org/manual/7.13/reference/rest/process-instance/get/) method.\n\nThe `execution` property only has a value if the resultType is set to `Execution`.\nThe execution with the properties as described in the\n[get single execution](https://docs.camunda.org/manual/7.13/reference/rest/execution/get/) method.",
"properties": {
"resultType": {
"type": "string",
"enum": [
"Execution",
"ProcessDefinition"
],
"description": "Indicates if the message was correlated to a message start event or an \nintermediate message catching event. In the first case, the resultType is \n`ProcessDefinition` and otherwise `Execution`."
},
"processInstance": {
"$ref": "#/components/schemas/ProcessInstanceDto"
},
"execution": {
"$ref": "#/components/schemas/ExecutionDto"
},
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "This property is returned if the `variablesInResultEnabled` is set to `true`.\nContains a list of the process variables. "
}
}
},
"MetricsIntervalResultDto": {
"type": "object",
"properties": {
"timestamp": {
"type": "string",
"format": "date-time",
"description": "The interval timestamp."
},
"name": {
"type": "string",
"description": "The name of the metric."
},
"reporter": {
"type": "string",
"description": "The reporter of the metric. `null` if the metrics are aggregated by reporter."
},
"value": {
"type": "integer",
"format": "int64",
"description": "The value of the metric aggregated by the interval."
}
}
},
"MetricsResultDto": {
"type": "object",
"properties": {
"result": {
"type": "integer",
"format": "int64",
"description": "The current sum (count) for the selected metric."
}
}
},
"MissingAuthorizationDto": {
"type": "object",
"properties": {
"permissionName": {
"type": "string",
"description": "The permission name that the user is missing."
},
"resourceName": {
"type": "string",
"description": "The name of the resource that the user is missing permission for."
},
"resourceId": {
"type": "string",
"description": "The id of the resource that the user is missing permission for."
}
}
},
"MultiFormAttachmentDto": {
"type": "object",
"properties": {
"attachment-name": {
"type": "string",
"description": "The name of the attachment."
},
"attachment-description": {
"type": "string",
"description": "The description of the attachment."
},
"attachment-type": {
"type": "string",
"description": "The type of the attachment."
},
"url": {
"type": "string",
"description": "The url to the remote content of the attachment."
},
"content": {
"type": "string",
"format": "binary",
"nullable": true,
"description": "The content of the attachment."
}
}
},
"MultiFormDeploymentDto": {
"type": "object",
"properties": {
"tenant-id": {
"type": "string",
"description": "The tenant id for the deployment to be created."
},
"deployment-source": {
"type": "string",
"description": "The source for the deployment to be created."
},
"deploy-changed-only": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "A flag indicating whether the process engine should perform duplicate checking on a per-resource basis.\nIf set to true, only those resources that have actually changed are deployed.\nChecks are made against resources included previous deployments of the same name and only against the latest versions of those resources.\nIf set to true, the option enable-duplicate-filtering is overridden and set to true."
},
"enable-duplicate-filtering": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "A flag indicating whether the process engine should perform duplicate checking for the deployment or not.\nThis allows you to check if a deployment with the same name and the same resouces already exists and\nif true, not create a new deployment but instead return the existing deployment. The default value is false."
},
"deployment-name": {
"type": "string",
"description": "The name for the deployment to be created."
},
"data": {
"type": "string",
"format": "binary",
"nullable": true,
"description": "The binary data to create the deployment resource.\nIt is possible to have more than one form part with different form part names for the binary data to create a deployment."
}
}
},
"MultiFormVariableBinaryDto": {
"type": "object",
"properties": {
"data": {
"type": "string",
"format": "binary",
"nullable": true,
"description": "The binary data to be set.\nFor File variables, this multipart can contain the filename, binary value and MIME type of the file variable to be set\nOnly the filename is mandatory."
},
"valueType": {
"type": "string",
"enum": [
"Bytes",
"File"
],
"description": "The name of the variable type. Either Bytes for a byte array variable or File for a file variable."
}
}
},
"ParseExceptionDto": {
"allOf": [
{
"type": "object",
"properties": {
"details": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/ResourceReportDto"
},
"description": "A JSON Object containing list of errors and warnings occurred during deployment."
}
}
},
{
"$ref": "#/components/schemas/ExceptionDto"
}
]
},
"PatchVariablesDto": {
"type": "object",
"properties": {
"modifications": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A JSON object containing variable key-value pairs."
},
"deletions": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of String keys of variables to be deleted."
}
}
},
"PriorityDto": {
"type": "object",
"properties": {
"priority": {
"type": "integer",
"format": "int64",
"nullable": true,
"description": "The priority of the resource."
}
}
},
"ProblemDto": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The message of the problem."
},
"line": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "The line where the problem occurred."
},
"column": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "The column where the problem occurred."
},
"mainElementId": {
"type": "string",
"description": "The main element id where the problem occurred."
},
"elementIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of element id affected by the problem."
}
}
},
"ProcessDefinitionDiagramDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the process definition."
},
"bpmn20Xml": {
"type": "string",
"description": "An escaped XML string containing the XML that this definition was deployed with.\nCarriage returns, line feeds and quotation marks are escaped."
}
}
},
"ProcessDefinitionDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the process definition"
},
"key": {
"type": "string",
"description": "The key of the process definition, i.e., the id of the BPMN 2.0 XML process definition."
},
"category": {
"type": "string",
"description": "The category of the process definition."
},
"description": {
"type": "string",
"description": "The description of the process definition."
},
"name": {
"type": "string",
"description": "The name of the process definition."
},
"version": {
"type": "integer",
"format": "int32",
"description": "The version of the process definition that the engine assigned to it."
},
"resource": {
"type": "string",
"description": "The file name of the process definition."
},
"deploymentId": {
"type": "string",
"description": "The deployment id of the process definition."
},
"diagram": {
"type": "string",
"description": "The file name of the process definition diagram, if it exists."
},
"suspended": {
"type": "boolean",
"description": "A flag indicating whether the definition is suspended or not."
},
"tenantId": {
"type": "string",
"description": "The tenant id of the process definition."
},
"versionTag": {
"type": "string",
"description": "The version tag of the process definition."
},
"historyTimeToLive": {
"type": "integer",
"format": "int32",
"nullable": true,
"minimum": 0,
"description": "History time to live value of the process definition.\nIs used within [History cleanup](https://docs.camunda.org/manual/7.13/user-guide/process-engine/history/#history-cleanup)."
},
"startableInTasklist": {
"type": "boolean",
"description": "A flag indicating whether the process definition is startable in Tasklist or not."
}
}
},
"ProcessDefinitionStatisticsResultDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the process definition the results are aggregated for."
},
"instances": {
"type": "integer",
"format": "int32",
"description": "The total number of running process instances of this process definition."
},
"failedJobs": {
"type": "integer",
"format": "int32",
"description": "The total number of failed jobs for the running instances.\n**Note**: Will be `0` (not `null`), if failed jobs were excluded."
},
"incidents": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IncidentStatisticsResultDto"
},
"description": "Each item in the resulting array is an object which contains `incidentType` and `incidentCount`.\n**Note**: Will be an empty array, if `incidents` or `incidentsForType` were excluded.\nFurthermore, the array will be also empty if no incidents were found."
},
"definition": {
"$ref": "#/components/schemas/ProcessDefinitionDto"
}
}
},
"ProcessDefinitionSuspensionStateDto": {
"type": "object",
"properties": {
"suspended": {
"type": "boolean",
"nullable": true,
"description": "A `Boolean` value which indicates whether to activate or suspend all process definitions with the given key.\nWhen the value is set to `true`, all process definitions with the given key will be suspended and\nwhen the value is set to `false`, all process definitions with the given key will be activated."
},
"processDefinitionId": {
"type": "string",
"description": "The id of the process definitions to activate or suspend."
},
"processDefinitionKey": {
"type": "string",
"description": "\tThe key of the process definitions to activate or suspend."
},
"includeProcessInstances": {
"type": "boolean",
"nullable": true,
"description": "A `Boolean` value which indicates whether to activate or suspend also all process instances of \nthe process definitions with the given key.\nWhen the value is set to `true`, all process instances of the process definitions with the given key\nwill be activated or suspended and when the value is set to `false`, the suspension state of \nall process instances of the process definitions with the given key will not be updated."
},
"executionDate": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The date on which all process definitions with the given key will be activated or suspended.\nIf `null`, the suspension state of all process definitions with the given key is updated immediately.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/),\nthe date must have the format yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ, e.g., 2013-01-23T14:42:45.000+0200."
}
}
},
"ProcessEngineDto": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the process engine."
}
}
},
"ProcessInstanceDto": {
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the process instance."
},
"definitionId": {
"type": "string",
"description": "The id of the process definition that this process instance belongs to."
},
"businessKey": {
"type": "string",
"description": "The business key of the process instance."
},
"caseInstanceId": {
"type": "string",
"description": "The id of the case instance associated with the process instance."
},
"ended": {
"type": "boolean",
"deprecated": true,
"description": "A flag indicating whether the process instance has ended or not. Deprecated: will always be false!"
},
"suspended": {
"type": "boolean",
"description": "A flag indicating whether the process instance is suspended or not."
},
"tenantId": {
"type": "string",
"description": "The tenant id of the process instance."
}
}
},
{
"$ref": "#/components/schemas/LinkableDto"
}
]
},
"ProcessInstanceModificationDto": {
"type": "object",
"properties": {
"skipCustomListeners": {
"type": "boolean",
"nullable": true,
"description": "Skip execution listener invocation for activities that are started or ended as part of this request."
},
"skipIoMappings": {
"type": "boolean",
"nullable": true,
"description": "Skip execution of [input/output variable mappings](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/#input-output-variable-mapping)\nfor activities that are started or ended as part of this request."
},
"instructions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessInstanceModificationInstructionDto"
},
"description": "JSON array of modification instructions. The instructions are executed in the order they are in."
},
"annotation": {
"type": "string",
"description": "An arbitrary text annotation set by a user for auditing reasons."
}
}
},
"ProcessInstanceModificationInstructionDto": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"cancel",
"startBeforeActivity",
"startAfterActivity",
"startTransition"
],
"description": "**Mandatory**. One of the following values: `cancel`, `startBeforeActivity`, `startAfterActivity`, `startTransition`.\n\n* A cancel instruction requests cancellation of a single activity instance or all instances of one activity.\n* A startBeforeActivity instruction requests to enter a given activity.\n* A startAfterActivity instruction requests to execute the single outgoing sequence flow of a given activity.\n* A startTransition instruction requests to execute a specific sequence flow."
},
"variables": {
"$ref": "#/components/schemas/TriggerVariableValueDto"
},
"activityId": {
"type": "string",
"description": "Can be used with instructions of types `startTransition`. Specifies the sequence flow to start."
},
"transitionId": {
"type": "string",
"description": "Can be used with instructions of types `startTransition`. Specifies the sequence flow to start."
},
"activityInstanceId": {
"type": "string",
"description": "Can be used with instructions of type `cancel`. Specifies the activity instance to cancel.\nValid values are the activity instance IDs supplied by the [Get Activity Instance request](https://docs.camunda.org/manual/7.13/reference/rest/process-instance/get-activity-instances/)."
},
"transitionInstanceId": {
"type": "string",
"description": "Can be used with instructions of type `cancel`. Specifies the transition instance to cancel.\nValid values are the transition instance IDs supplied by the [Get Activity Instance request](https://docs.camunda.org/manual/7.13/reference/rest/process-instance/get-activity-instances/)."
},
"ancestorActivityInstanceId": {
"type": "string",
"description": "Can be used with instructions of type `startBeforeActivity`, `startAfterActivity`, and `startTransition`.\nValid values are the activity instance IDs supplied by the Get Activity Instance request.\nIf there are multiple parent activity instances of the targeted activity,\nthis specifies the ancestor scope in which hierarchy the activity/transition is to be instantiated.\n\nExample: When there are two instances of a subprocess and an activity contained in the subprocess is to be started,\nthis parameter allows to specifiy under which subprocess instance the activity should be started."
},
"cancelCurrentActiveActivityInstances": {
"type": "boolean",
"nullable": true,
"description": "Can be used with instructions of type cancel. Prevents the deletion of new created activity instances."
}
}
},
"ProcessInstanceQueryDto": {
"type": "object",
"description": "A process instance query which defines a group of process instances",
"properties": {
"deploymentId": {
"type": "string",
"description": "Filter by the deployment the id belongs to."
},
"processDefinitionId": {
"type": "string",
"description": "Filter by the process definition the instances run on."
},
"processDefinitionKey": {
"type": "string",
"description": "Filter by the key of the process definition the instances run on."
},
"processDefinitionKeyIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a list of process definition keys.\nA process instance must have one of the given process definition keys. Must be a JSON array of Strings."
},
"processDefinitionKeyNotIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Exclude instances by a list of process definition keys.\nA process instance must not have one of the given process definition keys. Must be a JSON array of Strings."
},
"businessKey": {
"type": "string",
"description": "Filter by process instance business key."
},
"businessKeyLike": {
"type": "string",
"description": "Filter by process instance business key that the parameter is a substring of."
},
"caseInstanceId": {
"type": "string",
"description": "Filter by case instance id."
},
"superProcessInstance": {
"type": "string",
"description": "Restrict query to all process instances that are sub process instances of the given process instance.\nTakes a process instance id."
},
"subProcessInstance": {
"type": "string",
"description": "Restrict query to all process instances that have the given process instance as a sub process instance.\nTakes a process instance id."
},
"superCaseInstance": {
"type": "string",
"description": "Restrict query to all process instances that are sub process instances of the given case instance.\nTakes a case instance id."
},
"subCaseInstance": {
"type": "string",
"description": "Restrict query to all process instances that have the given case instance as a sub case instance.\nTakes a case instance id."
},
"active": {
"type": "boolean",
"nullable": true,
"description": "Only include active process instances. Value may only be true, as false is the default behavior."
},
"suspended": {
"type": "boolean",
"nullable": true,
"description": "Only include suspended process instances. Value may only be true, as false is the default behavior."
},
"processInstanceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a list of process instance ids. Must be a JSON array of Strings."
},
"withIncident": {
"type": "boolean",
"nullable": true,
"description": "Filter by presence of incidents. Selects only process instances that have an incident."
},
"incidentId": {
"type": "string",
"description": "Filter by the incident id."
},
"incidentType": {
"type": "string",
"description": "Filter by the incident type. See the User Guide for a list of incident types."
},
"incidentMessage": {
"type": "string",
"description": "Filter by the incident message. Exact match."
},
"incidentMessageLike": {
"type": "string",
"description": "Filter by the incident message that the parameter is a substring of."
},
"tenantIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a list of tenant ids. A process instance must have one of the given tenant ids.\nMust be a JSON array of Strings."
},
"withoutTenantId": {
"type": "boolean",
"nullable": true,
"description": "Only include process instances which belong to no tenant.\nValue may only be true, as false is the default behavior."
},
"processDefinitionWithoutTenantId": {
"type": "boolean",
"nullable": true,
"description": "Only include process instances which process definition has no tenant id."
},
"activityIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by a list of activity ids.\nA process instance must currently wait in a leaf activity with one of the given activity ids."
},
"rootProcessInstances": {
"type": "boolean",
"nullable": true,
"description": "Restrict the query to all process instances that are top level process instances."
},
"leafProcessInstances": {
"type": "boolean",
"nullable": true,
"description": "Restrict the query to all process instances that are leaf instances. (i.e. don\u0027t have any sub instances)"
},
"variables": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VariableQueryParameterDto"
},
"description": "A JSON array to only include process instances that have variables with certain values.\nThe array consists of objects with the three properties `name`, `operator` and `value`.\n`name` (String) is the variable name,\n`operator` (String) is the comparison operator to be used and `value` the variable value.\nThe `value` may be String, Number or Boolean.\n\nValid operator values are: `eq` - equal to; `neq` - not equal to; `gt` - greater than;\n`gteq` - greater than or equal to; `lt` - lower than; `lteq` - lower than or equal to; `like`."
},
"variableNamesIgnoreCase": {
"type": "boolean",
"nullable": true,
"description": "Match all variable names in this query case-insensitively.\nIf set to true variableName and variablename are treated as equal."
},
"variableValuesIgnoreCase": {
"type": "boolean",
"nullable": true,
"description": "Match all variable values in this query case-insensitively.\nIf set to true variableValue and variablevalue are treated as equal."
},
"orQueries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessInstanceQueryDto"
},
"description": "A JSON array of nested process instance queries with OR semantics.\nA process instance matches a nested query if it fulfills at least one of the query\u0027s predicates.\nWith multiple nested queries, a process instance must fulfill at least one predicate of each query (Conjunctive Normal Form).\nAll process instance query properties can be used except for: `sorting`\nSee the [User guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/process-engine-api/#or-queries) for more information about OR queries."
},
"sorting": {
"type": "array",
"description": "Apply sorting of the result",
"items": {
"type": "object",
"properties": {
"sortBy": {
"type": "string",
"enum": [
"instanceId",
"definitionId",
"definitionKey",
"businessKey",
"tenantId"
],
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
"sortOrder": {
"type": "string",
"enum": [
"asc",
"desc"
],
"description": "Sort the results in a given order. Values may be `asc` for ascending order or `desc` for\ndescending order. Must be used in conjunction with the sortBy parameter."
}
}
}
}
}
},
"ProcessInstanceSuspensionStateAsyncDto": {
"type": "object",
"properties": {
"suspended": {
"type": "boolean",
"nullable": true,
"description": "A Boolean value which indicates whether to activate or suspend a given process instance.\nWhen the value is set to true, the given process instance will be suspended and when the value is set to false,\nthe given process instance will be activated."
},
"processInstanceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of process instance ids which defines a group of process instances\nwhich will be activated or suspended by the operation."
},
"processInstanceQuery": {
"$ref": "#/components/schemas/ProcessInstanceQueryDto"
},
"historicProcessInstanceQuery": {
"$ref": "#/components/schemas/HistoricProcessInstanceQueryDto"
}
}
},
"ProcessInstanceSuspensionStateDto": {
"type": "object",
"properties": {
"suspended": {
"type": "boolean",
"nullable": true,
"description": "A `Boolean` value which indicates whether to activate or suspend a given process instance.\nWhen the value is set to `true`, the given process instance will be suspended and when the value is set to `false`,\nthe given process instance will be activated."
},
"processDefinitionId": {
"type": "string",
"description": "The process definition id of the process instances to activate or suspend.\n\n**Note**: This parameter can be used only with combination of `suspended`."
},
"processDefinitionKey": {
"type": "string",
"description": "The process definition key of the process instances to activate or suspend.\n\n**Note**: This parameter can be used only with combination of `suspended`, `processDefinitionTenantId`, and `processDefinitionWithoutTenantId`."
},
"processDefinitionTenantId": {
"type": "string",
"description": "Only activate or suspend process instances of a process definition which belongs to a tenant with the given id.\n\n**Note**: This parameter can be used only with combination of `suspended`, `processDefinitionKey`, and `processDefinitionWithoutTenantId`."
},
"processDefinitionWithoutTenantId": {
"type": "boolean",
"nullable": true,
"description": "Only activate or suspend process instances of a process definition which belongs to no tenant.\nValue may only be true, as false is the default behavior.\n\n**Note**: This parameter can be used only with combination of `suspended`, `processDefinitionKey`, and `processDefinitionTenantId`."
},
"processInstanceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of process instance ids which defines a group of process instances\nwhich will be activated or suspended by the operation.\n\n**Note**: This parameter can be used only with combination of `suspended`, `processInstanceQuery`, and `historicProcessInstanceQuery`."
},
"processInstanceQuery": {
"$ref": "#/components/schemas/ProcessInstanceQueryDto"
},
"historicProcessInstanceQuery": {
"$ref": "#/components/schemas/HistoricProcessInstanceQueryDto"
}
}
},
"ProcessInstanceWithVariablesDto": {
"allOf": [
{
"type": "object",
"properties": {
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "The id of the process instance."
}
}
},
{
"$ref": "#/components/schemas/ProcessInstanceDto"
}
]
},
"RedeploymentDto": {
"title": "RedeploymentDto",
"type": "object",
"description": "A JSON object with the following properties:",
"properties": {
"resourceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of deployment resource ids to re-deploy."
},
"resourceNames": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of deployment resource names to re-deploy."
},
"source": {
"type": "string",
"description": "Sets the source of the deployment."
}
}
},
"ResourceReportDto": {
"type": "object",
"properties": {
"errors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProblemDto"
},
"description": "A list of errors occurred during parsing."
},
"warnings": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProblemDto"
},
"description": "A list of warnings occurred during parsing."
}
}
},
"RestartProcessInstanceDto": {
"type": "object",
"properties": {
"processInstanceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of process instance ids to restart."
},
"historicProcessInstanceQuery": {
"$ref": "#/components/schemas/HistoricProcessInstanceQueryDto"
},
"skipCustomListeners": {
"type": "boolean",
"nullable": true,
"description": "Skip execution listener invocation for activities that are started as part of this request."
},
"skipIoMappings": {
"type": "boolean",
"nullable": true,
"description": "Skip execution of\n[input/output variable mappings](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/#input-output-variable-mapping)\nfor activities that are started as part of this request."
},
"initialVariables": {
"type": "boolean",
"nullable": true,
"description": "Set the initial set of variables during restart. By default, the last set of variables is used."
},
"withoutBusinessKey": {
"type": "boolean",
"nullable": true,
"description": "Do not take over the business key of the historic process instance."
},
"instructions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/RestartProcessInstanceModificationInstructionDto"
},
"description": "**Optional**. A JSON array of instructions that specify which activities to start the process instance at.\nIf this property is omitted, the process instance starts at its default blank start event."
}
}
},
"RestartProcessInstanceModificationInstructionDto": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"startBeforeActivity",
"startAfterActivity",
"startTransition"
],
"description": "**Mandatory**. One of the following values: `startBeforeActivity`, `startAfterActivity`, `startTransition`.\n\n* A `startBeforeActivity` instruction requests to enter a given activity.\n* A `startAfterActivity` instruction requests to execute the single outgoing sequence flow of a given activity.\n* A `startTransition` instruction requests to execute a specific sequence flow."
},
"activityId": {
"type": "string",
"description": "**Can be used with instructions of types** `startBeforeActivity`\nand `startAfterActivity`. Specifies the sequence flow to start."
},
"transitionId": {
"type": "string",
"description": "**Can be used with instructions of types** `startTransition`.\nSpecifies the sequence flow to start."
}
}
},
"RetriesDto": {
"type": "object",
"properties": {
"retries": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "The number of retries to set for the resource. Must be \u003e\u003d 0. If this is 0, an incident is created\nand the task, or job, cannot be fetched, or acquired anymore unless the retries are increased again.\nCan not be null."
}
}
},
"SchemaLogEntryDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The id of the schema log entry."
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "The date and time of the schema update."
},
"version": {
"type": "string",
"description": "The version of the schema."
}
}
},
"SchemaLogQueryDto": {
"type": "object",
"properties": {
"version": {
"type": "string",
"description": "The version of the schema."
},
"sorting": {
"type": "array",
"description": "A JSON array of criteria to sort the result by. Each element of the array is\n a JSON object that specifies one ordering. The position in the array\n identifies the rank of an ordering, i.e., whether it is primary, secondary,\n etc. ",
"items": {
"type": "object",
"properties": {
"sortBy": {
"type": "string",
"enum": [
"timestamp"
],
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
"sortOrder": {
"type": "string",
"enum": [
"asc",
"desc"
],
"description": "Sort the results in a given order. Values may be `asc` for ascending order or `desc` for\ndescending order. Must be used in conjunction with the sortBy parameter."
}
}
}
}
}
},
"SetJobRetriesByProcessDto": {
"type": "object",
"properties": {
"processInstances": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of process instance ids to fetch jobs, for which retries will be set."
},
"retries": {
"type": "integer",
"format": "int32",
"nullable": true,
"minimum": 0,
"description": "An integer representing the number of retries. Please note that the value cannot be negative or null."
},
"processInstanceQuery": {
"$ref": "#/components/schemas/ProcessInstanceQueryDto"
},
"historicProcessInstanceQuery": {
"$ref": "#/components/schemas/HistoricProcessInstanceQueryDto"
}
}
},
"SetRetriesForExternalTasksDto": {
"type": "object",
"properties": {
"retries": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "The number of retries to set for the external task. Must be \u003e\u003d 0. If this is 0, an incident is created\nand the task cannot be fetched anymore unless the retries are increased again. Can not be null."
},
"externalTaskIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The ids of the external tasks to set the number of retries for."
},
"processInstanceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The ids of process instances containing the tasks to set the number of retries for."
},
"externalTaskQuery": {
"$ref": "#/components/schemas/ExternalTaskQueryDto"
},
"processInstanceQuery": {
"$ref": "#/components/schemas/ProcessInstanceQueryDto"
},
"historicProcessInstanceQuery": {
"$ref": "#/components/schemas/HistoricProcessInstanceQueryDto"
}
}
},
"SignalDto": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the signal to deliver.\n\n**Note**: This property is mandatory."
},
"executionId": {
"type": "string",
"description": "Optionally specifies a single execution which is notified by the signal.\n\n**Note**: If no execution id is defined the signal is broadcasted to all subscribed\nhandlers. "
},
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A JSON object containing variable key-value pairs. Each key is a variable name and\neach value a JSON variable value object."
},
"tenantId": {
"type": "string",
"description": "Specifies a tenant to deliver the signal. The signal can only be received on\nexecutions or process definitions which belongs to the given tenant.\n\n**Note**: Cannot be used in combination with executionId."
},
"withoutTenantId": {
"type": "boolean",
"nullable": true,
"description": "If true the signal can only be received on executions or process definitions which\nbelongs to no tenant. Value may not be false as this is the default behavior.\n\n**Note**: Cannot be used in combination with `executionId`."
}
}
},
"SortTaskQueryParametersDto": {
"type": "object",
"description": "Mandatory when `sortBy` is one of the following values: `processVariable`, `executionVariable`,\n`taskVariable`, `caseExecutionVariable` or `caseInstanceVariable`. Must be a JSON object with the properties\n`variable` and `type` where `variable` is a variable name and `type` is the name of a variable value type.",
"properties": {
"variable": {
"type": "string",
"description": "The name of the variable to sort by."
},
"type": {
"type": "string",
"description": "The name of the type of the variable value."
}
}
},
"StartProcessInstanceDto": {
"type": "object",
"properties": {
"businessKey": {
"type": "string",
"description": "The business key of the process instance."
},
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": ""
},
"caseInstanceId": {
"type": "string",
"description": "The case instance id the process instance is to be initialized with."
},
"startInstructions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProcessInstanceModificationInstructionDto"
},
"description": "**Optional**. A JSON array of instructions that specify which activities to start the process instance at.\nIf this property is omitted, the process instance starts at its default blank start event."
},
"skipCustomListeners": {
"type": "boolean",
"nullable": true,
"description": "Skip execution listener invocation for activities that are started or ended as part of this request.\n**Note**: This option is currently only respected when start instructions are submitted\nvia the `startInstructions` property."
},
"skipIoMappings": {
"type": "boolean",
"nullable": true,
"description": "Skip execution of\n[input/output variable mappings](https://docs.camunda.org/manual/7.13/user-guide/process-engine/variables/#input-output-variable-mapping)\nfor activities that are started or ended as part of this request.\n**Note**: This option is currently only respected when start instructions are submitted\nvia the `startInstructions` property."
},
"withVariablesInReturn": {
"type": "boolean",
"nullable": true,
"description": "Indicates if the variables, which was used by the process instance during execution, should be returned.\nDefault value: `false`"
}
}
},
"StartProcessInstanceFormDto": {
"type": "object",
"properties": {
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": ""
},
"businessKey": {
"type": "string",
"description": "The business key the process instance is to be initialized with.\nThe business key uniquely identifies the process instance in the context of the given process definition."
}
}
},
"SuspensionStateDto": {
"type": "object",
"properties": {
"suspended": {
"type": "boolean",
"description": "A Boolean value which indicates whether to activate or suspend a given process instance.\nWhen the value is set to true, the given process instance will be suspended and when the value is set to false,\nthe given process instance will be activated."
}
}
},
"TaskBpmnErrorDto": {
"type": "object",
"properties": {
"errorCode": {
"type": "string",
"description": "An error code that indicates the predefined error. It is used to identify the BPMN\nerror handler."
},
"errorMessage": {
"type": "string",
"description": "An error message that describes the error."
},
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A JSON object containing variable key-value pairs."
}
}
},
"TaskDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The task id."
},
"name": {
"type": "string",
"description": "The task name."
},
"assignee": {
"type": "string",
"description": "The assignee\u0027s id."
},
"owner": {
"type": "string",
"description": "The owner\u0027s id."
},
"created": {
"type": "string",
"format": "date-time",
"description": "The date the task was created on.\n[Default format](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/)\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`."
},
"due": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The task\u0027s due date.\n[Default format](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/)\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`."
},
"followUp": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The follow-up date for the task.\n[Default format](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/)\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`."
},
"delegationState": {
"type": "string",
"enum": [
"PENDING",
"RESOLVED"
],
"description": "The task\u0027s delegation state. Possible values are `PENDING` and `RESOLVED`."
},
"description": {
"type": "string",
"description": "The task\u0027s description."
},
"executionId": {
"type": "string",
"description": "The id of the execution the task belongs to."
},
"parentTaskId": {
"type": "string",
"description": "The id the parent task, if this task is a subtask."
},
"priority": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "The task\u0027s priority."
},
"processDefinitionId": {
"type": "string",
"description": "The id of the process definition the task belongs to."
},
"processInstanceId": {
"type": "string",
"description": "The id of the process instance the task belongs to."
},
"caseExecutionId": {
"type": "string",
"description": "The id of the case execution the task belongs to."
},
"caseDefinitionId": {
"type": "string",
"description": "The id of the case definition the task belongs to."
},
"caseInstanceId": {
"type": "string",
"description": "The id of the case instance the task belongs to."
},
"taskDefinitionKey": {
"type": "string",
"description": "The task\u0027s key."
},
"suspended": {
"type": "boolean",
"nullable": true,
"description": "Whether the task belongs to a process instance that is suspended."
},
"formKey": {
"type": "string",
"description": "If not `null`, the form key for the task."
},
"tenantId": {
"type": "string",
"description": "If not `null`, the tenant id of the task."
}
}
},
"TaskEscalationDto": {
"type": "object",
"properties": {
"escalationCode": {
"type": "string",
"description": "An escalation code that indicates the predefined escalation. It is used to identify\nthe BPMN escalation handler."
},
"variables": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/VariableValueDto"
},
"description": "A JSON object containing variable key-value pairs."
}
}
},
"TaskQueryDto": {
"type": "object",
"description": "A Task query which defines a group of Tasks.",
"properties": {
"processInstanceId": {
"type": "string",
"description": "Restrict to tasks that belong to process instances with the given id."
},
"processInstanceIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with the given ids."
},
"processInstanceBusinessKey": {
"type": "string",
"description": "Restrict to tasks that belong to process instances with the given business key."
},
"processInstanceBusinessKeyExpression": {
"type": "string",
"description": "Restrict to tasks that belong to process instances with the given business key which \nis described by an expression. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions."
},
"processInstanceBusinessKeyIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Restrict to tasks that belong to process instances with one of the give business keys. \nThe keys need to be in a comma-separated list."
},
"processInstanceBusinessKeyLike": {
"type": "string",
"description": "Restrict to tasks that have a process instance business key that has the parameter \nvalue as a substring."
},
"processInstanceBusinessKeyLikeExpression": {
"type": "string",
"description": "Restrict to tasks that have a process instance business key that has the parameter \nvalue as a substring and is described by an expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
"processDefinitionId": {
"type": "string",
"description": "Restrict to tasks that belong to a process definition with the given id."
},
"processDefinitionKey": {
"type": "string",
"description": "Restrict to tasks that belong to a process definition with the given key."
},
"processDefinitionKeyIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Restrict to tasks that belong to a process definition with one of the given keys. The \nkeys need to be in a comma-separated list."
},
"processDefinitionName": {
"type": "string",
"description": "Restrict to tasks that belong to a process definition with the given name."
},
"processDefinitionNameLike": {
"type": "string",
"description": "Restrict to tasks that have a process definition name that has the parameter value as \na substring."
},
"executionId": {
"type": "string",
"description": "Restrict to tasks that belong to an execution with the given id."
},
"caseInstanceId": {
"type": "string",
"description": "Restrict to tasks that belong to case instances with the given id."
},
"caseInstanceBusinessKey": {
"type": "string",
"description": "Restrict to tasks that belong to case instances with the given business key."
},
"caseInstanceBusinessKeyLike": {
"type": "string",
"description": "Restrict to tasks that have a case instance business key that has the parameter value \nas a substring."
},
"caseDefinitionId": {
"type": "string",
"description": "Restrict to tasks that belong to a case definition with the given id."
},
"caseDefinitionKey": {
"type": "string",
"description": "Restrict to tasks that belong to a case definition with the given key."
},
"caseDefinitionName": {
"type": "string",
"description": "Restrict to tasks that belong to a case definition with the given name."
},
"caseDefinitionNameLike": {
"type": "string",
"description": "Restrict to tasks that have a case definition name that has the parameter value as a \nsubstring."
},
"caseExecutionId": {
"type": "string",
"description": "Restrict to tasks that belong to a case execution with the given id."
},
"activityInstanceIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Only include tasks which belong to one of the passed and comma-separated activity \ninstance ids."
},
"tenantIdIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Only include tasks which belong to one of the passed and comma-separated \ntenant ids."
},
"withoutTenantId": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include tasks which belong to no tenant. Value may only be `true`, \nas `false` is the default behavior."
},
"assignee": {
"type": "string",
"description": "Restrict to tasks that the given user is assigned to."
},
"assigneeExpression": {
"type": "string",
"description": "Restrict to tasks that the user described by the given expression is assigned to. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
"assigneeLike": {
"type": "string",
"description": "Restrict to tasks that have an assignee that has the parameter \nvalue as a substring."
},
"assigneeLikeExpression": {
"type": "string",
"description": "Restrict to tasks that have an assignee that has the parameter value described by the \ngiven expression as a substring. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
"assigneeIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Only include tasks which are assigned to one of the passed and comma-separated user ids."
},
"owner": {
"type": "string",
"description": "Restrict to tasks that the given user owns."
},
"ownerExpression": {
"type": "string",
"description": "Restrict to tasks that the user described by the given expression owns. See the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
"candidateGroup": {
"type": "string",
"description": "Only include tasks that are offered to the given group."
},
"candidateGroupExpression": {
"type": "string",
"description": "Only include tasks that are offered to the group described by the given expression. \nSee the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
"candidateUser": {
"type": "string",
"description": "Only include tasks that are offered to the given user or to one of his groups."
},
"candidateUserExpression": {
"type": "string",
"description": "Only include tasks that are offered to the user described by the given expression. \nSee the \n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions) \nfor more information on available functions."
},
"includeAssignedTasks": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Also include tasks that are assigned to users in candidate queries. Default is to only \ninclude tasks that are not assigned to any user if you query by candidate user or\ngroup(s)."
},
"involvedUser": {
"type": "string",
"description": "Only include tasks that the given user is involved in. A user is involved in a task if \nan identity link exists between task and user (e.g., the user is the assignee)."
},
"involvedUserExpression": {
"type": "string",
"description": "Only include tasks that the user described by the given expression is involved in.\nA user is involved in a task if an identity link exists between task and user\n(e.g., the user is the assignee). See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions."
},
"assigned": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "If set to `true`, restricts the query to all tasks that are assigned."
},
"unassigned": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "If set to `true`, restricts the query to all tasks that are unassigned."
},
"taskDefinitionKey": {
"type": "string",
"description": "Restrict to tasks that have the given key."
},
"taskDefinitionKeyIn": {
"type": "array",
"items": {
"type": "string"
},
"description": "Restrict to tasks that have one of the given keys. The keys need to be in a comma-separated list."
},
"taskDefinitionKeyLike": {
"type": "string",
"description": "Restrict to tasks that have a key that has the parameter value as a substring."
},
"name": {
"type": "string",
"description": "Restrict to tasks that have the given name."
},
"nameNotEqual": {
"type": "string",
"description": "Restrict to tasks that do not have the given name."
},
"nameLike": {
"type": "string",
"description": "Restrict to tasks that have a name with the given parameter value as substring."
},
"nameNotLike": {
"type": "string",
"description": "Restrict to tasks that do not have a name with the given parameter\nvalue as substring."
},
"description": {
"type": "string",
"description": "Restrict to tasks that have the given description."
},
"descriptionLike": {
"type": "string",
"description": "Restrict to tasks that have a description that has the parameter\nvalue as a substring."
},
"priority": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "Restrict to tasks that have the given priority."
},
"maxPriority": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "Restrict to tasks that have a lower or equal priority."
},
"minPriority": {
"type": "integer",
"format": "int32",
"nullable": true,
"description": "Restrict to tasks that have a higher or equal priority."
},
"dueDate": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that are due on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have the format\n`yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.546+0200`."
},
"dueDateExpression": {
"type": "string",
"description": "Restrict to tasks that are due on the date described by the given expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"dueAfter": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that are due after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.435+0200`."
},
"dueAfterExpression": {
"type": "string",
"description": "Restrict to tasks that are due after the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"dueBefore": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that are due before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.243+0200`."
},
"dueBeforeExpression": {
"type": "string",
"description": "Restrict to tasks that are due before the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"followUpDate": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that have a followUp date on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date\nmust have the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.342+0200`."
},
"followUpDateExpression": {
"type": "string",
"description": "Restrict to tasks that have a followUp date on the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"followUpAfter": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that have a followUp date after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.542+0200`."
},
"followUpAfterExpression": {
"type": "string",
"description": "Restrict to tasks that have a followUp date after the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"followUpBefore": {
"type": "string",
"description": "Restrict to tasks that have a followUp date before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.234+0200`."
},
"followUpBeforeExpression": {
"type": "string",
"description": "Restrict to tasks that have a followUp date before the date described by the given\nexpression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"followUpBeforeOrNotExistent": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that have no followUp date or a followUp date before the given date.\nBy [default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.432+0200`. The typical use case\nis to query all `active` tasks for a user for a given date."
},
"followUpBeforeOrNotExistentExpression": {
"type": "string",
"description": "Restrict to tasks that have no followUp date or a followUp date before the date\ndescribed by the given expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"createdOn": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that were created on the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must have\nthe format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.324+0200`."
},
"createdOnExpression": {
"type": "string",
"description": "Restrict to tasks that were created on the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"createdAfter": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that were created after the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must\nhave the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.342+0200`."
},
"createdAfterExpression": {
"type": "string",
"description": "Restrict to tasks that were created after the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"createdBefore": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Restrict to tasks that were created before the given date. By\n[default](https://docs.camunda.org/manual/7.13/reference/rest/overview/date-format/), the date must\nhave the format `yyyy-MM-dd\u0027T\u0027HH:mm:ss.SSSZ`, e.g., `2013-01-23T14:42:45.332+0200`."
},
"createdBeforeExpression": {
"type": "string",
"description": "Restrict to tasks that were created before the date described by the given expression.\nSee the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to a\n`java.util.Date` or `org.joda.time.DateTime` object."
},
"delegationState": {
"type": "string",
"enum": [
"PENDING",
"RESOLVED"
],
"description": "Restrict to tasks that are in the given delegation state. Valid values are\n`PENDING` and `RESOLVED`."
},
"candidateGroups": {
"type": "array",
"items": {
"type": "string"
},
"description": "Restrict to tasks that are offered to any of the given candidate groups. Takes a\ncomma-separated list of group names, so for example\n`developers,support,sales`."
},
"candidateGroupsExpression": {
"type": "string",
"description": "Restrict to tasks that are offered to any of the candidate groups described by the\ngiven expression. See the\n[user guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/expression-language/#internal-context-functions)\nfor more information on available functions. The expression must evaluate to\n`java.util.List` of Strings."
},
"withCandidateGroups": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include tasks which have a candidate group. Value may only be `true`,\nas `false` is the default behavior."
},
"withoutCandidateGroups": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include tasks which have no candidate group. Value may only be `true`,\nas `false` is the default behavior."
},
"withCandidateUsers": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include tasks which have a candidate user. Value may only be `true`,\nas `false` is the default behavior."
},
"withoutCandidateUsers": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include tasks which have no candidate users. Value may only be `true`,\nas `false` is the default behavior."
},
"active": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include active tasks. Value may only be `true`, as `false`\nis the default behavior."
},
"suspended": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Only include suspended tasks. Value may only be `true`, as\n`false` is the default behavior."
},
"taskVariables": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VariableQueryParameterDto"
},
"description": "A JSON array to only include tasks that have variables with certain values. The\narray consists of JSON objects with three properties `name`, `operator` and `value`.\n`name` is the variable name, `operator` is the comparison operator to be used and\n`value` the variable value. `value` may be of type `String`, `Number` or `Boolean`.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
"processVariables": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VariableQueryParameterDto"
},
"description": "A JSON array to only include tasks that belong to a process instance with variables\nwith certain values. The array consists of JSON objects with three properties\n`name`, `operator` and `value`. `name` is the variable name, `operator` is the\ncomparison operator to be used and `value` the variable value. `value` may be of\ntype `String`, `Number` or `Boolean`.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
"caseInstanceVariables": {
"type": "array",
"items": {
"$ref": "#/components/schemas/VariableQueryParameterDto"
},
"description": "A JSON array to only include tasks that belong to a case instance with variables\nwith certain values. The array consists of JSON objects with three properties\n`name`, `operator` and `value`. `name` is the variable name, `operator` is the\ncomparison operator to be used and `value` the variable value. `value` may be of\ntype `String`, `Number` or `Boolean`.\n\nValid `operator` values are:\n`eq` - equal to;\n`neq` - not equal to;\n`gt` - greater than;\n`gteq` - greater than or equal to;\n`lt` - lower than;\n`lteq` - lower than or equal to;\n`like`.\n`key` and `value` may not contain underscore or comma characters."
},
"variableNamesIgnoreCase": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Match all variable names in this query case-insensitively. If set\n`variableName` and `variablename` are treated as equal."
},
"variableValuesIgnoreCase": {
"type": "boolean",
"nullable": true,
"default": false,
"description": "Match all variable values in this query case-insensitively. If set\n`variableValue` and `variablevalue` are treated as equal."
},
"parentTaskId": {
"type": "string",
"description": "Restrict query to all tasks that are sub tasks of the given task. Takes a task id."
},
"orQueries": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TaskQueryDto"
},
"description": "A JSON array of nested task queries with OR semantics. A task matches a nested query if it fulfills\n*at least one* of the query\u0027s predicates. With multiple nested queries, a task must fulfill at least one predicate of *each* query ([Conjunctive Normal Form](https://en.wikipedia.org/wiki/Conjunctive_normal_form)).\n\nAll task query properties can be used except for: `sorting`, `withCandidateGroups`,\n`withoutCandidateGroups`, `withCandidateUsers`, `withoutCandidateUsers`\n\nSee the [User guide](https://docs.camunda.org/manual/7.13/user-guide/process-engine/process-engine-api/#or-queries)\nfor more information about OR queries."
},
"sorting": {
"type": "array",
"description": "Apply sorting of the result",
"items": {
"type": "object",
"properties": {
"sortBy": {
"type": "string",
"enum": [
"instanceId",
"caseInstanceId",
"dueDate",
"executionId",
"caseExecutionId",
"assignee",
"created",
"description",
"id",
"name",
"nameCaseInsensitive",
"priority",
"processVariable",
"executionVariable",
"taskVariable",
"caseExecutionVariable",
"caseInstanceVariable"
],
"description": "Sort the results lexicographically by a given criterion.\nMust be used in conjunction with the sortOrder parameter."
},
"sortOrder": {
"type": "string",
"enum": [
"asc",
"desc"
],
"description": "Sort the results in a given order. Values may be `asc` for ascending order or `desc` for\ndescending order. Must be used in conjunction with the sortBy parameter."
},
"parameters": {
"$ref": "#/components/schemas/SortTaskQueryParametersDto"
}
}
}
}
}
},
"TransitionInstanceDto": {
"type": "object",
"description": "A JSON object corresponding to the Activity Instance tree of the given process instance.",
"properties": {
"id": {
"type": "string",
"description": "The id of the transition instance."
},
"parentActivityInstanceId": {
"type": "string",
"description": "The id of the parent activity instance, for example a sub process instance."
},
"activityId": {
"type": "string",
"description": "The id of the activity that this instance enters (asyncBefore job) or leaves (asyncAfter job)"
},
"activityName": {
"type": "string",
"description": "The name of the activity that this instance enters (asyncBefore job) or leaves (asyncAfter job)"
},
"activityType": {
"type": "string",
"description": "The type of the activity that this instance enters (asyncBefore job) or leaves (asyncAfter job)"
},
"processInstanceId": {
"type": "string",
"description": "The id of the process instance this instance is part of."
},
"processDefinitionId": {
"type": "string",
"description": "The id of the process definition."
},
"executionId": {
"type": "string",
"description": "The execution id."
},
"incidentIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of incident ids."
},
"incidents": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ActivityInstanceIncidentDto"
},
"description": "A list of JSON objects containing incident specific properties:\n* `id`: the id of the incident\n* `activityId`: the activity id in which the incident occurred"
}
}
},
"TriggerVariableValueDto": {
"allOf": [
{
"type": "object",
"properties": {
"local": {
"type": "boolean",
"nullable": true,
"description": "Indicates whether the variable should be a local variable or not.\nIf set to true, the variable becomes a local variable of the execution\nentering the target activity."
}
}
},
{
"$ref": "#/components/schemas/VariableValueDto"
}
]
},
"UserIdDto": {
"type": "object",
"properties": {
"userId": {
"type": "string",
"description": "The id of the user that the current action refers to."
}
}
},
"VariableQueryParameterDto": {
"type": "object",
"properties": {
"value": {
"type": "object",
"description": "The variable value, could be of type boolean, string or number"
},
"operator": {
"type": "string",
"enum": [
"eq",
"neq",
"gt",
"gteq",
"lt",
"lteq",
"like"
],
"description": "Comparison operator to be used"
}
}
},
"VariableValueDto": {
"type": "object",
"properties": {
"value": {
"type": "object",
"description": "The variable\u0027s value. Value differs depending on the variable\u0027s type and on the deserializeValues parameter."
},
"type": {
"type": "string",
"description": "The value type of the variable."
},
"valueInfo": {
"type": "object",
"additionalProperties": true,
"description": "A JSON object containing additional, value-type-dependent properties.\nFor serialized variables of type Object, the following properties can be provided:\n\n* `objectTypeName`: A string representation of the object\u0027s type name.\n* `serializationDataFormat`: The serialization format used to store the variable.\n\nFor serialized variables of type File, the following properties can be provided:\n\n* `filename`: The name of the file. This is not the variable name but the name that will be used when downloading the file again.\n* `mimetype`: The MIME type of the file that is being uploaded.\n* `encoding`: The encoding of the file that is being uploaded."
}
}
},
"VersionDto": {
"type": "object",
"properties": {
"version": {
"type": "string",
"description": "The version of the Rest API."
}
}
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment