Update a webhook subscription
Change a subscription's target URL, its event list, or whether it is active. Every field is optional; omitted fields are left alone.
A new events array replaces the subscription outright rather than merging; null means every event, including ones added later. isActive: false pauses delivery without destroying the subscription or its history, which is the safe way to stop a noisy endpoint while its owner repairs it.
A new url is put through the same HTTPS and SSRF checks as creation: private, reserved, loopback, and unresolvable destinations are refused with 400 invalid_url.
The signing secret does not change and is not returned. There is no way to rotate it; replace the subscription instead.
The update is applied by public id within the caller's workspace, so an id from another workspace matches nothing and answers 404 like an unknown one. Accepts an Idempotency-Key; a retry with the same key replays the original response instead of re-applying the update.
Request
- Base URL: https://inkseal.net/api/v1
- URL: https://inkseal.net/api/v1/webhooks/{webhookId}
- Auth: HTTP bearer
Headers
Makes this mutation retry-safe. 1 to 255 printable ASCII characters (0x20 to 0x7e), trimmed before use. The key is scoped to the workspace and the credential that sent it. Reusing it with a different method, path, or payload answers 422 idempotency_key_reuse. A completed attempt replays its stored status and body with an Idempotent-Replay: true response header; 5xx, 429, and non-JSON answers leave the key retryable. A concurrent request holding the 90 second lease answers 409 idempotency_in_progress. Records are retained 24 hours.
Request body
Example request
{
"url": "https://hooks.example.com/inkseal/v2",
"events": [
"envelope.completed"
]
}Response
The subscription as it now stands. Timestamps are omitted from this response; read the subscription back for those.
Example response
{
"data": {
"id": "kQ7fN2wYb0LxTs6RaVpEu",
"url": "https://hooks.example.com/inkseal/v2",
"events": [
"envelope.completed"
]
}
}Changes
No recorded changes to this operation across all 1 revision of this API.