Get Variable Instances (POST)
Query for variable instances that fulfill given parameters through a JSON object. This method is slightly more powerful than the
Get Variable Instances method because it allows filtering by multiple variable instances of types String
, Number
or Boolean
.
Method
POST /variable-instance
Parameters
Query Parameters
Name | Description |
---|---|
firstResult | Pagination of results. Specifies the index of the first result to return. |
maxResults | Pagination of results. Specifies the maximum number of results to return. Will return less results if there are no more results left. |
deserializeValues |
Determines whether serializable variable values (typically variables that store custom Java objects) should be deserialized on server side (default true ).
If set to If set to Note: While |
Request Body
A JSON object with the following properties:
Name | Description | ||||||
---|---|---|---|---|---|---|---|
variableName | Filter by variable instance name. | ||||||
variableNameLike | Filter by the variable instance name. The parameter can include the wildcard % to express like-strategy such as: starts with (% name), ends with (name% ) or contains (% name% ). |
||||||
processInstanceIdIn | Only include variable instances which belong to one of the passed process instance ids. | ||||||
executionIdIn | Only include variable instances which belong to one of the passed execution ids. | ||||||
caseInstanceIdIn | Only include variable instances which belong to one of the passed case instance ids. | ||||||
caseExecutionIdIn | Only include variable instances which belong to one of the passed case execution ids. | ||||||
taskIdIn | Only include variable instances which belong to one of the passed task ids. | ||||||
batchIdIn | Only include variable instances which belong to one of the passed batch ids. | ||||||
activityInstanceIdIn | Only include variable instances which belong to one of the passed activity instance ids. | ||||||
tenantIdIn | Only include variable instances which belong to one of the passed tenant ids. | ||||||
variableValues | A JSON array to only include variable instances that have the certain values. The array consists of objects with the three properties name , operator and value .
name (String) is the variable name, operator (String) is the comparison operator to be used and value the variable value.value may be String , Number or Boolean .
Valid operator values are: eq - equal to; neq - not equal to; gt - greater than;
gteq - greater than or equal to; lt - lower than; lteq - lower than or equal to;
like . |
||||||
variableNamesIgnoreCase | Match all variable names provided in variableValues case-insensitively. If set to true variableName and variablename are treated as equal. |
||||||
variableValuesIgnoreCase | Match all variable values provided in variableValues case-insensitively. If set to true variableValue and variablevalue are treated as equal. |
||||||
sorting |
A JSON array of criteria to sort the result by. Each element of the array is a JSON object that specifies one ordering. The position in the array identifies the rank of an ordering, i.e., whether it is primary, secondary, etc. The ordering objects have the following properties:
|
Result
A JSON array of variable instance objects. Each variable instance object has 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 deserializeValues parameter. |
valueInfo | Object | A JSON object containing additional, value-type-dependent properties.
For variables of type
|
processDefinitionId | String | The id of the process definition that this variable instance belongs to. |
processInstanceId | String | The id of the process instance that this variable instance belongs to. |
executionId | String | The id of the execution that this variable instance belongs to. |
caseInstanceId | String | The id of the case instance that this variable instance belongs to. |
caseExecutionId | String | The id of the case execution that this variable instance belongs to. |
taskId | String | The id of the task that this variable instance belongs to. |
batchId | String | The id of the batch that this variable instance belongs to. |
activityInstanceId | String | The id of the activity instance that this 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. |
Response Codes
Code | Media type | Description |
---|---|---|
200 | application/json | Request successful. |
400 | application/json | Returned if some of the query parameters are invalid, for example if a sortOrder parameter is supplied, but no sortBy , or if an invalid operator for variable comparison is used. See the Introduction for the error response format. |
Example
Request
POST /variable-instance
Request Body:
{"variableValues":
[{"name": "amount",
"operator": "gteq",
"value": 5
},
{"name": "amount",
"operator": "lteq",
"value": 200}],
"processInstanceIdIn": [ "aProcessInstanceId", "anotherProcessInstanceId" ],
"sorting":
[{"sortBy": "variableType",
"sortOrder": "asc"
}]
}
Response
[
{
"id": "someId",
"name": "amount",
"type": "Integer",
"value": 5,
"processDefinitionId": "aProcessDefinitionId",
"processInstanceId": "aProcessInstanceId",
"executionId": "b68b71c9-e310-11e2-beb0-f0def1557726",
"taskId": null,
"batchId": null,
"activityInstanceId": "Task_1:b68b71ca-e310-11e2-beb0-f0def1557726",
"tenantId": null,
"errorMessage": null
},
{
"id": "someOtherId",
"name": "amount",
"type": "Integer",
"value": 15,
"processDefinitionId": "aProcessDefinitionId",
"processInstanceId": "aProcessInstanceId",
"executionId": "68b71c9-e310-11e2-beb0-f0def1557726",
"taskId": null,
"batchId": null,
"activityInstanceId": "Task_1:b68b71ca-e310-11e2-beb0-f0def1557726",
"tenantId": null,
"errorMessage": null
},
{
"id": "yetAnotherId",
"name": "amount",
"type": "Integer",
"value": 150,
"processDefinitionId": "aProcessDefinitionId",
"processInstanceId": "anotherProcessInstanceId",
"executionId": "68b71c9-e310-11e2-beb0-f0def1557726",
"taskId": null,
"batchId": null,
"activityInstanceId": "Task_2:b68b71ca-e310-11e2-beb0-f0def1557726",
"tenantId": null,
"errorMessage": null
}
]