Zum Hauptinhalt springen

Format des Abonnement-Ereignisses

Für die kanonische, KI-freundliche Schema-Referenz siehe Subscription Event Schema.

GraphQL-Abonnements liefern eine schlanke Zustellhülle und einen JSON-kodierten Ereignisumschlag.

Zustellhülle

Antworten im Benutzer-Feed sehen so aus:

{
"data": "{\"version\":\"1.0\",\"eventId\":\"evt...\",\"timestamp\":\"2026-04-24T10:38:36.822Z\",\"level\":\"INFO\",\"event\":\"recipientVisiting\",\"category\":\"recipientLifecycle\",\"groupId\":\"grp...\",\"userId\":\"usr...\",\"requestId\":null,\"batchId\":null,\"error\":null,\"data\":{\"id\":\"rec...\",\"documentId\":\"doc...\",\"documentName\":\"Example document\",\"firstName\":\"Ada\",\"lastName\":\"Lovelace\"}}",
"userId": "..."
}

Antworten im Gruppen-Feed verwenden groupId anstelle von userId in der äußeren Hülle.

Die Hülle identifiziert den Abonnement-Kanal. Der innere data-String ist die kanonische Ereignisnutzlast.

Ereignisumschlag

Nach dem Parsen von data erhalten Sie:

{
"version": "1.0",
"eventId": "evt...",
"timestamp": "2026-04-24T10:38:36.822Z",
"level": "INFO",
"event": "recipientVisiting",
"category": "recipientLifecycle",
"groupId": "grp...",
"userId": "usr...",
"requestId": null,
"batchId": null,
"error": null,
"data": {
"id": "rec...",
"documentId": "doc...",
"documentName": "Example document",
"firstName": "Ada",
"lastName": "Lovelace"
}
}

Felder des Umschlags

FeldBeschreibung
versionVersion des Ereignisumschlags. Aktuell 1.0.
eventIdStabile logische Ereignis-ID. Fanout-Kopien desselben Ereignisses teilen denselben Wert.
timestampISO-8601 Zeitstempel des Ereignisses.
levelSchweregrad des Ereignisses. Aktuell meist INFO.
eventKanonischer Ereignisname wie documentArchived oder uploadCompleted.
categoryEreignisfamilie. Beschreibt, wie data interpretiert wird.
groupIdGruppen-Kontext, falls zutreffend.
userIdBenutzer-Kontext, falls zutreffend.
requestIdAnforderungs-Korrelations-ID, falls verfügbar.
batchIdBatch-Kontext, falls verfügbar.
errorFehler-Nutzlast, falls zutreffend, sonst null.
dataKategoriespezifische Nutzlast.

Kategorien

Aktuelle Kategorien:

  • document
  • recipient
  • documentLifecycle
  • recipientLifecycle
  • template
  • task
  • upload
  • credit

category gibt an, auf welches Objekt oder welchen Workflow sich das Ereignis bezieht. event sagt, was passiert ist.

Datenformate

data ist kategoriespezifisch und zukunftserweiterbar:

  • Produzenten können im Laufe der Zeit Felder hinzufügen.
  • Produzenten sollten vorhandene Felder nicht inkompatibel entfernen.
  • Konsumenten sollten Felder ignorieren, die sie nicht erkennen.

Aktuelle Basisformate:

// document
{ "id": "doc..." }

// recipient
{ "id": "rec...", "documentId": "doc..." }

// documentLifecycle
{ "id": "doc...", "documentName": "Example document" }

// recipientLifecycle
{
"id": "rec...",
"documentId": "doc...",
"documentName": "Example document",
"firstName": "Ada",
"lastName": "Lovelace"
}

// template
{ "id": "tpl..." }

// task
{ "id": "tsk...", "code": "TSKPROCESSOK", "documents": [] }

// upload
{ "id": "tmp...", "key": "upload/usr.../tmp....pdf", "code": "UPLOADOK" }

// credit
{ "credit": 172 }

Ausführlichere Lifecycle-Daten werden derzeit am konsistentesten für documentLifecycle- und recipientLifecycle-Ereignisse bereitgestellt.

Export This Article

Save a copy of this page as PDF or plain text.