Webhooks
There's no programmatic webhook subscription endpoint in v1. Webhooks are configured through Automation rules, which gives you fine-grained trigger filtering and the same audit trail as the rest of your automations.
How to set one up
- In the Konduit UI, create an Automation rule
- Pick a trigger — see the list below
- Add a Webhook action with your destination URL
- Save — the webhook fires on every matching event
That's it. No subscription, no key management, no separate dashboard.
Available triggers
| Trigger | Fires when |
|---|---|
task_created |
New task created (any source — UI, API, form) |
task_updated |
Task field changed |
task_status_changed |
Status transition specifically |
task_deleted |
Task soft-deleted (payload includes pre-delete snapshot) |
task_assigned |
New assignee added |
task_due_soon |
Date-arrival trigger (configurable lead time) |
comment_added |
New comment posted |
time_logged |
Manual time entry created or running timer stopped |
row_inserted |
New datatable row |
row_updated |
Datatable row changed |
row_deleted |
Datatable row deleted |
form_submitted |
Form submission received |
Each trigger supports filters — e.g., "only when severity = high" or "only on the Bugs list". Filters are configured in the same UI as the trigger.
Payload format
Webhook payloads are JSON. Shape varies by trigger; the common envelope:
{
"trigger": "task_created",
"workspace_id": "...",
"fired_at": 1735689600,
"data": {
"task": { "id": "...", "title": "...", "..." }
}
}
For *_updated triggers, data includes both before and after snapshots:
{
"trigger": "task_status_changed",
"data": {
"task_id": "...",
"before": { "status_id": "open" },
"after": { "status_id": "in_progress" }
}
}
Signing
Webhook payloads are signed with an HMAC header so you can verify the request came from Konduit. The shared secret is shown when you create the Webhook action.
X-Konduit-Signature: sha256=<hex>
Compute HMAC-SHA256(secret, raw_body) on your side and constant-time-compare against the header. Reject mismatches.
Discord webhooks
Discord webhook URLs (https://discord.com/api/webhooks/...) are auto-detected and the payload is reformatted as a Discord embed. Useful for piping task activity into a Discord channel without a separate bot.
Programmatic subscription (planned)
A programmatic webhook subscription API is planned for v1.1. If you need this before then for a specific integration, reach out at team@konduit.work.
Next
- Versioning → — what's NOT in v1
- Forms → — polling alternative for form submissions