Process Versioning API
Every deployment of a process definition creates a new immutable version. Running instances continue on their deployed version; new instances always start on the latest. Use rollback to make a previous version the active default.
Each POST /api/v1/process-definitions call that changes the BPMN XML increments the version number by 1. The process key (your id attribute in the BPMN) stays constant across versions. Running instances are pinned to the version at which they started and are not automatically migrated. Rollback designates a past version as the latest for new instance creation — it does not interrupt running instances.
Returns all deployed versions of a process definition ordered by version number descending.
Path parameters
| Parameter | Description |
|---|---|
key | The process definition key (the id attribute in your BPMN file). |
Example response 200 OK
{
"versions": [
{
"version": 3,
"deploymentKey": "dep_ccc333",
"resourceName": "payment-process-v3.bpmn",
"deployedAt": "2026-04-06T08:00:00Z",
"isLatest": true
},
{
"version": 2,
"deploymentKey": "dep_bbb222",
"resourceName": "payment-process-v2.bpmn",
"deployedAt": "2026-03-15T10:30:00Z",
"isLatest": false
},
{
"version": 1,
"deploymentKey": "dep_aaa111",
"resourceName": "payment-process-v1.bpmn",
"deployedAt": "2026-02-01T14:00:00Z",
"isLatest": false
}
]
}
Returns the full definition for a specific version, including the original BPMN XML.
Example response 200 OK
{
"key": "payment-process",
"version": 2,
"bpmnXml": "<?xml version=\"1.0\" ...>",
"deployedAt": "2026-03-15T10:30:00Z"
}
Makes a specific previous version the active version for new instance creation. Does not interrupt in-flight instances — they continue on their originally deployed version.
Request body
| Field | Type | Required | Description |
|---|---|---|---|
version | integer | required | Version number to roll back to. Must be < current latest. |
Example request
{ "version": 2 }
Example response 200 OK
{
"key": "payment-process",
"activeVersion": 2,
"rolledBackFrom": 3,
"rolledBackAt": "2026-04-06T09:30:00Z"
}
Deploy a new or updated process definition. If the BPMN XML for the given process key differs from the current latest, a new version is created automatically.
Request body (multipart/form-data)
| Field | Type | Required | Description |
|---|---|---|---|
resources | file[] | required | One or more BPMN, CMMN, or DMN files. |
Example curl
curl -X POST https://priostack.com/api/v1/process-definitions \ -H "Authorization: Bearer $API_KEY" \ -F "resources=@payment-process.bpmn"