Skip to main content

CheckFlow API v3

The CheckFlow API v3 is a REST API for everything you can do in a CheckFlow workspace: run checklists and complete their tasks, raise standalone tasks, build and version templates, manage Data Sets, schedules and webhooks, and read the people, groups and tags around them. Requests and responses are JSON.

Version 3 replaces the v1 and v2 API with a new, separately hosted surface. It is designed to be predictable for integrations and for AI agents alike — one error format, one pagination scheme, stable keys, UTC timestamps and safe retries — and the same operations are available to AI clients through the CheckFlow MCP server.

note

The v1 and v2 API is still available and existing integrations, including the Zapier app, keep working. It is documented under Legacy API (v1 and v2). New integrations should use v3. See Migrating from v1 and v2 for the differences.

Base URLs​

Each region has its own address. Send requests to the address for the region your workspace is in:

RegionBase URL
United Stateshttps://api.checkflow.io
Europehttps://api-eu.checkflow.io

Every path starts with /v3/, for example https://api.checkflow.io/v3/checklists. The version is part of the path, so there is no version header to send.

A key sent to the other region's address is refused with 421 Misdirected Request and the error code WRONG_REGION. The error's url field is the same request on the correct address. If you are not sure which region you are in, call GET /v3/auth/test — it reports your workspace's region. See Regions.

Authentication​

Send an API key in the X-API-KEY header on every request:

GET https://api.checkflow.io/v3/templates
X-API-KEY: your-api-key-here

Administrators create keys on the API & Integrations tab of the Team page. Every key acts as one member of the workspace, or as the workspace itself: requests see what that member can see and are recorded in their name. See Authentication for how keys work and which permission checks apply.

Interactive Documentation​

The API publishes an OpenAPI 3 document and a Swagger UI. Neither needs an API key to view, and the Swagger UI can run requests against your own workspace once you enter a key.

WhatUS address
Swagger UIhttps://api.checkflow.io/swagger/ui
OpenAPI documenthttps://api.checkflow.io/openapi/v3.json

The same paths work on the EU address. The OpenAPI document is the input to use if you want to generate a client library.

Conventions at a Glance​

TopicRuleDetails
FormatJSON, camelCase property names. Properties with no value are left out of responses rather than sent as null.Conventions
IdentifiersMost resources are identified by a GUID key. Members, groups, schedules and webhooks use the ids shown on their pages.Conventions
DatesEvery timestamp is UTC in ISO 8601 and ends in Z.Conventions
ErrorsEvery error has the same body: code, message, requestId and, where relevant, field.Errors
ListsCursor pagination with pageSize, after and sort.Pagination
RetriesSend Idempotency-Key on a write to make retrying it safe.Idempotency
LimitsA per-workspace hourly budget, reported in X-RateLimit-* headers.Rate Limits
Request idsEvery response carries X-Request-Id. Quote it when you contact support.Conventions

Status Codes​

These are the status codes the API uses. Each endpoint page lists the ones specific to it.

StatusMeaning
200 OKThe request succeeded and the body holds the result.
201 CreatedA resource was created. The body holds it.
202 AcceptedThe work was accepted and is still running. Only committing a draft answers this.
204 No ContentThe request succeeded and there is nothing to return.
400 Bad RequestThe request is malformed or a value is invalid. The error's field names the culprit.
401 UnauthorizedThe API key is missing, unknown, revoked or expired, or the member it acts as can no longer be acted as.
403 ForbiddenThe key is valid but the member it acts as is not allowed to do this.
404 Not FoundThe resource does not exist in this workspace. Something in this workspace that the member the key acts as may not see answers 403 instead.
409 ConflictThe request is valid but the current state will not accept it. Retrying later may succeed.
421 Misdirected RequestThe key belongs to a workspace in the other region.
422 Unprocessable EntityA template document is invalid. The error lists every problem in violations.
429 Too Many RequestsThe workspace has used its rate limit for this window. Wait for Retry-After seconds.
500 Internal Server ErrorSomething failed on our side. Retrying may succeed; quote the X-Request-Id if it persists.

What the API Covers​

Running Work​

AreaWhat you can do
ChecklistsList, search, create, rename, complete, archive and delete checklists; read their activity; share them; tag them.
Checklist TasksComplete tasks or mark them not applicable; set assignees and due dates; comment; snooze; tag; read activity.
Task Fields and FilesRead and write the answers in a task's input controls, upload files and edit table rows.
Standalone TasksRaise tasks outside any checklist, attach them to a checklist, and manage their sub-tasks, comments and files.
Tasks GridRead the tasks grid of the member a key acts as, manage saved views and snooze tasks in bulk.
SchedulesCreate recurring schedules that start checklists, and manage their upcoming runs.

Building Processes​

AreaWhat you can do
TemplatesList and read templates, create them and publish new versions from a template document, copy, archive, set permissions and upgrade running checklists.
Template DocumentsThe JSON format that describes a template, in full.
Template DraftsBuild a large template in steps and commit it in the background.
Schema and Authoring GuideDiscover the content types, condition operators and due date rules a template document can use.
Data SetsManage Data Sets, their fields, records and views; import and export CSV.

The Workspace​

AreaWhat you can do
AuthenticationCheck a key and see who it acts as.
WorkspaceRead everything a request can refer to by name — members, groups, tags, templates — in one call.
Members and GroupsList the people and groups in the workspace.
TagsList the workspace's tags.
WebhooksSubscribe to events, verify their signatures, and inspect and replay deliveries.

Where to Start​

  1. Create a key and make your first calls in Getting Started.
  2. Read Errors and Idempotency before you write anything that retries.
  3. If you are connecting an AI assistant rather than writing code, go to the MCP server instead.
  • Getting Started — a first request, a first checklist and a first completed task, step by step.
  • Authentication — how keys work, who they act as and why a request can be refused.
  • MCP Server — the same operations, as tools an AI assistant can call.
  • Legacy API (v1 and v2) — the previous API, for existing integrations.