POSTs für Geschäftsaktionen
Echte REST-APIs konzentrieren sich ausschließlich auf CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen). Wie andere REST-APIs macht die Cloud-API diese CRUD-Operationen über Endpunkte verfügbar, die die Operationen POST, GET, PATCH und DELETE unterstützen.
Unter bestimmten Umständen muss eine System-API jedoch einen Geschäftsprozess auslösen, der nicht ohne Weiteres einer einzelnen Operation zum Erstellen, Lesen, Aktualisieren oder Löschen zugeordnet werden kann. Die System-APIs bieten beispielsweise die Möglichkeit, eine Aktivität zuzuweisen. Diese Aktion ändert den Wert der Felder assignedUser und assignedGroup der Aktivität. Der zugewiesene Benutzer und die zugewiesene Gruppe können jedoch über die Zuweisungslogik intern für ClaimCenter bestimmt werden. Die Zuweisung kann abhängig von der Aktivität selbst, der aktuellen Arbeitsauslastung jeder Gruppe oder davon, ob ein bestimmter Benutzer im Urlaub ist, variieren. Die Aktivitätenzuweisung kann nicht über ein PATCH ausgeführt werden, da die aufrufende Anwendung nicht immer bestimmen kann, wie die Felder assignedUser und assignedGroup festgelegt werden.
In der Standard-REST-Architektur gibt es für diese Art von Geschäftsaktion keine Operation. Daher hat die Cloud-API die folgenden Konventionen übernommen:
- Endpunkte, die Geschäftsaktionen ausführen, verwenden die POST-Operation.
- Endpunkte, die Geschäftsaktionen ausführen, haben Pfade, die das Ende in Verben enthalten (z. B. „zuweisen“ oder „abschließen“).
Beispiele für Endpunkte, die Geschäftsaktionen ausführen:
- POST
/common/v1/activities/{activityId}/assign, wodurch die entsprechende Aktivität zugewiesen wird - POST
/common/v1/activities/{activityId}/complete, wodurch die entsprechende Aktivität als abgeschlossen gekennzeichnet wird - POST
/claim/v1/claims/{claimId}/cancel, wodurch der entsprechende Schadenfallentwurf storniert wird - POST/
claim/v1/claims/{claimId}/submit, wodurch der entsprechenden Schadenfallentwurf übermittelt wird, wodurch er zu einem offenen Schadenfall hochgestuft wird
POSTs für Geschäftsaktionen und Anforderungs-Nutzdaten
Alle POST-Endpunkte, die Ressourcen erstellen (z. B. POST /common/v1/activities/{activityId}/notes, welche eine Notiz für die jeweilige Aktivität erstellen), erfordern Anforderungs-Nutzdaten. Bei einigen Endpunkten können die Nutzdaten leer sein. Anforderungs-Nutzdaten sind jedoch immer erforderlich.
Bei POST-Endpunkten, die Geschäftsaktionen ausführen, können die Nutzdatenanforderungen variieren.
- Einige POSTs für Geschäftsaktionen erfordern Nutzdaten. (Beispielsweise erfordert
activities/{activityId}/assignNutzdaten, welche die Zuweisungskriterien angeben.) - Einige POSTs für Geschäftsaktionen können optional Nutzdaten haben. (Für
activities/{activityId}/completesind beispielsweise keine Nutzdaten erforderlich. Sie können jedoch Nutzdaten angeben, wenn Sie eine Notiz an die Aktivität anhängen möchten, während Sie sie abschließen.) - Einige POSTs für Geschäftsaktionen lassen möglicherweise keine Nutzdaten zu.
Informationen darüber, ob ein POST für eine Geschäftsaktion Anforderungs-Nutzdaten erfordert, zulässt oder verbietet, finden Sie im entsprechenden Abschnitt dieses Handbuchs.
POSTs für Geschäftsaktionen und verlorene Aktualisierungen
Wenn ein Geschäftsprozess mehrere Aufrufe umfasst, ist der erste Aufruf in der Regel entweder ein GET, das Daten abruft, oder ein POST, das Daten erstellt. Wenn der Geschäftsprozess ein POST umfasst, der eine Geschäftsaktion ausführt, kommt dieser POST in der Regel nach dem ersten Aufruf und wirkt sich in der Regel auf eine Ressource aus, die in einem vorherigen Aufruf abgefragt oder erstellt wurde.
Es ist möglich, dass ein anderer Prozess die Daten nach dem ersten GET/POST, aber vor dem nachfolgenden POST für die Geschäftsaktion ändert. Dies kann dazu führen, dass eine Aktualisierung verloren geht. In den System-APIs ist eine verlorene Aktualisierung eine Änderung an einer Ressource, die unbeabsichtigt Änderungen überschreibt, die von einem anderen Prozess vorgenommen wurden.
Sie können verlorene Aktualisierungen mit Prüfsummen verhindern. Weitere Informationen finden Sie unter Verlorene Aktualisierungen und Prüfsummen.