ClickStack: Update Webhook
This endpoint is in beta. API contract is stable, and no breaking changes are expected in the future.
ClickStack: Replaces an existing webhook. Readable optional fields (description, body) are a full replace: omitting them clears them. The write-only fields headers and queryParams are never returned on read, so omitting them preserves the stored values; send an explicit empty object ({}) to clear them. Exception: if the destination (url or service) changes, omitted headers/ queryParams are cleared rather than preserved so stored secrets are never forwarded to a new destination.
ClickStack: Replaces an existing webhook. Readable optional fields (
description, body) are a full replace: omitting them clears them. The write-only fields headers and queryParams are never returned on read, so omitting them preserves the stored values; send an explicit empty object ({}) to clear them. Exception: if the destination (url or service) changes, omitted headers/ queryParams are cleared rather than preserved so stored secrets are never forwarded to a new destination.
Permission
control-plane:service:manage-clickstack-api permission.Authorizations
Use key ID and key secret obtained in ClickHouse Cloud console: https://clickhouse.com/docs/cloud/manage/openapi
Path Parameters
ID of the organization that owns the service.
ID of the ClickStack service.
Webhook ID
Body
Webhook name. Must be unique per service within the team.
"Production Alerts"
Webhook service type.
slack, incidentio, generic "slack"
Webhook destination URL.
"https://hooks.slack.com/services/EXAMPLE/WEBHOOK/URL"
Webhook description, shown in the UI.
"Sends critical alerts to the #incidents channel"
Optional Handlebars request body template. Only for generic/incidentio; rejected for slack. Rejected with a 400 if it does not compile or calls a helper other than eq and the Handlebars built-ins.
"{\"alert\": \"{{title}}\", \"severity\": \"{{level}}\"}"