Web Hooks
A webhook tells your own systems when something happens in CheckFlow. You subscribe a URL to an event; when the event occurs, CheckFlow sends an HTTP POST to that URL with a JSON body describing what happened.
Webhooks are the right choice when you want CheckFlow to push work into a system you control, and you do not want to poll the API asking whether anything has changed.
Events You Can Subscribe To
| Event | Fires when |
|---|---|
new_checklist | A checklist is created from a specific template. |
task_completed | A task is completed. Can be scoped to one task, to any task in one template, or to the whole team. |
file_uploaded | A file is uploaded through a specific File Upload control. |
data_set.record.created | A record is added to any Data Set in the team. |
data_set.record.updated | A Data Set record's values change. |
data_set.record.deleted | A Data Set record is deleted. |
checklist_completed | A checklist becomes complete. Not available through the legacy API. |
comment_created | A comment is written on a task. Not available through the legacy API. |
task_assigned | A task is given to somebody who did not have it. Not available through the legacy API. |
The three Data Set events are always team-wide. The others can be narrowed to a template, a task or a File Upload control when you subscribe. Webhook Events describes each event and its payload in full.
Setting One Up
Administrators add, pause and delete webhooks on the Webhooks tab of Team Management, which also shows each webhook's deliveries. See Manage Webhooks.
To manage them in code instead, the v3 Webhooks API documents creating and managing subscriptions, verifying the signature on each delivery, retries, and inspecting and replaying deliveries. You will need an API key — see Authentication. Subscriptions created through the legacy API keep working and receive the same payloads, but are not signed. Every webhook is listed on the Webhooks tab, however it was made.
Webhooks or Zapier?
| Webhooks | Zapier | |
|---|---|---|
| Needs code | Yes — you host the endpoint that receives the POST | No |
| Goes to | Any URL you control | Several thousand pre-built apps |
| Best for | Your own systems, and anything Zapier does not reach | Connecting to a service Zapier already supports |
Zapier uses webhooks underneath. If Zapier already connects to the service you have in mind, use it and skip the hosting.
Related Pages
- Manage Webhooks — adding a webhook and checking its deliveries in the app.
- Webhooks API — subscribing, signature verification, retries and the delivery log.
- Zapier — the same events without writing or hosting anything.
- Custom Notifications — for notifying people rather than systems.
- Webhook Events — when each event fires and the exact payload it sends.