Webhooks
Update Webhook
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.
put/api/v2/webhooks/{id}
Path parameters
idstring required
Webhook ID
Request body
Example request
{
"name": "Production Alerts",
"service": "slack",
"url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX",
"description": "Sends critical alerts to the #incidents channel",
"body": "{\"alert\": \"{{title}}\", \"severity\": \"{{level}}\"}",
"headers": {
"Authorization": "Bearer secret-token"
}
}Response
Successfully updated webhook
Example response
{
"data": {
"id": "507f1f77bcf86cd799439011",
"name": "Production Alerts",
"service": "slack",
"url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX",
"description": "Sends critical alerts to the #incidents channel",
"updatedAt": "2025-06-15T10:30:00.000Z",
"createdAt": "2025-01-01T00:00:00.000Z"
}
}