An external web form (a public site, a portal, a mobile app) starts a case through the Case REST API (BAW 19+, Case Manager 5.x) - no BPM coach involved:
# 1. (CP4BA) obtain a Zen token / or use basic auth on traditional BAW; get the CSRF token
POST https://host/bpm/system/login {"refresh_groups": false, "requested_lifetime": 7200} -> csrf_token
# 2. create the case (Case REST API of the Case Manager component)
POST https://host/CaseManager/CASEREST/v1/casetypes/{caseTypeName}/cases?TargetObjectStore=TOS&SolutionName=Claims
Content-Type: application/json
IBM-CSRF-TOKEN / BPMCSRFToken: <token>
{ "ReturnUpdates": true, "Properties": [ { "SymbolicName": "CLM_ClaimantName", "Value": "Ana Perez" }, { "SymbolicName": "CLM_Amount", "Value": 1250 } ] }Alternatives when a direct Case REST call is not possible from the form's server:
- A BAW service flow exposed as REST: the form calls BAW, the service flow creates the case with the Case toolkit's Create Case integration (or tw.system.currentProcessInstance.createCase(record) from a process on BAW 22+), exposed through the Process REST API POST /rest/bpm/wle/v1/service/{id}?action=start.
- E-mail / document arrival: Case Manager can start a case when a document is filed in a folder (document start events) - the form uploads a PDF to FileNet and the case starts by itself.
- A startable client-side human service exposed by URL, embedded in the site with an iframe, if the users are BAW users anyway.
Whatever the route: keep the case properties (symbolic names) in a contract document, validate on the BAW side, and return the case id to the form for later status queries (GET .../cases/{caseId}).
References