Update a webhook (url, events, inbox filter, active)
PATCH /v1/webhooks/{id}
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Query Parameters
Section titled “Query Parameters ”Select an organization within the connection grant.
Narrow to a project within the connection grant.
Request Body required
Section titled “Request Body required ”PATCH body for a webhook. Every field is optional; an omitted field leaves the stored value unchanged (PATCH semantics). The signing secret and id are immutable. inbox empty-string clears the per-inbox filter (covers all inboxes the agent owns).
object
AgentMail-compatible alias for events.
Scope to one mailbox; empty string clears the filter.
Legacy alias for inbox.
Enable or disable delivery without deleting.
Responses
Section titled “ Responses ”Updated (secret redacted).
A webhook registration. secret is present only on the create response (shown once); list/get redact it. The durable resource_scope defines the delivery boundary. inbox is an additional address filter; null removes that filter without widening selected stable inbox IDs. Registrations survive the creating connection’s expiry and must be deleted separately.
object
Agent identity recorded at creation.
Agent-owned inboxes for legacy keys; stable selected inbox IDs, project, or organization for connections. Project and organization scopes include future inboxes.
Stable inbox IDs for an inboxes-scoped registration.
Creating connection ID when applicable.
HMAC signing secret. Create response only.
Invalid request.
The canonical error envelope. error is a stable machine code.
object
Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).
Example
forbiddenHuman-readable detail (never leaks internals).
Example
missing required scopeMachine-readable quota reason. inbox_limit_exceeded means billing account inbox capacity across all organizations and projects sharing that account; enrollment_token_mailbox_budget_exhausted means the enrollment key lifetime creation allowance. Read message for recovery; inbox counts are separate from sending quotas.
Consumed plus reserved units.
Requested additional units.
Next UTC usage-period boundary; pending reservations survive this boundary.
Missing or invalid credential.
The canonical error envelope. error is a stable machine code.
object
Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).
Example
forbiddenHuman-readable detail (never leaks internals).
Example
missing required scopeMachine-readable quota reason. inbox_limit_exceeded means billing account inbox capacity across all organizations and projects sharing that account; enrollment_token_mailbox_budget_exhausted means the enrollment key lifetime creation allowance. Read message for recovery; inbox counts are separate from sending quotas.
Consumed plus reserved units.
Requested additional units.
Next UTC usage-period boundary; pending reservations survive this boundary.
Resource not found.
The canonical error envelope. error is a stable machine code.
object
Stable error code (e.g. unauthorized, forbidden, not_found, invalid, quota_exceeded, rate_limited).
Example
forbiddenHuman-readable detail (never leaks internals).
Example
missing required scopeMachine-readable quota reason. inbox_limit_exceeded means billing account inbox capacity across all organizations and projects sharing that account; enrollment_token_mailbox_budget_exhausted means the enrollment key lifetime creation allowance. Read message for recovery; inbox counts are separate from sending quotas.
Consumed plus reserved units.
Requested additional units.
Next UTC usage-period boundary; pending reservations survive this boundary.