Request Attempts
A request attempt represents a single delivery attempt for a webhook. When an event matches a subscription, Hook0 creates a request attempt and tracks its lifecycle from creation to successful delivery or final failure.
Key Points
- Each event/subscription pair generates one or more request attempts
- Hook0 automatically retries failed deliveries with exponential backoff
- Request attempts transition through distinct statuses
- Full delivery history is available for debugging
Delivery Lifecycle
Event Created
|
v
+-------------------+
| PENDING | <- Queued for delivery
+-------------------+
|
v
+-------------------+
| IN_PROGRESS | <- Being delivered
+-------------------+
|
+-------+-------+
| |
v v
+----------+ +----------+
|SUCCESSFUL| | FAILED |
+----------+ +----------+
|
v (if retries remaining)
+----------+
| WAITING | <- Backoff delay
+----------+
|
v
(retry cycle)
Status States
Request attempts transition through these states:
- Pending - Queued and waiting to be picked up for delivery
- In Progress - Currently being delivered to the endpoint
- Waiting - Delivery failed, waiting for retry (backoff delay)
- Successful - Webhook delivered and endpoint returned 2xx
- Failed - All retry attempts exhausted or permanently failed
Retry Behavior
When a delivery fails, Hook0 automatically schedules retries with exponential backoff:
- First failure → Short delay
- Subsequent failures → Progressively longer delays
- After max retries → Marked as permanently failed
This ensures transient failures don't cause data loss while avoiding overwhelming struggling endpoints.
Failure Scenarios
Request attempts fail when:
- Endpoint returns 4xx or 5xx status codes
- Connection times out
- DNS resolution fails
- SSL/TLS handshake fails
- Application is deleted (all pending attempts cancelled)
Debugging Failed Webhooks
When webhooks fail, request attempts provide:
- Timestamps - When each phase occurred
- Retry count - How many attempts were made
- Response reference - Link to the endpoint's response
This information helps identify:
- Endpoint availability issues
- Authentication problems
- Payload processing errors
What's Next?
- Debug Failed Webhooks - Troubleshooting guide
- Monitor Webhook Performance - Tracking metrics
- Subscriptions - Configuring webhook endpoints
- Events - Understanding event structure