Update a webhook endpoint

Updates a webhook endpoint. Six keys come back — neither created_at nor last_triggered_at is among them.

Requires the webhooks:write ability. Any key of the account can update any endpoint of the account.

This behaves as a partial update despite the PUT verb. Only the fields you send are written; everything you omit keeps its current value. That is what makes {"is_active": false} a safe way to stop deliveries without restating the URL and the event list.

events replaces the subscription list outright when you send it. Send the full list you want, not the difference.

secret cannot be set here. Rotate it with its own operation.

Refusals past the shared ones: 404 WEBHOOK_NOT_FOUND, 404 RESOURCE_NOT_FOUND, 422 VALIDATION_FAILED, 422 WEBHOOK_ALREADY_EXISTS — which carries no errors key — and 500 SYSTEM_DATABASE_ERROR.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
uuid
required

The resource's unique identifier.

Body Params

This operation behaves as a partial update despite the PUT verb. Only the fields you send are written, and everything you omit keeps its current value — which is what makes {"is_active": false} a safe way to deactivate an endpoint without restating its URL and events.

One asymmetry worth knowing: sending "description": null explicitly clears the description, while omitting it preserves it.

The signing secret cannot be set here; rotate it with its own operation. Per-endpoint delivery timeouts and retry counts cannot be set at all.

uri
length ≤ 500

Subject to the same account-wide uniqueness as on create: pointing an endpoint at a URL another one already holds is refused with 422 WEBHOOK_ALREADY_EXISTS.

string | null
events
array of objects
length ≥ 1

Replaces the subscription list outright when sent. Send the full list you want, not the delta.

events
Allowed:
boolean

false stops deliveries to this endpoint without deleting it.

Responses

Language
Credentials
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json