smart_toy Flowenti Robots API

Hilfe-Referenz der Flowenti-Robots-API

Flowenti Robots API

Dieser Leitfaden umfasst die 15 offiziellen Endpunkte , die erforderlich sind, um einen Software-Roboter in die Flowenti-Plattform zu integrieren.

Produktions-Basis-URL
https://<host>/flowentisysman/v1
Authentifizierung über den Authorization-Bearer-Header
Authorization: Bearer eyJhbGciOiJIUzUxMiIs...

key API-Key-Verwaltung

Der Roboter authentifiziert sich mit einem JWT Authorization: Bearer JWT mit den Claims IsAPIKey='1' und RobotID, generiert im Organisationspanel. Behandeln Sie das Token als Geheimnis und rotieren Sie es regelmäßig.

speed Rate Limits und Backoff

Zu häufiges Polling führt zu 429 Rate Limit Exceeded. Empfohlenes Polling-Intervall: 3–5 Sekunden. Bei 5xx exponentiellen Backoff mit Retries anwenden.

Endpunkt-Taxonomie (15 Aufrufe)

Wählen Sie eine Kategorie, um die Dokumentation zu filtern.

key

1. Kontext und Authentifizierung

GET ✓ Roboter-Whitelist /organizations/user

Gibt den Organisationskontext zurück, der mit dem dem Roboter ausgestellten API-Key verbunden ist. Vor jedem anderen Aufruf abrufen.

Response 200 OK
{
  "organizations": [
    {
      "id": 14299,
      "name": "robots snippet",
      "administrator": false,
      "subscriptionname": "",
      "hasmultipleuser": false,
      "creation": "2026-09-07T14:00:12.282+02:00",
      "deleted": false,
      "icon": null
    }
  ]
}
  • organizationsListe der Organisationen, die mit dem API-Key des Roboters verknüpft sind: mit einem Roboter-Token enthält sie nur einen Eintrag.
  • idNumerische ID der Organisation: der Wert, der in den anderen Endpunkten als {idorganization} verwendet wird.
  • nameAnzeigename der Organisation.
  • administratortrue, wenn der Roboter mit Administratorrechten der Organisation arbeitet.
  • subscriptionnameName des Plans/Abonnements der Organisation (kann leer sein).
  • hasmultipleusertrue, wenn der Organisation mehrere Benutzer zugeordnet sind.
  • creationErstellungsdatum/-uhrzeit der Organisation (ISO 8601).
  • deletedtrue, wenn die Organisation gelöscht wurde (Soft Delete).
  • iconSymbol/Logo der Organisation (null, wenn nicht gesetzt).
play_circle

2. Prozesse starten

GET ✓ Roboter-Whitelist /startevents/organizations/{idorganization}

Ermitteln Sie, welche Prozesse der Roboter in der angegebenen Organisation starten darf.

Path Parameters
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
Response 200 OK
{
  "possiblestart": [
    {
      "id": 21,
      "name": "",
      "idtype": 0,
      "idprocessmodel": 88,
      "processmodelname": "Gestione Ordini",
      "idswimlane": 1,
      "swimlanename": "Lane 1",
      "idorganization": 14207,
      "assignmentmode": 0,
      "userschema": "[]"
    }
  ]
}
  • possiblestartListe der verfügbaren Start-Events: jeder Eintrag ist ein Prozess, den der Roboter instanziieren kann.
  • idID des Start-Events: der Wert, der beim Prozessstart als {idevent} verwendet wird.
  • nameName des Start-Events (kann leer sein).
  • idtypeTyp des im BPMN-Modell definierten Start-Events.
  • idprocessmodelID des Prozessmodells (BPMN), auf das sich der Vorgang bezieht.
  • processmodelnameName des Prozessmodells (BPMN), zu dem das Start-Event gehört.
  • idswimlaneID der Lane (Swimlane), die den Aktivitäten des gestarteten Prozesses zugewiesen ist.
  • swimlanenameName der zugeordneten Lane.
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • assignmentmodeAufgaben-Zuweisungsmodus, definiert im Modell (0 = automatische Zuweisung aus der Warteschlange).
  • userschemaSchema der zulässigen Benutzer (serialisiertes JSON) des Start-Events.
POST ✓ Roboter-Whitelist /processes/

Startet einen neuen BPMN-Prozess und erzeugt den initialen Fortschritts-Token.

Request Body
{
  "idprocessmodel": 88,
  "idorganization": 14207,
  "idevent": 21,
  "startdate": "2026-08-26T08:00:00Z",
  "enddate": null,
  "description": "Fattura #2026-0451",
  "descriptiondetail": "Emissione automatica da robot",
  "userdata": { "cliente": "Acme Spa" }
}
  • idprocessmodelID des Prozessmodells (BPMN), auf das sich der Vorgang bezieht.
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • ideventID des Start-Events des Modells, das den Prozess instanziiert: aus /startevents/organizations/{idorganization} wählen.
  • startdateStartdatum/-uhrzeit des Prozesses im ISO-8601-Format (z. B. 2026-08-26T08:00:00Z).
  • enddateEnddatum/-uhrzeit des Prozesses; null, solange der Prozess nicht abgeschlossen ist.
  • descriptionKurze Beschreibung des Prozesses, sichtbar in der Oberfläche (z. B. Rechnung #2026-0451).
  • descriptiondetailOptionale erweiterte Beschreibung mit den operativen Details der Prozessinstanz.
  • userdataObjekt mit freien, an die Instanz gebundenen Daten (z. B. Kunde): bleiben für die gesamte Lebensdauer des Prozesses erhalten.
Response 200 OK
{
  "process": {
    "id": 773019
  },
  "processtoken": {
    "id": 901,
    "state": 0
  },
  "previousprocesstoken": {
    "id": 901
  }
}
  • processInstanziierter Prozess: das Feld id ist der globale Bezug für das Lesen von Anhängen und Abfragen zum Prozess.
  • processtokenFortschritts-Token, das die Operation erzeugt oder verschiebt: die Arbeitseinheit, die der Roboter Knoten für Knoten steuert.
  • idID des Fortschritts-Tokens: eindeutiger Bezeichner der Arbeitseinheit.
  • stateToken-Status: 0 = wartend (todo), 1 = in Bearbeitung (doing), 2 = abgeschlossen (done).
  • previousprocesstokenStatus des Tokens vor der Operation: nützlich für Audit und Rekonstruktion der Prozesshistorie.
search_check

3. Aufgabenermittlung

info
Betriebsmodell per Polling: Das Integrationsmodell von Flowenti für Roboter basiert auf aktivem Polling . Der Roboter fragt Flowenti regelmäßig ab, ob neue Aufgaben zur Verarbeitung bereitstehen; Flowenti sendet in diesem Fluss keine Push-Benachrichtigungen.
GET ✓ Roboter-Whitelist /tasks/organizations/{idorganization}/canget

Fragt das System nach verfügbaren Aufgaben ab, die der Roboter übernehmen kann.

Path Parameters
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
Response 200 OK
{
  "waitingflownodes": [
    {
      "idprocesstoken": 901,
      "idflownode": 41,
      "designerid": "Task_EstrarreFatturePDF",
      "flownodename": "EstrarreFatturePDF",
      "idprocess": 773019,
      "idprocessmodel": 88,
      "idorganization": 14207,
      "processmodelname": "Gestione Ordini",
      "state": 0,
      "priority_name": "HIGH",
      "countcomments": 0,
      "countattachments": 2
    }
  ],
  "doingflownodes": []
}
  • waitingflownodesWartende Aufgaben (Status todo), die der Roboter mit nextstate/doing übernehmen kann.
  • doingflownodesAufgaben, die sich derzeit (Status doing) in Bearbeitung durch den Roboter befinden.
  • idprocesstokenID des Fortschritts-Tokens, auf dem in nachfolgenden Aufrufen gearbeitet wird (nextstate, Anhänge, exit).
  • idflownodeID des Aktivitätsknotens: der Wert, der als {idflownode} im nextstate-Body verwendet wird.
  • designeridAlphanumerische ID des Knotens im BPMN-Diagramm (XML-Id des Designers): nötig für /exit/{designerid} an Gateways.
  • flownodenameLesbarer Name der Aktivität, wie er im BPMN-Modell gezeichnet wurde.
  • idprocessID des Prozesses, zu dem die Aufgabe gehört: nötig zum Lesen der Anhänge (/processes/{idprocess}/attachments/light).
  • idprocessmodelID des Prozessmodells (BPMN), auf das sich der Vorgang bezieht.
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • processmodelnameName des Prozessmodells (BPMN), zu dem das Start-Event gehört.
  • stateToken-Status: 0 = wartend (todo), 1 = in Bearbeitung (doing), 2 = abgeschlossen (done).
  • priority_namePriorität der Aufgabe, definiert im Modell (z. B. HIGH): bestimmt die Verarbeitungsreihenfolge.
  • countcommentsAnzahl der Kommentare zur Aufgabe (nur Lesen).
  • countattachmentsAnzahl der bereits vorhandenen Anhänge zur Aufgabe (nur Lesen).
readiness_score

4. Aufgabenfortschritt

POST ✓ Roboter-Whitelist /processes/{idtoken}/nextstate/doing

Meldet Flowenti, dass der Roboter die Aufgabe übernommen hat, und setzt den Token-Status auf

Request Body
{
  "idflownode": 555,
  "iduserrobot": 17
}
  • idflownodeID des Aktivitätsknotens (Flownode), auf den sich die Aktion bezieht: stammt aus der Liste waitingflownodes des Pollings.
  • iduserrobotID des Benutzers/Roboters, der den Vorgang ausführt: derjenige, der dem JWT-Token des Roboters zugeordnet ist.
Response 200 OK
{
  "idtoken": 888111,
  "state": 1,
  "claimedAt": "2026-08-27T14:33:02Z",
  "iduserrobot": 17
}
  • idtokenID des Tokens, dessen Status durch die Operation geändert wurde.
  • stateToken-Status: 0 = wartend (todo), 1 = in Bearbeitung (doing), 2 = abgeschlossen (done).
  • claimedAtDatum/Uhrzeit der Übernahme (ISO 8601).
  • iduserrobotID des Benutzers/Roboters, der den Vorgang ausführt: derjenige, der dem JWT-Token des Roboters zugeordnet ist.
POST ✓ Roboter-Whitelist /processes/{idtoken}/nextstate/done

Meldet den erfolgreichen Abschluss der Aufgabe und bewegt den Fluss zum nächsten Knoten.

Request Body
{
  "idflownode": 555,
  "result": {
    "validated": true,
    "extractedFields": {
      "total": 1234.56,
      "vat": 258.86
    }
  }
}
  • idflownodeID des Aktivitätsknotens (Flownode), auf den sich die Aktion bezieht: stammt aus der Liste waitingflownodes des Pollings.
  • resultFreies Ergebnis-Payload mit den von der Aufgabe erzeugten Daten (z. B. extrahierte Felder): wird am Prozess gespeichert und den nächsten Knoten zur Verfügung gestellt.
Response 200 OK
{
  "process": {
    "id": 1661721,
    "idprocessmodel": 27613,
    "idorganization": 14299,
    "state": 0
  },
  "processtoken": {
    "id": 35093744,
    "idprocess": 1661721,
    "idflownode": 38882,
    "flownodetype": 0,
    "iduser": 21976,
    "state": 2,
    "previous": 35093743,
    "created": "...",
    "startdoing": "...",
    "done": "..."
  },
  "previousprocesstoken": {
    "id": 35093743,
    "state": 2,
    "idflownode": 40414
  },
  "previousflownode": {
    "id": 40414,
    "designerid": "Activity_1",
    "name": "prima task"
  },
  "flownode": {
    "id": 38882,
    "designerid": "Event_1blr1wv",
    "idtype": 1
  },
  "sequenceflows": []
}
  • processInstanziierter Prozess: das Feld id ist der globale Bezug für das Lesen von Anhängen und Abfragen zum Prozess.
  • processtokenFortschritts-Token, das die Operation erzeugt oder verschiebt: die Arbeitseinheit, die der Roboter Knoten für Knoten steuert.
  • idID des Fortschritts-Tokens: eindeutiger Bezeichner der Arbeitseinheit.
  • idprocessID des Prozesses, zu dem der Token gehört.
  • idflownodeID des Knotens (Aktivität oder Ereignis), auf dem sich der Token befindet.
  • flownodetypeKnotentyp (0 = Ereignis, 1 = Aktivität, ...).
  • iduserID des Benutzers/Roboters, der den Token bearbeitet (0, wenn in der Warteschlange).
  • stateToken-Status: 0 = wartend (todo), 1 = in Bearbeitung (doing), 2 = abgeschlossen (done).
  • previousID des vorherigen Tokens in der Prozesshistorie.
  • createdErstellungsdatum/-uhrzeit des Tokens (ISO 8601).
  • startdoingDatum/Uhrzeit der Übernahme; null, bis der Token zu doing wechselt.
  • doneDatum/Uhrzeit des Abschlusses; null, bis der Token zu done wechselt.
  • previousprocesstokenStatus des Tokens vor der Operation: nützlich für Audit und Rekonstruktion der Prozesshistorie.
  • previousflownodeKnoten, von dem der Token vor der Operation kam.
  • flownodeKnoten (Aktivität oder Ereignis), auf dem sich der Token jetzt befindet.
  • sequenceflowsSequenzflüsse, die vom aktuellen Knoten erreichbar sind: nicht leer, wenn weitere Entscheidungen nötig sind.
POST ✓ Roboter-Whitelist /processes/{idtoken}/undo

Macht die letzte Aktion des Roboters an der Aufgabe rückgängig (Undo): setzt den Token-Status von In Bearbeitung (1) auf Wartend (0) zurück und stellt die Aufgabe wieder in die Warteschlange der verfügbaren Aufgaben. Dies ist der einzige heute unterstützte Wiederherstellungsmechanismus — es gibt kein nextstate/error, failed oder abort — zu verwenden, wenn die Roboter-Laufzeit eine Aktivität nicht abschließen kann.

Response 200 OK
{
  "process": {
    "id": 1,
    "idorganization": 1,
    "idprocessmodel": 1,
    "startdate": "...",
    "enddate": null,
    "userdata": "{}"
  },
  "processtoken": {
    "id": 2,
    "idprocess": 1,
    "idflownode": 7,
    "flownodetype": 1,
    "iduser": 2,
    "state": 0,
    "previous": 0,
    "created": "...",
    "startdoing": null,
    "done": null
  },
  "flownode": {
    "id": 7,
    "name": "Attività 1",
    "designerid": "Activity_1"
  },
  "previousflownode": {
    "id": 6,
    "name": "Evento",
    "designerid": "StartEvent_1"
  },
  "previousprocesstoken": {
    "id": 1,
    "state": 2,
    "idflownode": 6,
    "flownodetype": 0,
    "iduser": 2,
    "previous": 0
  }
}
  • processInstanziierter Prozess: das Feld id ist der globale Bezug für das Lesen von Anhängen und Abfragen zum Prozess.
  • processtokenFortschritts-Token, das die Operation erzeugt oder verschiebt: die Arbeitseinheit, die der Roboter Knoten für Knoten steuert.
  • idID des Fortschritts-Tokens: eindeutiger Bezeichner der Arbeitseinheit.
  • idprocessID des Prozesses, zu dem der Token gehört.
  • idflownodeID des Knotens (Aktivität oder Ereignis), auf dem sich der Token befindet.
  • flownodetypeKnotentyp (0 = Ereignis, 1 = Aktivität, ...).
  • iduserID des Benutzers/Roboters, der den Token bearbeitet (0, wenn in der Warteschlange).
  • stateToken-Status: 0 = wartend (todo), 1 = in Bearbeitung (doing), 2 = abgeschlossen (done).
  • previousID des vorherigen Tokens in der Prozesshistorie.
  • createdErstellungsdatum/-uhrzeit des Tokens (ISO 8601).
  • startdoingDatum/Uhrzeit der Übernahme; null, bis der Token zu doing wechselt.
  • doneDatum/Uhrzeit des Abschlusses; null, bis der Token zu done wechselt.
  • flownodeKnoten (Aktivität oder Ereignis), auf dem sich der Token jetzt befindet.
  • previousflownodeKnoten, von dem der Token vor der Operation kam.
  • previousprocesstokenStatus des Tokens vor der Operation: nützlich für Audit und Rekonstruktion der Prozesshistorie.
account_tree Token-Statusmaschine

Jede Aufgabe wird durch einen Prozess-Token mit numerischem Status dargestellt:

  • 0 — Wartend (todo)
  • 1 — In Bearbeitung (doing)
  • 2 — Abgeschlossen (done)

Hauptübergänge: nextstate/doing zum Übernehmen, nextstate/done zum Abschließen, undo zum Zurückstellen.

alt_route

5. Pfadauswahl (Gateway-Routing)

POST ✓ Roboter-Whitelist /processes/tokens/{idtoken}/exit/{designerid}

Wählt den konkreten Gateway-Ausgang, wenn der BPMN-Fluss auf eine bedingte Entscheidung oder einen robotergesteuerten Zweig trifft.

Request Body
{
  "reason": "validated_by_robot",
  "metadata": {
    "validationScore": 0.97
  }
}
  • reasonFreies Label, das den Grund für die Wahl des Gateway-Zweigs dokumentiert (z. B. validated_by_robot).
  • metadataOptionales Objekt mit zusätzlichen Daten zur Entscheidung (z. B. Validierungspunktzahl).
Response 200 OK
{
  "idtoken": 888111,
  "selectedExit": "approve",
  "designerid": "Gateway_approve_01",
  "advancedAt": "2026-08-27T14:34:01Z"
}
  • idtokenID des Tokens, dessen Status durch die Operation geändert wurde.
  • selectedExitName des vom Roboter gewählten Gateway-Ausgangs.
  • designeridAlphanumerische ID des Knotens im BPMN-Diagramm (XML-Id des Designers): nötig für /exit/{designerid} an Gateways.
  • advancedAtDatum/Uhrzeit des Fortschritts (ISO 8601).
attach_file

6. Anhänge

warning Hinweis zur Inkonsistenz der Anhang-Pfade:

Vorsicht bei der Entwicklung: Anhänge werden geschrieben unter Bezug auf den Knoten-Token ( /flownodes/{idprocesstoken}/attachments ), während das Lesen den globalen Prozessbezug erfordert ( /processes/{idprocess}/attachments/light ). Verwenden Sie den richtigen Parameter, um 404 Not Found.

POST ✓ Roboter-Whitelist /flownodes/{idprocesstoken}/attachments

Lädt eine angehängte Datei hoch und verknüpft sie mit dem aktuellen Prozessknoten (verwendet

Request Body
{
  "idorganization": 14207,
  "filename": "fattura_2026.pdf",
  "cloudlink": "",
  "idtype": 1,
  "description": "Fattura 2026",
  "blob": "<base64 del file>",
  "size": 24576
}
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • filenameDateiname mit Endung, so wie er im Anhang erscheinen soll.
  • cloudlinkCloud-URL als Alternative zum Binär-Upload: ist sie gesetzt, zeigt der Anhang auf eine entfernte Ressource statt auf den Blob.
  • idtypeAnhangstyp (idtype): Kennung der von der Plattform verwalteten Dateikategorie.
  • descriptionKurze Beschreibung des Prozesses, sichtbar in der Oberfläche (z. B. Rechnung #2026-0451).
  • blobDateiinhalt, base64-kodiert; size ist die Größe in Byte.
  • sizeDateigröße in Byte, konsistent mit dem Blob-Inhalt.
Response 200 OK
{
  "idattachment": 7890,
  "idprocesstoken": 888111,
  "filename": "fattura_2026.pdf",
  "size": 24576,
  "uploadedAt": "2026-08-27T14:34:10Z"
}
  • idattachmentID des erstellten Anhangs: für spätere Operationen zu verwenden.
  • idprocesstokenID des Fortschritts-Tokens, auf dem in nachfolgenden Aufrufen gearbeitet wird (nextstate, Anhänge, exit).
  • filenameDateiname mit Endung, so wie er im Anhang erscheinen soll.
  • sizeDateigröße in Byte, konsistent mit dem Blob-Inhalt.
  • uploadedAtDatum/Uhrzeit des Uploads (ISO 8601).
GET ✓ Roboter-Whitelist /processes/{idprocess}/attachments/light

Liest die schlanke Liste aller Anhänge des Prozesses (verwendet

Path Parameters
  • idprocessID des Prozesses, auf den sich der Vorgang bezieht: stammt aus der Antwort des Prozessstarts (/processes/) oder des Pollings.
Response 200 OK
{
  "attachments": [
    {
      "id": 7890,
      "idorganization": 1,
      "filename": "invoice-98765.pdf",
      "description": "",
      "idtype": 1,
      "cloudlink": "",
      "creation": "2026-09-09T14:34:10Z",
      "iduser": 0,
      "username": "",
      "activityname": "acct1"
    }
  ]
}
  • attachmentsListe der Anhänge des Prozesses: ein Eintrag pro hochgeladener Datei.
  • idID des Anhangs.
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • filenameDateiname mit Endung, so wie er im Anhang erscheinen soll.
  • descriptionBeschreibung des Anhangs (leer, wenn beim Upload nicht angegeben).
  • idtypeAnhangstyp (idtype): Kennung der von der Plattform verwalteten Dateikategorie.
  • cloudlinkCloud-URL als Alternative zum Binär-Upload: ist sie gesetzt, zeigt der Anhang auf eine entfernte Ressource statt auf den Blob.
  • creationErstellungsdatum/-uhrzeit des Anhangs (ISO 8601).
  • iduserID des Benutzers, der den Anhang hochgeladen hat (0 für Roboter).
  • usernameBenutzername des Uploaders (leer bei Robotern).
  • activitynameName der Aktivität (BPMN-Knoten), mit der der Anhang verknüpft ist.
playlist_play

7. Erweitertes Aufgaben-Pull

GET ⚠ Whitelist erforderlich /tasks/organizations/{idorganization}/doing

Variante von /tasks/doing gefiltert nach Organisation. Gibt die Doing-Aufgaben des aktuellen Roboters für eine einzelne Organisation zurück.

Path Parameters
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
Response 200 OK
{
  "doingflownodes": [
    {
      "idprocesstoken": 1,
      "idprocess": 1,
      "idflownode": 7,
      "flownodename": "Attività 1",
      "priority_name": "Alta"
    }
  ]
}
  • doingflownodesAufgaben, die sich derzeit (Status doing) in Bearbeitung durch den Roboter befinden.
  • idprocesstokenID des Fortschritts-Tokens, auf dem in nachfolgenden Aufrufen gearbeitet wird (nextstate, Anhänge, exit).
  • idprocessID des Prozesses, zu dem die Aufgabe gehört: nötig zum Lesen der Anhänge (/processes/{idprocess}/attachments/light).
  • idflownodeID des Aktivitätsknotens: der Wert, der als {idflownode} im nextstate-Body verwendet wird.
  • flownodenameLesbarer Name der Aktivität, wie er im BPMN-Modell gezeichnet wurde.
  • priority_namePriorität der Aufgabe, definiert im Modell (z. B. HIGH): bestimmt die Verarbeitungsreihenfolge.
travel_explore

8. Roboter-Discovery & Konfiguration

GET ✓ Roboter-Whitelist /startevents

Globale Discovery aller für den Roboter verfügbaren Start-Ereignisse über alle Organisationen. Cross-Org-Alternative zu /startevents/organizations/{id}.

Response 200 OK
{
  "possiblestart": [
    {
      "id": 1,
      "name": "StartEvent_1",
      "idtype": 0,
      "idprocessmodel": 1,
      "processmodelname": "Modello A",
      "idswimlane": 1,
      "swimlanename": "Lane 1",
      "idorganization": 1,
      "assignmentmode": 1,
      "userschema": "..."
    }
  ]
}
  • possiblestartListe der verfügbaren Start-Events: jeder Eintrag ist ein Prozess, den der Roboter instanziieren kann.
  • idID des Start-Events: der Wert, der beim Prozessstart als {idevent} verwendet wird.
  • nameName des Start-Events (kann leer sein).
  • idtypeTyp des im BPMN-Modell definierten Start-Events.
  • idprocessmodelID des Prozessmodells (BPMN), auf das sich der Vorgang bezieht.
  • processmodelnameName des Prozessmodells (BPMN), zu dem das Start-Event gehört.
  • idswimlaneID der Lane (Swimlane), die den Aktivitäten des gestarteten Prozesses zugewiesen ist.
  • swimlanenameName der zugeordneten Lane.
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • assignmentmodeAufgaben-Zuweisungsmodus, definiert im Modell (0 = automatische Zuweisung aus der Warteschlange).
  • userschemaSchema der zulässigen Benutzer (serialisiertes JSON) des Start-Events.
GET ✓ Roboter-Whitelist /robots/configurations/data/{idorganization}/{idprocessmodel}

Liest die JSON-Konfiguration des Roboters für die angegebene Organisation und das Prozessmodell. Wird beim Bootstrap verwendet, um Treiberparameter, Remote-Endpoints und Integrations-Credentials zu lesen.

Path Parameters
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • idprocessmodelID des Prozessmodells (BPMN), auf das sich der Vorgang bezieht.
Response 200 OK
{
  "id": 1,
  "idorganization": 1,
  "idrobot": 1,
  "idprocessmodel": 1,
  "linkedto": "",
  "datajson": {
    "chiave": "valore"
  }
}
  • idID der Konfigurationszeile.
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • idrobotID des Roboters, auf den sich die Daten beziehen.
  • idprocessmodelID des Prozessmodells (BPMN), auf das sich der Vorgang bezieht.
  • linkedtoInterne Verknüpfungsreferenz (meist leer).
  • datajsonKonfiguration und Laufzeitparameter des Roboters als freies JSON: wird beim Bootstrap gelesen und vom Roboter interpretiert.
GET ✓ Roboter-Whitelist /robots/organizations

Listet die dem aktuellen Roboter zugeordneten Organisationen mit ihren Tags auf (dringend, Routine, Batch usw.). Nützlich, um Aufgaben vor der Übernahme an die richtige Organisation zu leiten.

Response 200 OK
{
  "idrobot": 1,
  "organizations": [
    {
      "id": 1,
      "name": "Org1",
      "tags": [
        {
          "id": 1,
          "name": "urgente",
          "idorganization": 1,
          "color": "#ff0000"
        }
      ]
    }
  ]
}
  • idrobotID des Roboters, auf den sich die Daten beziehen.
  • organizationsListe der Organisationen, die mit dem API-Key des Roboters verknüpft sind: mit einem Roboter-Token enthält sie nur einen Eintrag.
  • idNumerische ID der Organisation: der Wert, der in den anderen Endpunkten als {idorganization} verwendet wird.
  • nameAnzeigename der Organisation.
  • tagsTags der Organisation (z. B. dringend, Routine, Batch).
  • tags.idID des Tags.
  • tags.nameName des Tags (z. B. dringend).
  • tags.idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • tags.colorFarbe des Tags im Hex-Format (z. B. #ff0000).
GET ✓ Roboter-Whitelist /organizations/{idorganization}/robots/{id}/settings?idprocessmodel={idprocessmodel}

Per-Roboter-Einstellungen für eine bestimmte Organisation und ein Prozessmodell. Der Query-Parameter `idprocessmodel` ist erforderlich: ohne ihn sucht der Server die Zeile auf Organisationsebene (idprocessmodel is null), die normalerweise nicht existiert. Enthält die datajson-Nutzlast mit den Roboter-Laufzeitparametern.

Path Parameters
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • idID des Roboters in der Organisation: aus der Liste von /robots/organizations übernehmen (Feld idrobot).
  • idprocessmodel (query)ID des Prozessmodells (BPMN), auf das sich der Vorgang bezieht.
Response 200 OK
{
  "id": 1,
  "idorganization": 1,
  "idrobot": 1,
  "idprocessmodel": null,
  "linkedto": "",
  "datajson": {
    "properties": {
      "campo1 ssss": {
        "type": "...",
        "value": "Test"
      }
    }
  }
}
  • idID der Konfigurationszeile.
  • idorganizationID der Organisation, in der der Vorgang ausgeführt wird: dieselbe, die dem API-Key (JWT) des Roboters zugeordnet ist.
  • idrobotID des Roboters, auf den sich die Daten beziehen.
  • idprocessmodelID des Prozessmodells (BPMN), auf das sich der Vorgang bezieht.
  • linkedtoInterne Verknüpfungsreferenz (meist leer).
  • datajsonKonfiguration und Laufzeitparameter des Roboters als freies JSON: wird beim Bootstrap gelesen und vom Roboter interpretiert.
  • propertiesMap Name → {type, value} mit den Laufzeitparametern des Roboters.
warning

Fehlerbehandlung und Antwortstatus

Alle Fehlerantworten der Flowenti Robots API verwenden eine einheitliche JSON-Struktur mit eindeutigem Fehlercode und Diagnosemeldung.

Standardformat der JSON-Fehlerantwort
{
  "error": {
    "code": "RESOURCE_TOKEN_NOT_FOUND",
    "message": "Il token 'tok_inv_123' specificato non corrisponde ad alcuna risorsa attiva.",
    "status": 404,
    "timestamp": "2026-08-24T12:00:00Z"
  }
}
HTTP-Code Fehlerstatus Ursache und Lösungsstrategie für den Roboter
400 Bad Request Falsche Parameter Die gesendeten Daten sind fehlerhaft oder Pflichtfelder fehlen. Prüfen Sie die Parametertypen.
401 Unauthorized Ungültiges JWT-Token Header Authorization: Bearer <JWT> fehlt, ist abgelaufen oder wurde widerrufen. Token im Organisationspanel neu generieren.
403 Forbidden Unzureichende Berechtigungen Der Roboter hat keine Berechtigung, Prozesse in der angegebenen Organisation zu starten oder zu ändern.
404 Not Found Ressource nicht vorhanden Die angeforderte Ressource existiert nicht oder ist nicht mehr verfügbar. Prüfen Sie, ob die gesendeten Kennungen und Referenzen korrekt sind.
409 Conflict Token bereits in Verwendung Ein anderer Roboter hat die Aufgabe bereits über die Transaktion /doing.
429 Rate Limit Exceeded Zu viele Polling-Anfragen Der Roboter pollt zu häufig auf /tasks/organizations/{id}/canget. Wenden Sie eine Verzögerung an (3–5 s Backoff).
500 Internal Error Flowenti-Serverfehler Temporäres Problem auf dem Flowenti-Server. Mit exponentiellem Backoff erneut versuchen.
code

Examples Code Hub

Einsatzbereiter Code für die 15 realen Endpunkte
# 1. Contesto organizzazione associata all'API Key
# Auth: Authorization: Bearer <JWT> (claims IsAPIKey='1', RobotID=<id>)
import requests

API_TOKEN = "eyJhbGciOiJIUzUxMiIs.RobotID.claim.IsAPIKey.1..."
headers = {"Authorization": f"Bearer {API_TOKEN}"}
res = requests.get("https://<host>/flowentisysman/v1/organizations/user", headers=headers)
res.raise_for_status()
print(res.json()["organizations"][0]["name"])