Developers

Task management API

A task management API is an HTTP interface that lets software create, read, update and delete tasks without a person using the app. 0nTask’s is free to use — one key, one endpoint, and it works from any language, any tool that can fire a URL, and any AI agent.

Quickstart API reference

Create a task in one request

curl -X POST https://app.0ntask.com/api/v1/tasks \
  -H "Authorization: Bearer 0nt_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Call the roofer back","priority":"high"}'

That is the whole integration. No SDK, no OAuth flow, no webhook handshake.

Endpoints

MethodPathWhat it does
GET/tasksList every task on the account.
POST/tasksCreate a task. Pass an id to update instead.
PATCH/tasksUpdate an existing task by id.
DELETE/tasksDelete a task by id.
GET/quickCreate a task from a plain URL — for tools that can only fire a GET.
GET/webhooksList outbound webhooks.
POST/webhooksRegister a URL to receive task events.

Base URL: https://app.0ntask.com/api/v1

How it compares

Named honestly, including where the others are stronger.

APIPriceAgent readyNotes
0nTaskFreeMCP built inForgiving field names; a GET endpoint for tools that cannot POST.
Todoist REST APIFree tierNo official MCPMature, well documented, large ecosystem.
Asana APIFree tierNo official MCPVery deep model — projects, portfolios, custom fields.
ClickUp APIFree tierNo official MCPBroad surface; rate limits vary by plan.
Trello APIFree tierNo official MCPBoard-shaped rather than task-shaped.

Keep reading

Task management API — FAQ

What is a task management API?

A task management API is an HTTP interface that lets software create, read, update and delete tasks in a task manager without a person using the app — so a form submission, a CRM workflow, a script or an AI agent can put work on a list automatically.

Is the 0nTask API free?

Yes — the API and outbound webhooks are available on the free plan, with a cap of 25 tasks created per day so you can test an integration properly. Reading tasks is never limited. Paid plans remove the cap for running an integration in production.

How do I authenticate with the 0nTask API?

Send your key as "Authorization: Bearer 0nt_live_…". It is also accepted as an X-API-Key header, as ?key= in the query string, or in the JSON body — because guessing the wrong one is the most common reason a first API call fails.

How do I create a task via API?

POST to https://app.0ntask.com/api/v1/tasks with a JSON body containing at least a title. Everything else — priority, notes, due date, project, category — is optional.

Can an AI agent use the 0nTask API?

Yes. 0nTask is a registered service in 0nMCP, so any agent that speaks the Model Context Protocol gets task tools with no extra client. Agents can also call the REST API directly.

Does the API support webhooks?

Yes. Register any URL and 0nTask POSTs task.created, task.updated, task.completed and task.deleted events to it. Set a shared secret and each delivery carries an HMAC-SHA256 signature so you can verify it came from 0nTask.

Is there a limit on the free plan?

Free accounts can create 25 tasks a day through the API. That is deliberate — the API is open on free so you can test an integration properly, not so you can run one. Reading tasks is never limited, and anything you have already created stays. Paid plans remove the cap.

What is the difference between external_id and contact_id?

external_id must be unique to a single task — it is how 0nTask recognises a task it already created and updates it instead of making a duplicate. contact_id links the task to a person, and many tasks can share one contact. Putting a contact id into external_id would make every new task overwrite the previous one for that contact.

Can I use it from a tool that can only send a GET request?

Yes — that is exactly what /api/v1/quick is for. Hit https://app.0ntask.com/api/v1/quick?key=…&title=… from an iOS Shortcut, IFTTT, a legacy CRM webhook field or a browser and the task is created.

Get a key and start

The API is free. Create an account, generate a key in settings, and send your first request.

Start free