Task management API

Task API reference — endpoints, fields and responses

The 0nTask API exposes task management through a single endpoint, https://app.0ntask.com/api/v1/tasks, which accepts GET to list, POST to create, PATCH to update and DELETE to remove.

One URL and four verbs, rather than eight separate endpoints to learn. Field names are forgiving on purpose — several common aliases are accepted for each one.

Endpoints

MethodPathReturns
GET/tasks{ ok, count, tasks[] }
POST/tasks{ ok, task, synced_to_app }
PATCH/tasks{ ok, task }
DELETE/tasks{ ok, deleted }
GET/quickJSON, or an HTML confirmation in a browser
GET/webhooks{ webhooks[], available_events[] }
POST/webhooks{ ok, id, events, signed }

Fields

Only title is required, and only on create. Aliases are accepted because guessing the field name wrong is the most common reason a first call fails.

titlestringrequired

Also accepted as text, task, name, summary or subject.

notesstring

Also accepted as description, body or detail.

prioritystring

high · medium · low. urgent, critical and p1 all map to high.

statusstring

todo · in_progress · completed. done, complete, true, yes and 1 all map to completed.

dueDatestring

Also accepted as due_date, due or date.

categorystring

Also accepted as tag or label.

projectstring

Project id. Also accepted as projectId, project_id or list.

estimatedMinutesnumber

Also accepted as minutes.

external_idstring

UNIQUE per task in your system. Send the same value again and that task is updated instead of duplicated. Also accepted as externalId, taskId or recordId.

contact_idstring

The contact this task belongs to. Many tasks can share one contact — never use this for deduplication. Also accepted as contactId or crm_contact_id.

sourcestring

Which system created the task. Travels in outbound webhooks so a receiver can ignore its own echo.

skip_webhooksboolean

Set true to suppress outbound webhooks for this write — use it when the other system is the one writing, to prevent a sync loop.

List tasks

curl https://app.0ntask.com/api/v1/tasks \
  -H "Authorization: Bearer 0nt_live_YOUR_KEY"

FAQ

What are the API endpoints?

GET, POST, PATCH and DELETE on /api/v1/tasks handle all task operations. /api/v1/quick creates a task from a GET request, and /api/v1/webhooks manages outbound events.

Which fields are required?

Only title, and only when creating. Everything else is optional and has a sensible default.

What does the API return?

JSON. Creates and updates return { ok, task, synced_to_app }; lists return { ok, count, tasks }; deletes return { ok, deleted }.

What happens if I send an unknown field?

It is ignored rather than rejected, so adding metadata to your request will not break the call.

QuickstartWebhooksAI agents & MCP