Darstellung
Business Process Management – API-Referenz
Fach-API für Prozessdefinitionen und laufende Vorgänge. Basis ist https://core-backend.reybex.com/api (Staging: https://io-staging-partner.reybex.com/api). Authentifizierung wie im API: --header "authorization: Basic $TOKEN".
Projekte stehen unter Projektmanagement.
Der schreibende Weg der Definition ist POST /api/bpmDefinitionHead/. Der des Vorgangs ist POST /api/bpmHead/. Der Körper ist der Datensatz selbst, ohne Umschlag. Leere Objekte werden zu null.
1. Grundlagen
| Objekt | Rolle |
|---|---|
BpmDefinitionHead | Vorlage mit BPMN-XML und Domäne |
BpmHead | Ein laufender Vorgang zu einem Datensatz |
status des Vorgangs: 0 zu bearbeiten, 1 in Bearbeitung, 2 erledigt.
Die Zahlen in den Beispielen sind Beispiel-Ids eines Mandanten. 9901 ist die Definition. 12001 ist ein Projekt.
1.1 Suchschlüssel
| Ziel | Suchschlüssel |
|---|---|
| Projekt | id |
| Definition am Vorgang | id |
1.2 Antwort- und Fehlerformat
Speichern liefert { "id": 9901 }. Fehlt bpmnXml bei saveFromXml: parameter.not.found.
2. Definition
POST /api/bpmDefinitionHead/ legt an, wenn keine id im Körper steht.
2.1 Felder
| Feld | Bedeutung |
|---|---|
title | Bezeichnung |
domainName | Domäne, an der der Prozess hängt |
project | optionales Projekt |
bpmnXml | BPMN als XML |
isActive | aktiv. Standard true |
2.2 Pflichtfelder
Auflösung, wenn ein Pflichtfeld fehlt
Die API setzt Pflicht-Referenzen nicht von selbst. Fehlt ein Feld, in dieser Reihenfolge füllen. Der erste Treffer gilt.
- Angabe – Wert aus dem Auftrag für dieses Feld.
- Vorlage – dasselbe Feld aus
GET /api/bpmDefinitionHead/{id}.idnicht übernehmen. Ist eine Vorlage genannt, diese lesen. Ist keine genannt, keine raten, mit Schritt 3 weiter. - Standard – Wert aus der Tabelle.
- Domäne – entfällt. Die Definition hat keinen Nummernkreis.
- Stopp –
saveFromXmlohnebpmnXml. Definition nicht anlegen.
| Feld | Pflicht | Vorlage | Standard | Domäne |
|---|---|---|---|---|
title | nein | title | — | — |
domainName | nein | domainName | — | — |
bpmnXml | ja bei saveFromXml | bpmnXml | — | — |
isActive | nein | isActive | true | — |
2.3 Anlegen
json
{
"title": "Auftragsfreigabe",
"domainName": "SalesHead",
"isActive": true,
"project": { "id": 12001 }
}Response: { "id": 9901 }
Aus BPMN: POST /api/bpmDefinitionHead/saveFromXml mit bpmnXml im Körper.
Lesen: GET /api/bpmDefinitionHead/9901. Löschen: DELETE /api/bpmDefinitionHead/9901.
3. Vorgang
POST /api/bpmHead/
objectId ist die Id des Datensatzes in domainName. bpmDefinitionHead ist die Vorlage.
json
{
"title": "Freigabe RE-100",
"domainName": "SalesHead",
"objectId": 500100,
"status": 0,
"bpmDefinitionHead": { "id": 9901 }
}Response: { "id": 9910 }
status 0 ist zu bearbeiten, 1 in Bearbeitung, 2 erledigt.
Diagramm: GET /api/bpmHead/9910/chart.
Lesen: GET /api/bpmHead/9910. Löschen markiert den Vorgang, der Datensatz bleibt: DELETE /api/bpmHead/9910.
4. Endpoint-Katalog
| Methode | Pfad | Bedeutung |
|---|---|---|
GET | /api/bpmDefinitionHead/{id} | Eine Definition oder die Liste |
POST | /api/bpmDefinitionHead/ | Definition speichern |
POST | /api/bpmDefinitionHead/saveFromXml | Definition aus BPMN, Feld bpmnXml |
DELETE | /api/bpmDefinitionHead/{id} | Definition löschen |
GET | /api/bpmHead/{id} | Ein Vorgang oder die Liste |
POST | /api/bpmHead/ | Vorgang speichern |
GET | /api/bpmHead/{id}/chart | Diagramm |
DELETE | /api/bpmHead/{id} | Vorgang als gelöscht markieren |
5. Häufige Fehler
| Situation | Ursache |
|---|---|
parameter.not.found | saveFromXml ohne bpmnXml |
| Vorgang ohne Vorlage | bpmDefinitionHead.id fehlt oder ist unbekannt |