Webhook retry mechanism

In response to Leap calling your webhook endpoint, you simply need to return any 2xx HTTP status. Leap then knows your system received and processed the request. In case you return a different status – let’s say because there’s a temporary problem with your hosting service – we will keep trying for a few hours, allowing you to process the request later on after your hosting service has been restored.

Webhook calls time out and are reset after 10 seconds. Even if you return a 2xx HTTP status after 11 seconds, we will mark the webhook call as failed and try again later according to the intervals below.

In total, your webhook could be called 10 times with an increasing interval between each call. If after the 10th call we still do not get a 2xx response (which is after 8 hours), we will stop trying.

We use the following intervals between attempts:

Attempt Interval Approximate time after status change (HH:mm)
1st Immediately after status change 00:00
2nd 1 minute 00:01
3rd 2 minutes 00:03
4th 4 minutes 00:07
5th 8 minutes 00:15
6th 16 minutes 00:31
7th 29 minutes 01:00
8th 1 hour 02:00
9th 2 hours 04:00
10th 4 hours 08:00

Because dispatch webhook events are configured independently from this general webhook platform and to better support real-time programs, dispatch event retries happen every 1 minute for up to 50 minutes (50 max retries).