Sume webhook delivery statuses: pending, retrying, exhausted
A Sume webhook delivery moves through pending, delivering, delivered, retrying, failed or exhausted. What each means for your receiver.

Sume's documented webhook delivery statuses are pending, delivering, delivered, retrying, failed and exhausted (read 2026-10-06 in the errors docs).
How do I read them?
A delivery status describes the notification, not the job. A job can be completed while its delivery is exhausted.
| Status | Reading |
|---|---|
| pending | Not yet attempted |
| delivering | Attempt in flight |
| delivered | Your receiver returned 2xx |
| retrying | Waiting for the next attempt |
| exhausted | All attempts used; poll or redeliver |
What should I do in practice?
The status shows on the job object when available.
- Poll
status_urlfor exhausted deliveries. - Redeliver after fixing the receiver.
- Do not treat a failed delivery as a failed job.
Sources
Related posts
More in Developers
- Sume webhook fails the 300-second window: find the clock drift
A valid Sume signature still fails if your server clock is more than five minutes off. Tell drift from a bad secret with a small Python check.
- Sume webhook handler over 10 seconds: acknowledge first, then work
Sume gives each webhook attempt 10 seconds. Verify, answer 2xx, then process in the background and dedupe on job_id. Node sample you can run locally.
- What status should a Sume webhook receiver return? Any 2xx
Sume counts any 2xx as delivered, so 202 or 204 is fine. A tested receiver that verifies the signature, stores the job id, answers 204 and defers the work.
- Sume webhook Redeliver errors: 409 running or no URL, 403 jobs:write
POST /v1/jobs/{id}/webhook/redeliver returns 409 while the job runs or if it had no webhook_url, 403 without jobs:write, and 404 for a job you cannot see.
Written by Sume