Update a webhook subscription
Updates the URL, event types, or enabled flag. Any field omitted from the request body is left unchanged. The signing secret is unaffected — use POST /webhooks/{id}/rotate-secret to rotate it.
For optimistic concurrency, send If-Match: <etag> using the ETag from a prior GET. A mismatched If-Match returns 409 conflict (the server’s ETag is echoed back so you can decide whether to re-fetch). Responses carry the new ETag so chained edits can pipeline without a re-GET.
Authorizations
Sendmux API key. Use a root API key for Management API routes, or a mailbox credential for Mailbox API routes. Obtain keys from the dashboard under API Keys.
Headers
Weak ETag from a prior GET. Reject with 409 conflict when the server's current ETag differs.
Path Parameters
Webhook public ID
Body
Replace the human-friendly label. Send null to clear it; omit to leave unchanged.
255New HTTPS endpoint. Must be https://.
Replaces the full event-type list. At least one must be provided.
1Event types a webhook may subscribe to. sendmux.test is accepted so you can verify end-to-end delivery via POST /webhooks/{id}/test.
message.delivered, message.bounced, message.complained, message.rejected, message.delivery_delayed, message.received, message.received.spam, sendmux.test Replaces the full delivery scope. Omit to leave unchanged; pass an empty mailbox_ids array for all team mailboxes.
When toggled from false to true, also clears the failing flag — retry deliveries resume on the next matching event.