Skip to Content

HTTP Service Tasks

Die HTTP Service Task Extension ermoeglicht es, HTTP-Anfragen an externe Dienste aus BPMN-Prozessen heraus auszufuehren.

Funktionsweise

Ein HTTP Service Task sendet eine HTTP-Anfrage an eine konfigurierte URL und verwendet die Antwort als End-Token fuer den nachfolgenden Prozessschritt.

Konfiguration im BPMN-Prozess

Mit der Studio-Erweiterung Custom Service Tasks laesst sich ein HTTP Service Task komfortabel ueber eine Oberflaeche konfigurieren.

Damit ein Service Task als HTTP Service Task erkannt wird, muss die Custom Property engine.setServiceTaskType mit dem Wert HttpService gesetzt werden.

Parameter

Custom PropertyBeschreibungPflichtBeispiel
methodHTTP-MethodeJaGET, POST, PUT, DELETE
studio.paramUrlZiel-URLJahttps://api.example.com/data
studio.paramAuthorizationAuthorization-HeaderNeinBearer ${token.accessToken}
studio.paramContentTypeContent-Type-HeaderNeinapplication/json (Standard)
studio.paramBodyJSON Request Body (POST/PUT)Nein{"name": "${token.name}"}

Runtime Expressions

Alle Parameter ausser method unterstuetzen Runtime Expressions mit ${}:

studio.paramUrl = https://api.example.com/users/${token.userId} studio.paramAuthorization = Bearer ${token.accessToken} studio.paramBody = {"greeting": "${token.message}"}

Beispiel: REST-API aufrufen

Ein Service Task, der Benutzerdaten von einer externen API abruft:

PropertyWert
engine.setServiceTaskTypeHttpService
methodGET
studio.paramUrlhttps://api.example.com/users/${token.userId}
studio.paramAuthorizationBearer ${token.accessToken}

Der Response-Body wird als End-Token in den Prozess zurueckgegeben und ist im naechsten Schritt ueber token verfuegbar.

Beispiel: Daten senden

Ein Service Task, der Daten an eine externe API sendet:

PropertyWert
engine.setServiceTaskTypeHttpService
methodPOST
studio.paramUrlhttps://api.example.com/orders
studio.paramContentTypeapplication/json
studio.paramBody{"orderId": "${token.orderId}", "amount": "${token.amount}"}

Fehlerbehandlung

Wenn der externe Dienst einen Fehler zurueckgibt (HTTP 4xx/5xx), wird der Service Task mit einem Fehler beendet. Dieser kann ueber einen Error Boundary Event abgefangen werden.

Die Extension erfordert keine zusaetzliche Konfiguration auf Engine-Ebene. Sie wird automatisch geladen, wenn sie im extensions/-Verzeichnis vorhanden ist.