Webhooks
Durch die Verwendung von Webhooks kann EstateSync eine App über Events benachrichtigen, für die sonst ein separater API-Request gemacht werden müsste. Jeder Webhook kann durch die Events ausgelöst werden, welche beim Erstellen des Webhooks per API oder Dashboard übergeben werden. EstateSync versucht, einen POST Request mit einem application/json
Body an die angegebene URL zu senden. Der Inhalt hat die Form
{
"eventId": "[event_id]",
"eventName": "[event_name]",
"eventPayload": {},
"eventTime": "[event_time_ISO_string]"
}
Zustellversuche
EstateSync erwartet eine "2xx"-Antwort, wenn es einen Request an die von Ihnen angegebene Webhook-URL sendet. Hat die Antwort keinen "2xx"-Statuscode, wird EstateSync den Request bis zu acht Mal mit exponentiellem Backoff wiederholen. Sie können den nächsten geplanten Versuch in der Detailansicht des jeweiligen Webhooks oder Events im Dashboard sehen. Wenn Sie auf einen bestimmten Versuch klicken, können Sie zum Debugging auch den Status Code und den Body der Antwort sehen, welchen EstateSync erhalten hat.
Event Typen
request.created
Um über neue Kontaktanfragen benachrichtigt zu werden, können Sie einen Webhook erstellen, der auf das Event request.created
reagiert. Das Feld eventPayload
des Bodys enthält die Anfrage. Es hat die gleiche Struktur wie die von GET /requests/{id}
zurückgegebenen Antworten. Weitere Informationen darüber, wie Sie diese Benachrichtigungen erhalten, finden Sie unter Kontaktanfragen.
request.parsing_failed
Um über Kontaktanfragen benachrichtigt zu werden, welche EstateSync nicht lesen kann, können Sie einen Webhook erstellen, der auf das Event request.parsing_failed
reagiert. Das Feld eventPayload
des Bodys enthält Details über die empfangene E-Mail und warum sie nicht als Anfrage gelesen werden konnte.
Dieses Event kann auftreten, wenn Sie E-Mails an EstateSync weiterleiten, welche keine echten Kontaktanfragen von einer Zielplattform sind und daher keinen XML-Anhang enthalten. Dies lässt sich am besten verhindern, indem Sie eine E-Mail-Weiterleitung auf Basis der Absenderadresse einrichten, wie unter Kontaktanfragen beschrieben.
{
"targetId": "[id-of-the-email-target]",
"createdAt": "[ISO-datetime-of-failure]",
"failureCode": "[short-error-code]",
"failureMessage": "[readable-error-description]",
"sender": "[sender-address-of-the-email]",
"recipient": "[recipient-address-of-the-email]",
"subject": "[subject-of-the-email]",
"body": "[body-of-the-email]"
}
publication.succeeded
Um über erfolgreiche Aktualisierungen von Listings benachrichtigt zu werden, können Sie einen Webhook erstellen, der auf das Event publication.succeeded
reagiert. Das Feld eventPayload
enthält ein Objekt mit Details der Veröffentlichung:
{
"listingId": "[id-of-the-concerned-listing]",
"propertyId": "[id-of-property-of-the-listing]",
"targetId": "[id-of-the-target-of-the-listing]",
"type": "set" // oder "delete"
}