Skip to main content
POST
Error

Autorizaciones

Authorization
string
header
requerido

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Cuerpo

application/json

Webhook create/update body. body, headers, and queryParams only take effect for services that issue a templated HTTP request (generic, incidentio). The slack service posts a fixed payload to its incoming-webhook URL and ignores them, so supplying any of these fields on a slack webhook is rejected. headers and queryParams are write-only — they are accepted here but never returned by any read endpoint, so secrets such as auth tokens do not leak. On update (PUT), omitted readable fields (description, body) are cleared, while omitted headers/queryParams are preserved — send an explicit {} 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; re-supply them for the new destination.

name
string
requerido

Webhook name. Must be unique per service within the team.

Maximum string length: 1024
Ejemplo:

"Production Alerts"

service
enum<string>
requerido

Webhook service type.

Opciones disponibles:
slack,
incidentio,
generic
Ejemplo:

"slack"

url
string<uri>
requerido

Webhook destination URL.

Maximum string length: 2048
Ejemplo:

"https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"

description
string

Webhook description, shown in the UI.

Maximum string length: 2048
Ejemplo:

"Sends critical alerts to the #incidents channel"

body
string

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.

Maximum string length: 16384
Ejemplo:

"{\"alert\": \"{{title}}\", \"severity\": \"{{level}}\"}"

headers
object

Write-only. Custom HTTP headers sent with the webhook request. Never returned on read. Only for generic/incidentio; rejected for slack. Each value is capped at 4096 characters.

Ejemplo:
queryParams
object

Write-only. Query parameters appended to the webhook URL. Never returned on read. Only for generic/incidentio; rejected for slack. Each value is capped at 4096 characters.

Respuesta

Validation result. HTTP 200 is always returned for valid and invalid bodies — a non-200 response means the request itself failed (auth, server error, etc.).

valid
boolean
requerido

True when the body passes all validation rules.

errors
object[]
requerido

Validation errors. Empty when valid is true.

normalized
object | null
requerido

The parsed webhook body, without the write-only headers and queryParams. Populated when valid is true, null when valid is false.