Every BPD (process model) has a unique identifier of the form 25.<uuid> - the "BPD reference id" (the library item id with type prefix 25). It stays the same across snapshots of the process app, so it identifies the model, while the snapshot id identifies the version. Where it is useful:
- Starting a process by REST: POST /rest/bpm/wle/v1/process?action=start&bpdId=25.7f0d...&snapshotId=2064.… (or processAppId + branchId for the tip). The exposed items list gives you the ids: GET /rest/bpm/wle/v1/exposed/process.
- Searching instances of a model: the search API (PUT /rest/bpm/wle/v1/search/query) filters by process name; in SQL, lsw_bpd_instance.bpd_ref carries it, which is how operations tooling groups instances per model across snapshots.
- Toolkit BPDs: a linked process from a toolkit keeps the toolkit's BPD id; the parent app's snapshot decides which toolkit snapshot runs.
- Troubleshooting: errors in SystemOut.log and the event manager tables refer to BPD ids, not names; instance details (GET /process/{piid}) return processTemplateID = the BPD ref id.
GET /rest/bpm/wle/v1/exposed/process
{ "data": { "exposedItemsList": [ { "type": "process", "display": "Order Handling", "itemID": "25.7f0d2e1a-...", "processAppID": "2066.1a...", "snapshotID": "2064.9c...", "branchID": "2063.4b...", "startURL": "/teamworks/executecf?..." } ] } }Do not confuse it with the instance id (2072.123, piid) or the task id (2078.456). In the web designer the id is visible in the URL of the open BPD and in the item's Overview (Documentation / "Copy id" on BAW 20+).
References