Webhooks
| Tool | REST endpoint | Annotations |
|---|---|---|
list_webhooks | GET /v1/webhooks | read-only, idempotent |
get_webhook | GET /v1/webhooks/{id} | read-only, idempotent |
create_webhook | POST /v1/webhooks | write |
update_webhook | PATCH /v1/webhooks/{id} | write |
delete_webhook | DELETE /v1/webhooks/{id} | destructive |
list_webhook_events | GET /v1/webhooks/events | read-only, idempotent |
list_webhook_events
No arguments. Returns the full catalog of allowed webhook events, grouped by category: conversation, message, client, whatsappFlow.
Call this tool first if you want to know which values are valid for the events[] field of create_webhook or update_webhook.
create_webhook
| Field | Type | Required | Description |
|---|---|---|---|
name | string (1-100) | yes | Descriptive name. |
url | string HTTPS URL (≤ 500) | yes | Webhook destination. |
events | string[] (1-N) | yes | Events to subscribe to. See list_webhook_events. |
active | boolean | no | Default true. |
secret | string (≤ 255) | no | Used to sign the payload. |
headers | Record<string, string> (max 10) | no | Extra headers (key ≤ 100, value ≤ 500). |
workspace | string | if multi-ws |
Example
{
"name": "create_webhook",
"arguments": {
"name": "supabase-events",
"url": "https://example.supabase.co/functions/v1/platica-webhook",
"events": ["conversation.created", "message.created", "client.created"],
"secret": "muy-secreto-y-largo",
"headers": { "X-Custom-Tag": "produccion" }
}
} update_webhook
Same fields as create_webhook (all optional), plus webhookId.
get_webhook / delete_webhook
Only require webhookId (plus optional workspace for multi-ws on delete_webhook).