From b7586057ee6b3b0d29426cc3f5e25cb6c8216f07 Mon Sep 17 00:00:00 2001 From: Marco Holz <marco.holz@fitko.de> Date: Thu, 16 Sep 2021 22:52:10 +0200 Subject: [PATCH] Callback-Nutzung im Getting-Started-Guide dokumentiert --- docs/getting-started/receiving/query.mdx | 32 ++++++++++-------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/docs/getting-started/receiving/query.mdx b/docs/getting-started/receiving/query.mdx index 1bf7e7df9..6b874565f 100644 --- a/docs/getting-started/receiving/query.mdx +++ b/docs/getting-started/receiving/query.mdx @@ -5,33 +5,27 @@ title: Vorhandensein neuer Einreichungen prüfen import ApiLink from '@site/src/components/ApiLink' -Neue Einreichungen können über zwei Wege erhalten werden. Entweder können neue Einreichungen über Polling abgefragt werden oder der Zustellpunkt wird über einen Callback vom Zustelldienst benachrichtigt. -Letzteres wäre die präferierte Variante, da dadurch unnötige Anfragen vermieden werden können und die Kommunikation so auf ein notwendiges Mindestmaß reduziert wäre. +Empfangende Systeme können sich über den Eingang neuer Einreichungen entweder durch periodische Anfragen informieren (Polling) oder vom Zustelldienst über Callbacks aktiv benachrichtigen lassen. +Letzteres stellt die empfohle Umsetzungsvariante dar, da hierdurch unnötige Anfragen vermieden werden können, was zu einer insgesamt besseren Performance und zu einer schnelleren Benachrichtung empfangnder Systeme führt. ## Callback +Wenn eine Callback-URL im Zustellpunkt hinterlegt ist, kann der Zustelldienst den Zustellpunkt aktiv via Callback über neue Einriechungen informieren. +Das Format, in welchem der Callback übertragen wird, ist im Endpunkt <ApiLink to="/destinations" withMethod="post" /> definiert. +Die Konfiguration und Prüfung von Callbacks ist im Aritkel [Verwendung von Callbacks](../../details/callbacks.mdx) beschrieben. -Wenn eine neue Einreichung im Zustelldienst bereitsteht und eine Callback-URL im Zustellpunkt hinterlegt ist, kann der Zustelldienst den Zustellpunkt direkt informieren. -Das Format, in welchem der Callback übertragen wird, im Endpunkt <ApiLink to="/destinations" withMethod="post" /> beschrieben. -Im Endeffekt, ist es jedoch ein Array mit UUIDs für jede bereitstehende Einreichung, wie im Beispiel unten. +Callbacks zur Benachrichtigung über neue Einriechungen haben das folgende Format: -```json -{ - "submissionIds": [ - "17b64151-fc80-4000-8fb7-6ddd08115780" - ] -} -``` - -:::caution Hinweis -Der Mechanismus zum Konfigurieren und Entgegennehmen von Callbacks wird sich bis zur Veröffentlichung der finalen API-Spezifikation noch einmal ändern. -::: +```http +POST /callbacks/fit-connect +callback-authentication: f4eig0ht6hdlsfz6DVqGjXi1j3RAombIQ7vjG1M2TFZx1fGurzg1nOEh00lPfLEulhio1RyTOav1e1aMi69SRg== +callback-timestamp: 1672527599 +{"type":"https://schema.fitko.de/fit-connect/callbacks/new-submissions","submissionIds":["f39ab143-d91a-474a-b69f-b00f1a1873c2"]} +``` -Wenn der Zustellpunkt benachrichtigt wird, dann kann dieser über mehrere Befehle die Einreichung mit allen verbundenen Ressourcen herunterladen. -Mehrere Befehle dahingehend, da erst alle allgemeinen Informationen zur Einreichung heruntergeladen werden müssen und dann, falls notwendig alle mit ihr verbundenen Anlagen. +Wenn das empfangende System über den Eingang neuer Einreichungen benachrichtigt wurde, dann kann es diese wie im Artikel [Einreichung herunterladen](./download-submission.mdx) beschrieben herunterladen. ## Polling - Über Polling, d.h. regelmäßiges Abfragen des Endpuntes <ApiLink to="/submissions" /> , können alle Einreichungen abgefragt werden, die zum Abholen bereitstehen. Dies wird aus Performancegründen jedoch nicht empfohlen. -- GitLab