Documentatie

Webhooks fallen in dieselbe Kategorie wie die API: Sie sind ein Mittel, um Anwendungen miteinander kommunizieren zu lassen.
Die beiden Themen können auch nicht völlig getrennt voneinander betrachtet werden. Es gibt jedoch Unterschiede im Ansatz.

Polling versus Synchronisation

Wenn Polling vorliegt, nutzt die externe Anwendung die API von i-Reserve regelmäßig, um aktualisierte Daten abzufragen. Im Allgemeinen kann man sagen, dass die Frequenz von der externen Anwendung bestimmt wird. Manchmal geschieht dies stündlich, täglich oder manchmal sogar seltener.

Pull versus Push

Wo beginnt die Aktion? Daten werden von einer Quellanwendung gepusht, oder es findet ein Pull statt, der von der Quellanwendung ausgeführt wird. In der Polling-Variante ist es die externe Anwendung, die periodisch eine Abfrage durchführt und versucht, aktuelle Daten zu synchronisieren. Auf beiden Seiten muss Logik eingebaut werden. Es muss schließlich möglich sein, aktuelle Daten abzufragen. Aber was ist aktuell? Das hängt von der Frequenz der Anwendung ab, die die Daten abfragt. Erfolgt die Abfrage einmal pro Tag, ist die Liste der aktuellen Daten anders, als wenn die Abfragen alle (paar) Minuten erfolgen. Webhooks vermeiden dieses Thema vollständig. Es ist schließlich die Quellanwendung, die nur dann Daten versendet, wenn sich tatsächlich etwas geändert hat.

Fehlerbehandlung

Ein Webhook findet statt. Die Daten werden zugestellt. Die von i-Reserve ausgehenden Webhooks werden an eine URL zugestellt. Dies wird technisch kontrolliert. Es wird geprüft, ob der Response-HTTP-Code zwischen 200 und 399 liegt. Sollte die Ziel-URL nicht erreichbar sein oder wird ein anderer Response-Code zurückgegeben, wird es noch mehrere Male versucht, bevor der Webhook endgültig fehlschlägt. Es findet jedoch keine inhaltliche Kontrolle der Verarbeitung der Daten statt. Die Aktion findet also „as-is" statt.