canonical: https://jentic.com/apis/checkvist.com/checkvist

# Checkvist API

Checkvist is a keyboard-first outliner and task manager used by developers, writers, and solo makers who prefer nested lists over rigid kanban boards. This listing covers 18 operations across authentication, checklists, tasks with arbitrarily deep nesting, comments, and a bulk import call. It suits teams scripting checklist generation, syncing tasks to other systems, or building custom front-ends on top of Checkvist. Checkvist publishes its own OpenAPI file at checkvist.com/openapi.yaml and that file is canonical; the spec behind this page is a curated Jentic variant of it, pinning the .json response format into each path where the official file leaves a .{format} placeholder for the caller to substitute, and describing 18 of its 21 operations.

## For AI agents

Create and update Checkvist checklists, tasks, and comments so an agent can manage hierarchical to-do lists, import tasks in bulk, and pull task threads.

## Scope

Does not handle calendar events or project-level reporting - use for managing hierarchical checklists, tasks, and task comments only.

## Capabilities

- Create checklists and update their settings or visibility
- Add, update, and delete tasks at any depth of a checklist
- Bulk-import tasks into a checklist from text or another source
- Read, post, and edit comments threaded under tasks
- Refresh authentication tokens to keep long-running scripts alive
- Inspect the current authenticated user's profile

## Use cases

### Bulk Task Import from Notes

Convert structured meeting notes or a roadmap document into a Checkvist outline in one call. The script POSTs the parsed items to `/checklists/{id}/import.json` in import_content as indented plain text, preserving hierarchy. Useful for teams that brainstorm in a doc and want the action items mirrored in their tracker without retyping.

Example prompt: POST an indented task list in import_content to `/checklists/{id}/import.json` for checklist_id 12345 and confirm the created list item ids.

### Cross-Tool Task Sync

Mirror Checkvist tasks into a calendar, time tracker, or daily standup tool. A scheduled job pulls `/checklists/{id}/tasks.json`, transforms tasks with due dates into events or entries, and posts them downstream. Useful for solo operators living inside Checkvist who want their tasks appearing in shared team systems.

Example prompt: Pull `/checklists/{id}/tasks.json` for checklist_id 12345 and return the count of tasks due in the next 7 days.

### Threaded Task Discussions

Treat Checkvist tasks like lightweight tickets by reading and posting comments programmatically. `/checklists/{id}/tasks/{task_id}/comments.json` supports listing existing comments and posting new ones, which a chat or email integration can use to surface task discussions in another tool.

Example prompt: Post a comment to `/checklists/{id}/tasks/{task_id}/comments.json` for task_id 7777 with content 'Blocked on design review'.

### AI Agent for Outline Management

An autonomous agent receives ad hoc instructions ('add three subtasks under task 42 about deployment, monitoring, and rollback') and translates them into Checkvist API calls through Jentic. The X-Client-Token never enters the agent's prompt - Jentic injects it from your Jentic One instance.

Example prompt: Through Jentic, search 'create a task in checkvist', load the schema for `/checklists/{id}/tasks.json`, and execute with checklist_id 12345 and content 'Write release notes'.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/auth/login.json` | Obtain an authentication token |
| GET | `/checklists.json` | List user checklists |
| POST | `/checklists.json` | Create a checklist |
| GET | `/checklists/{id}/tasks.json` | List tasks in a checklist |
| POST | `/checklists/{id}/tasks.json` | Create a task |
| POST | `/checklists/{id}/import.json` | Bulk import tasks into a checklist |
| POST | `/checklists/{id}/tasks/{task_id}/comments.json` | Post a comment on a task |

## Key resources

- **Authentication** — Login, refresh tokens, and read current user profile
- **Checklists** — Create, list, fetch, update, and delete checklists
- **Tasks** — Create, list, fetch, update, and delete hierarchical tasks within a checklist
- **Comments** — Post, edit, and delete comments threaded under a task
- **Import** — Bulk-import tasks into a checklist from a text body

## Why Jentic

- **Setup:** Wiring Checkvist by hand means logging in at `/auth/login.json`, refreshing the X-Client-Token, and finding the right call among 18 endpoints for lists, tasks, and comments. Through Jentic you install once, import the Checkvist API from the API Directory, store the credentials once, and your agent calls it.
- **Permission scoping:** Checkvist puts the checklist id in the URL path (`/checklists/{id}/tasks.json`), so a rule can pin your agent to one checklist: it can add tasks and comments there and nothing else. You choose the operations it may call, so importing into a list is not included unless you add it.
- **Credential handling:** Your Checkvist credentials and X-Client-Token are stored once, encrypted, by your own Jentic One instance and injected into the header at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a task in checkvist' or 'import tasks', and Jentic returns the matching Checkvist operation with its input schema so the agent picks the right endpoint among 18 without browsing the reference docs.

## Related APIs

- **Chatwork API** — Team chat with its own task feature; useful for posting Checkvist updates into a chat room
- **Checkmob API** — Field service work order management - different domain (mobile field jobs vs personal/team outlines)
- **Checkly Public API** — Synthetic monitoring you can use to verify Checkvist endpoints stay healthy

## FAQ

### Does Checkvist publish an official OpenAPI specification?

Yes. Checkvist's Open API page links a searchable reference generated from its own openapi.yaml file, and that file is canonical. The spec behind this page is a curated Jentic variant of it: each path pins the .json response format where the official file leaves a .{format} placeholder for the caller to substitute, so an agent can call the path as written, and it describes 18 of the 21 operations in the official file.

### What authentication does the Checkvist API use?

Checkvist uses an API token passed in the X-Client-Token header. You obtain a token by POSTing your username and Remote API key to `/auth/login.json`, and you refresh it by POSTing the previous value as old_token to `/auth/refresh_token.json`; a token is valid for one day and can be refreshed within 90 days. Checkvist's own documentation also accepts HTTP Basic authentication (username with password, or username with the Remote API key from your profile page) and the same token as a token query parameter. Through Jentic, both credentials and the resulting token live in your Jentic One instance and are injected at execution time.

### Is there a Checkvist MCP server?

You don't need an MCP server to give your agent Checkvist. Jentic connects it directly from the API Directory: import Checkvist, store your token once, and your agent can create checklists, nest tasks, and post comments, with no extra tool definitions loaded into its context.

### Can I create nested tasks with the Checkvist API?

Yes. POST `/checklists/{id}/tasks.json` accepts task[parent_id], the id of an existing task, so you can place a new task under any task to build a hierarchy. The call returns the created task including its id, which you can pass as task[parent_id] on the next call to nest further.

### How do I bulk import tasks into Checkvist via the API?

Use POST `/checklists/{id}/import.json` and put the items in import_content as indented plain text, one item per line with indentation for nesting, the same format Checkvist's own import function takes. The call creates the whole branch at once and returns the created list items, so their ids come back in one response.

### What are the rate limits for the Checkvist API?

Checkvist does not document a rate limit, and neither its own OpenAPI file nor the spec behind this page declares one, so treat throttling as undefined rather than absent. The timing constraint that is documented is the token: it lasts one day and can be refreshed within 90 days, so refresh it proactively in long-running scripts.

### How do I create a Checkvist task through Jentic?

Install Jentic One on its own machine, then run `jentic register` on the machine your agent runs on and import the Checkvist API from the API Directory, storing your credentials once. Your agent then searches by intent, loads the schema for `/checklists/{id}/tasks.json`, and executes it with the checklist id and task content while Jentic handles login, token refresh, and X-Client-Token injection.

### Can I limit what my agent is allowed to do with the Checkvist API?

Yes. Because Jentic One is self-hosted, your own rules decide which Checkvist operations and credentials the agent may use. Checkvist puts the checklist id in the URL path, such as `/checklists/{id}/tasks.json`, so you can pin the agent to a single checklist where it may add tasks and post comments and nothing else. You also choose the exact operations it can call, so bulk import via `/checklists/{id}/import.json` stays off limits unless you explicitly allow it.
