Completes an external task by id and updates process variables.
Method
POST /external-task/{id}/complete
Parameters
Path Parameters
Name |
Description |
id |
The id of the task to complete. |
Request Body
A JSON object with the following properties:
Name |
Description |
workerId |
The id of the worker that completes the task. Must match the id of the worker who has most recently locked the task. |
variables |
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:
Name |
Description |
value |
The variable's value. For variables of type Object , the serialized value has to be submitted as a String value.
For variables of type File the value has to be submitted as Base64 encoded string.
|
type |
The value type of the variable. |
valueInfo |
A JSON object containing additional, value-type-dependent properties.
For serialized variables of type Object , the following properties can be provided:
-
objectTypeName : A string representation of the object's type name.
-
serializationDataFormat : The serialization format used to store the variable.
For serialized variables of type File , the following properties can be provided:
-
filename : The name of the file. This is not the variable name but the name that will be used when downloading the file again.
-
mimetype : The MIME type of the file that is being uploaded.
-
encoding : The encoding of the file that is being uploaded.
The following property can be provided for all value types:
transient : Indicates whether the variable should be transient or not. See documentation for more informations.
|
|
localVariables |
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:
Local variables are set only in the scope of external task.
Name |
Description |
value |
The variable's value. For variables of type Object , the serialized value has to be submitted as a String value.
For variables of type File the value has to be submitted as Base64 encoded string.
|
type |
The value type of the variable. |
valueInfo |
A JSON object containing additional, value-type-dependent properties.
For serialized variables of type Object , the following properties can be provided:
-
objectTypeName : A string representation of the object's type name.
-
serializationDataFormat : The serialization format used to store the variable.
For serialized variables of type File , the following properties can be provided:
-
filename : The name of the file. This is not the variable name but the name that will be used when downloading the file again.
-
mimetype : The MIME type of the file that is being uploaded.
-
encoding : The encoding of the file that is being uploaded.
The following property can be provided for all value types:
transient : Indicates whether the variable should be transient or not. See documentation for more informations.
|
|
Result
This method returns no content.
Response Codes
Code |
Media type |
Description |
204 |
|
Request successful. |
400 |
application/json |
Returned if the task's most recent lock was not acquired by the provided worker. See the Introduction for the error response format. |
404 |
application/json |
Returned if the task does not exist. This could indicate a wrong task id as well as a cancelled task, e.g., due to a caught BPMN boundary event. See the Introduction for the error response format. |
500 |
application/json |
Returned if the corresponding process instance could not be resumed successfully. See the Introduction for the error response format. |
Example
Request
POST /external-task/anId/complete
Request Body:
{
"workerId": "aWorker",
"variables":
{"aVariable": {"value": "aStringValue"},
"anotherVariable": {"value": 42},
"aThirdVariable": {"value": true}},
"localVariables":
{"aLocalVariable": {"value": "aStringValue"}}
}
Response
Status 204. No content.