Web Hooks

CheckFlow uses webhooks to let you know when events happen, such as when a task is completed. When the event occurs, CheckFlow makes an HTTP POST request to the target URL you entered when you configured the webhook subscription. CheckFlow's request will include details of the event such as the task completed in JSON format.

We currently have three webhooks you can subscribe to:

  • new_checklist - Message will be sent whenever a new checklist is created for a specific template.
  • task_completed - Message will be sent whenever a task is completed. You can scope this to a specific task, to any task in a specific template, or to any task completion across your whole team.
  • file_uploaded - Message will be sent whenever a file is uploaded using a specific file upload control.

How To Subscribe To Our Webhooks

You can use our API to manage your webhook subscriptions.

To access our API you will need to generate an API Key.

You will then be able to use our API user interface to perform actions such as creating a webhook subscription.

Our API user interface is located here: https://app.checkflow.io/swagger

The webhook section of our API contains three actions, as shown below:

API Webhook Section

The most complicated part is creating the subscription correctly. Here are the parameters:

  • source - This should be an identifier for the target. It is only used for audit purposes.
  • eventType - This should be one of the webhook event types mentioned previously: new_checklist, task_completed or file_uploaded.
  • targetUrl - The URL that the webhook will post the JSON to when the event occurs.
  • templateKey - Required for new_checklist. Also accepted for task_completed to scope the subscription to any task completion in checklists created from that template.
  • taskKey - Optional for task_completed to scope the subscription to a single specific task.
  • taskContentKey - Only required for webhook events of type 'file_uploaded'. This is the task content key for the file upload control you're interested in.

task_completed scope

The task_completed event supports three levels of scope:

ScopeParameter to supplyFires when…
Task-specifictaskKeyThat specific task is completed
Template-scopedtemplateKeyAny task is completed in any checklist from that template
Team-wide(neither key)Any task is completed anywhere in your team
PLEASE NOTE

To find the templateKey you can use: /api/template/templates

To find the taskKey you can use: /api/template/tasks

To find the taskContentKey you can use: /api/template/task-content