logoDokumentation
Suchen

Informationen zu WebHook

WebHook ist der Kanal, über den Kund:innen ihre Versandinformationen erhalten. Nachdem der:die Nutzer:in die Mail-Anfrage an EngageLab gesendet hat, gibt EngageLab das „Anfrageergebnis“ synchron an den:die Nutzer:in zurück. Das „Versandergebnis“ sowie „weitere Ereignisergebnisse“ der E-Mail werden dem:der Nutzer:in asynchron über WebHook bereitgestellt.

Verarbeitung von WebHook

  • EngageLab stellt Kund:innen verschiedene E-Mail-Ereignisse zur Verfügung, aus denen sie relevante Ereignisse auswählen können.
  • Tritt ein Ereignis ein, sendet EngageLab (per POST) Daten an die von dem:der Kund:in hinterlegte URL.
  • Von EngageLab übertragener Datentyp: „Content-Type: application/json“.
  • Der:die Kund:in empfängt die Daten, analysiert das Ereignis und die zugehörigen Informationen. Innerhalb von 3 Sekunden muss ein HTTP-Statuscode 200 zurückgegeben werden, andernfalls sendet EngageLab die Nachricht erneut.

Vorgehensweise

  • Der:die Nutzer:in implementiert einen HTTP-Service, der die jeweiligen Ereignisse verarbeitet, die relevanten Daten analysiert und die entsprechende URL bereitstellt.
  • Im Bereich „WebHook“ von EngageLab wählt der:die Nutzer:in die gewünschten Ereignisse aus und konfiguriert die URL zum Datenempfang.

Signatur-Verifizierung

Um sicherzustellen, dass die Nachricht tatsächlich von EngageLab stammt, kann eine Sicherheitsüberprüfung der Quelle der POST-Daten durchgeführt werden (alternativ ist auch eine direkte Verarbeitung der POST-Daten ohne Verifizierung möglich).

Das Verfahren zur Sicherheitsüberprüfung ist wie folgt:

  • Den APP KEY über 【Versandeinstellungen】-【WebHook】 abrufen
  • Den Wert von X-WebHook-Timestamp aus dem Header auslesen
  • Den Wert von X-WebHook-AppKey aus dem Header auslesen
  • Den Wert von X-WebHook-Signature aus dem Header auslesen
  • Die Signatur signature mit md5(X-WebHook-Timestamp+X-WebHook-AppKey+APP KEY) generieren und mit X-WebHook-Signature vergleichen

Antwortverarbeitung

Nach dem Empfang des Rückrufs von EngageLab muss der Entwickler-Service innerhalb von 3 Sekunden wie folgt reagieren:

Erfolgreicher Empfang: Der HTTP-Response-Statuscode muss 200 oder 204 sein, eine Antwortnachricht ist nicht erforderlich.

Empfang fehlgeschlagen: Der HTTP-Response-Statuscode muss 5XX oder 4XX sein und eine Antwortnachricht im folgenden Format enthalten:

{"code": 2002, "message": "failed"}

Parameter Typ Pflicht/Optional Beschreibung
code int Optional Fehlercode
message string Optional Fehlerdetails

Retry-Verfahren

Bei einem Fehler beim URL-Zugriff oder einem Timeout versucht EngageLab maximal 7 Mal erneut zuzustellen. Die maximalen Zeitabstände zwischen den einzelnen Versuchen betragen 3 Minuten, 10 Minuten, 30 Minuten, 1 Stunde, 6 Stunden, 12 Stunden und 24 Stunden. Das bedeutet, Sie haben ausreichend Zeit, die URL zu reparieren, bevor die Nachricht verloren geht.

Wird die maximale Anzahl an Zustellversuchen überschritten, verwirft EngageLab die Nachricht.

Für jede Ereignisverarbeitung und Datenanalyse muss innerhalb von 3 Sekunden eine erfolgreiche Antwort zurückgegeben werden. Andernfalls sendet EngageLab die Nachricht erneut.

icon
Vertrieb kontaktieren