Replace a webhook's routing configuration
PUT/api/v1/webhooks/:webhook_id/rules
set_webhook_rules through the same save path: validation against the grant, a dry run
against the webhook's 50 latest deliveries, and a row-locked write that answers conflict if
the stored rules changed meanwhile. Any failure keeps the previous configuration. A body
without a params key KEEPS the stored params; "params": null clears them (the MCP
set_webhook_rules now gives an omitted params the same keep answer, and clears only on
an explicit "params": {}). Read-only fields of a GET response
are ignored.
Request
Responses
- 200
- 400
- 401
- 403
- 404
- 409
- 413
- 429
- 503
Saved; the stored configuration.
The body does not decode or has no rules, a rule is invalid (invalid_rule,
invalid_expression, forbidden_function, too_many_rules, invalid_params), or a rule
faults on a recent delivery (invalid_argument, naming the rule and the events).
Missing, expired, revoked, or non-operator bearer.
An action names a queue or endpoint outside the grant (forbidden).
No such webhook in the caller's reach.
The webhook's endpoint is revoked (state names it), or the rules changed while the save was being checked (conflict).
The body exceeds 256 KiB.
The caller's per-human write budget is spent; see Retry-After.
The rule evaluator is unavailable, so the save could not be checked (unavailable); retry.