Delivery requirements
Your endpoint must:- Return a 2xx status code (200–299) within 20 seconds.
- Be publicly accessible over HTTPS.
Retry schedule
When a delivery fails, Allo retries automatically with exponential backoff:
After 8 attempts (~27.5 hours), the message is marked as Failed.
Circuit breaker
Allo automatically disables endpoints that fail persistently. The process works as follows:- Multiple deliveries must fail within a 24-hour window, with at least 12 hours between the first and last failure. A brief outage does not trigger the circuit breaker.
- Once that condition is met, a 5-day timer starts.
- If all delivery attempts continue to fail for 5 consecutive days, the endpoint is automatically disabled.
- Fix the issue with your endpoint.
- Go to Settings > Webhooks and re-enable the webhook.
- Use the Recover option in the webhook settings to replay missed events.
Inspecting deliveries
You can inspect delivery attempts, view payloads, and check response details from Settings > Webhooks. Select a webhook to see its delivery history, filter by status, and drill into individual deliveries.Retry and recovery
From the webhook settings UI you can:- Retry a specific failed delivery immediately.
- Recover missed events by replaying all deliveries since a given date. Use this after fixing a broken endpoint or recovering from downtime.
Delivery guarantees
Allo uses at-least-once delivery. Events may be delivered more than once. Implement idempotency in your handler using thewebhook-id header. See Best practices.