Navigation

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

  1. In the Konduit UI, create an Automation rule
  2. Pick a trigger — see the list below
  3. Add a Webhook action with your destination URL
  4. 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