Webhook ingester
Build a webhook ingestion service that verifies SendDart signatures and stores events idempotently in your own database.
A webhook ingester is an application you build and host to receive, verify, and store SendDart events. This is an implementation guide; there is no downloadable SendDart ingester repository or prebuilt database-connector package linked from this guide.
Start with the working handler
Follow How to store webhooks data for the complete HTTP handler, signature verification, database schema, and idempotent insert. Use your own application repository and choose a database driver for your stack.
- 1Implement the endpoint
Preserve the raw request body and verify the webhook signature before parsing or storing the event.
- 2Persist idempotently
Use the svix-id header as a unique key so delivery retries cannot create duplicate records. Return a successful response only after durable storage.
- 3Deploy and register
Deploy your handler at a public HTTPS URL, register that URL in the Webhooks dashboard, and store its signing secret in your secret manager.
- 4Verify delivery
Send a test webhook from the dashboard and confirm one stored event. Replay the delivery and confirm that it is deduplicated.
Operations
- Set a retention policy for stored events and monitor database failures.
- Confirm the signing secret matches the endpoint and verify against the raw body.
- Use delivery history and retries to investigate missing events.