Automations
Webhooks
Build automated workflows and business logic.
Webhooks let your automations communicate with external services. Send data out to any URL, or receive incoming webhooks to trigger automations from third-party tools.
Outbound Webhooks
Use the "Send Webhook" action to POST data to any external URL when an automation fires.
{
"type": "webhook",
"config": {
"url": "https://api.example.com/webhook",
"method": "POST",
"headers": {
"Authorization": "Bearer {{secrets.api_key}}",
"Content-Type": "application/json"
},
"body": {
"event": "new_lead",
"lead_id": "{{record.id}}",
"name": "{{record.name}}",
"email": "{{record.email}}"
}
}
}Supported Methods
| Method | Use Case |
|---|---|
| POST | Send data to create resources (most common) |
| PUT | Update existing resources |
| PATCH | Partial update of resources |
| DELETE | Remove external resources |
Inbound Webhooks
Each automation with a "Webhook Received" trigger gets a unique URL. External services can POST data to this URL to trigger the automation.
Your webhook URL:
https://app.kantos.ai/api/webhooks/automation/{automation_id}
External services POST data to this URL to trigger your automation.
The payload is available as {{webhook.body}} in your actions.Retry Policy
Outbound webhooks automatically retry on failure:
| Attempt | Delay | Description |
|---|---|---|
| 1st retry | 1 minute | Immediate retry after initial failure |
| 2nd retry | 5 minutes | Short delay before second attempt |
| 3rd retry | 30 minutes | Final attempt with longer delay |
A webhook is considered failed if the target returns a 4xx or 5xx status code, or if the request times out after 30 seconds.
Webhook Payload
The default outbound payload includes the full record data plus automation metadata:
{
"event": "automation.executed",
"automation_id": "auto_abc123",
"automation_name": "Notify on New Lead",
"timestamp": "2025-01-15T10:30:00Z",
"record": {
"id": "rec_xyz789",
"object_id": "obj_def_leads",
"data": {
"name": "Jane Smith",
"email": "jane@example.com",
"company": "Tech Corp"
}
}
}Common Integrations
- Slack — Post notifications to channels using Slack webhook URLs
- Zapier — Trigger Zapier workflows from Kantos events
- Make (Integromat) — Build complex multi-app workflows
- Custom APIs — Sync data with your internal systems
Slack Example
{
"type": "webhook",
"config": {
"url": "{{secrets.slack_webhook_url}}",
"method": "POST",
"body": {
"text": "New high-value lead: {{record.name}} ({{record.company}}) - ${{record.estimated_value}}"
}
}
}Debugging
Check the automation execution logs for webhook details:
- Request URL — Where the webhook was sent
- Request body — The payload that was sent
- Response status — HTTP status code from the target
- Response body — What the target returned
- Retry attempts — How many times the request was retried
Test with RequestBin
Use a service like RequestBin or webhook.site to inspect webhook payloads during development before connecting to your real endpoints.
Next Steps
- Actions — All available action types
- Triggers — Events that start automations
- API Webhooks — Webhook events from the Kantos API