Start here
Introduction
What DeadHook is, what it solves, and where its reliability guarantees stop.
On this page
DeadHook is a webhook reliability layer. You give it a public ingestion URL, authenticate the provider, store each Event, and deliver it to HTTPS Destinations with retries, inspection, a dead-letter queue, and manual recovery.
It is built for teams that receive webhooks from a provider and need to know what happened after the
first 2xx or 5xx.
What DeadHook solves
- Durable acceptance. An authenticated Event is accepted only after DeadHook has recorded it and created the Delivery work for every active Destination.
- Signature-aware ingress. Sources support Standard Webhooks, generic bearer tokens, Stripe signatures, and Shopify HMAC verification.
- Independent delivery. A Destination failure does not erase the Event. You can inspect attempts, retry behavior, and terminal states.
- Recovery. Failed Deliveries appear in the Dead Letter Queue. Authorized users can replay them or stop automatic retries.
- Organization isolation. Your Organization's data is isolated, and access is controlled by your membership role.
- Operational visibility. Event Explorer, response inspection, and delivery timelines make failures explainable.
What DeadHook does not solve
- It is not exactly-once delivery. Delivery is at least once. Your Destination must be idempotent.
- It does not guarantee that a Destination will eventually succeed. Retries are bounded by attempt count and a 24-hour retry window.
- It does not transform, map, or validate your business payload. The raw body is forwarded.
- It does not make a private or non-HTTPS Destination public. Only public HTTPS Destinations are accepted.
- It does not replace provider-specific webhook verification. Choose the Source mode that matches the provider, or terminate and re-sign at your own trusted edge.
- Source, Destination, and Event configuration is handled securely in the DeadHook dashboard.
The shortest mental model
Provider ──signed POST──▶ Source ──Event──▶ one Delivery per active Destination
│
├─ attempt 1 → success
└─ attempt N → retry / dead letter → replay
A Source is an ingestion endpoint. A Destination is where DeadHook sends an outbound webhook. An Event is the durable inbound record. A Delivery is the independent promise to send that Event to one Destination. An Attempt is one HTTP request.
Continue with the Quickstart or read Core concepts.