Get Variable Instance

Retrieves a historic variable by id.

Method

GET /history/variable-instance/{id}

Parameters

Path Parameters

Name Description
id The id of the variable instance.

Query Parameters

Name Description
deserializeValue Determines whether serializable variable values (typically variables that store custom Java objects) should be deserialized on server side (default true).

If set to true, a serializable variable will be deserialized on server side and transformed to JSON using Jackson's POJO/bean property introspection feature. Note that this requires the Java classes of the variable value to be on the REST API's classpath.

If set to false, a serializable variable will be returned in its serialized format. For example, a variable that is serialized as XML will be returned as a JSON string containing XML.

Note: While true is the default value for reasons of backward compatibility, we recommend setting this parameter to false when developing web applications that are independent of the Java process applications deployed to the engine.

Result

A user object with the following properties:

Name Value Description
id String The id of the variable instance.
name String The name of the variable instance.
type String The value type of the variable.
value String/Number/Boolean/Object The variable's value. Value differs depending on the variable's type and on the deserializeValue parameter.
valueInfo Object A JSON object containing additional, value-type-dependent properties.

For variables of type Object, the following properties are returned:

  • objectTypeName: A string representation of the object's type name.
  • serializationDataFormat: The serialization format used to store the variable.
processDefinitionKey String The key of the process definition the variable instance belongs to.
processDefinitionId String The id of the process definition the variable instance belongs to.
processInstanceId String The id the process instance belongs to.
executionId String The execution id the variable instance belongs to.
activityInstanceId String The id of the activity instance in which the variable is valid.
caseDefinitionKey String The key of the case definition the variable instance belongs to.
caseDefinitionId String The id of the case definition the variable instance belongs to.
caseInstanceId String The case instance id the variable instance belongs to.
caseExecutionId String The case execution id the variable instance belongs to.
taskId String The id of the task the variable instance belongs to.
tenantId String The id of the tenant that this variable instance belongs to.
errorMessage String An error message in case a Java Serialized Object could not be de-serialized.
state String The current state of the variable. Can be 'CREATED' or 'DELETED'.
createTime String The time the variable was inserted. Default format* yyyy-MM-dd'T'HH:mm:ss.SSSZ.
removalTime String The time after which the variable should be removed by the History Cleanup job. Default format* yyyy-MM-dd'T'HH:mm:ss.SSSZ.
rootProcessInstanceId String The process instance id of the root process instance that initiated the process containing this variable.

* For further information, please see the documentation.

Response Codes

Code Media type Description
200 application/json Request successful.
404 application/json Variable with given id does not exist. See the Introduction for the error response format.

Example

Request

GET /history/variable-instance/someId

Response

Status 200.

{
  "id": "someId",
  "name": "amount",
  "type": "Integer",
  "value": 5,
  "valueInfo": {},
  "processDefinitionKey": "aProcessDefinitionKey",
  "processDefinitionId": "aProcessDefinitionId",
  "processInstanceId": "aProcessInstanceId",
  "executionId": "aExecutionId",
  "activityInstanceId": "Task_1:b68b71ca-e310-11e2-beb0-f0def1557726",
  "caseDefinitionKey": null,
  "caseDefinitionId": null,
  "caseInstanceId": null,
  "caseExecutionId": null,
  "taskId": null,
  "tenantId": null,
  "errorMessage": null,
  "state": "CREATED",
  "createTime":"2017-02-10T14:33:19.000+0200",
  "removalTime": "2018-02-10T14:33:19.000+0200",
  "rootProcessInstanceId": "aRootProcessInstanceId"
}

On this Page: