What is the retry logic for webhooks?

Timeouts: 2 seconds
We retry almost immediately and we retry only once. (Same for postbacks to Ad Partners)

We will retry if it’s a timeout which can be on our end or our partner’s end.

  • Error codes mean it succeeded from our end and the recipient responded with an error, and we don’t retry those.
  • Since most partners' errors are caused by misconfigured webhooks and it would create a no-value load on our system.

In addition, the 500 timeout error definition is based on our setting, not based on their system, we are waiting only 2 seconds and if they did not respond back within 2 seconds we will log 500 with the timeout error message.
It is possible that they could receive data even though there is a 500 response code with a timeout error in our postback logs. When we have a waiting time (2 seconds) less than what their server took to process the request then we could see a timeout error at our end.

Note: webhook_response_time_ms in the raw data is not the time between request and response. This returns a time from postback request creation to webhooks record logging.


Filters