Developer
Retry logic
What counts as delivered, and what we do when it isn't.
A delivery is delivered when your endpoint answers any 2xx within 10 seconds. Anything else — a non-2xx, a timeout, a connection error — is a failed attempt and is retried with exponential backoff:
| Attempt | After |
|---|---|
| 1 | immediately |
| 2 | 30 s |
| 3 | 1 min |
| 4 | 2 min |
| 5 | 4 min |
| 6 | 8 min |
| 7 | 16 min |
| 8 | 32 min |
After the eighth failure the delivery is marked failed; it stays in the delivery log, where a human can Redeliver it at any time (the retry cycle starts again, with Trabalance-Redelivery: true).
ℹ️Every attempt is logged
Status, HTTP code, duration and the first 512 characters of your response are recorded per attempt — in Settings for business endpoints, under the app's Webhooks tab for OAuth apps.
Ordering is not guaranteed across events; use created_at and Trabalance-Event-Id if order matters to you.