Skip to main content

Webhook integration

Second-level retry mechanism

Once the second-level retry starts for any of the notifications:

  • All other notifications will be skipped and will be queued for processing.

  • All queued notifications will be retried when one notification from the second-level retry mechanism gets delivered successfully.

Note

Test notifications will never be skipped and will expire after 20 attempts, as test notifications are just to check the current status of the webhook.

Warning

The maximum timeout to receive a response from the integrator's URL is 5 seconds. If it takes more than 5 seconds, the request will timeout, and it will be retried according to the remaining attempts.

In the second-level retry, the first attempt is triggered after 10 seconds. The system will retry for 30 attempts with an exponential backoff rate of 1.4.

Backoff rate: The backoff rate is the multiplier by which the retry interval increases with each attempt.

This implies the following:

  • The first attempt will happen after 10 seconds

  • Thereafter the second attempt will be after 14 seconds

  • Then the third attempt will be after 19.6 seconds

  • The fourth attempt will be after 27.4 seconds, and so on.

If the retry fails continuously, the system will retry in the above-mentioned pattern for approximately 7 days.

Retry outcomes

  • Successful delivery

    If the notification is delivered successfully:

    • It will be marked as success and it will be shown in the webhook notification logs.

    • The system will start processing all the notifications (that were skipped) from the queue. All the notifications are re-sent to the first-level retry and follow the same flow again.

  • Failed delivery

    If the notification delivery fails for 30 attempts (which equals to failed delivery for nearly 7 days):

    • The notification will expire.

    • The webhook will be put into Alert mode.

    • The queue will be purged and notifications will be lost.

    • No new notifications will be processed until the webhook recovers from the Alert mode.