WebhookPayload, and contains the following properties:
A webhook payload for the event
contact.changed is send as the following JSON message:
The event name, event ID, and signature are sent as HTTP headers, to help the recipient route and filter the notification without having to parse the body.
Changes field names
Fields names that appear in a notificationChanges property are the names of the fields as they appear in the database.
WebhookPayload headers
Error Handling for Webhooks
There are three attempts to send a webhook payload during a single cycle. If the first one fails, the next attempt is delayed by 1 second. If the second attempt fails, the third attempt is delayed by 4 seconds. If the third attempt fails, it is removed from this cycle and sent to the back of the queue. All active webhook payloads are given a total of 9 consecutive attempts before the state is changed toTooManyErrors (3).
If the HTTP request fails to receive a 200 response for three attempts, the event associated with those attempts is discarded, and the webhook’s consecutive_errors count is incremented. The next attempt made will feature a new EventID.
Email Notification on Error
In the event that theEmailErrors property is set, when a webhook state is set to TooManyErrors, an automatic email will be dispatched to the specified email address. This email will detail the error, the associated EventID, Name and more details.
The EventID remains consistent for each attempt, facilitating accurate tracking and management of webhook events. However, if there are three consecutive failed attempts, the event is discarded, and the next attempt will be associated with a new EventID.
Following TooManyErrors status, it is the responsibility of the receiver to manage the webhook state. The receiver can reset the state to Active (1) to resume the sending of webhook payloads. The EmailErrors notification system is designed to promptly inform the receiver of any critical issues that might prevent successful data delivery.