Skip to the documentation
API

List tasks

Every task in the workspace, most recently changed first.

GET/tasks

Runs the real call on your workspace.

GET /tasks

Every task in the workspace, most recently changed first.

Example

Needs tasks:read, threads:read and emails:read. status narrows the list to active or paused. limit goes up to 100 and defaults to 25, and cursor takes the previous page’s nextCursor.

curl
curl "$OE/tasks?status=active" -H "$AUTH"
Response
{  "object": "list",  "data": [{      "object": "task",      "id": "tsk_4b9e2c7a1f3d86e05a9c2b7d",      "name": "Morning summary",      "instruction": "Go through the mail that arrived since yesterday. Tell me which conversations need a reply from me, most urgent first, and draft a short reply for each.",      "status": "active",      "pausedReason": null,      "trigger": {        "kind": "schedule",        "schedule": {          "cadence": "daily",          "everyHours": 1,          "hour": 8,          "minute": 0,          "weekdays": [1, 2, 3, 4, 5],          "monthDay": 1,          "timezone": "Europe/London"        },        "mail": null      },      "autonomy": "organize",      "toolkits": ["notes", "drafts", "knowledge"],      "model": "standard",      "notify": "attention",      "maxRunsPerDay": 50,      "maxSteps": 20,      "nextRunAt": "2026-10-14T07:00:00.000Z",      "heldUntil": null,      "lastRunAt": "2026-10-13T07:00:04.112Z",      "lastRunStatus": "done",      "runCount": 12,      "pendingApprovals": 0,      "createdAt": "2026-10-01T09:12:44.000Z",      "updatedAt": "2026-10-13T07:01:10.530Z"    }],  "hasMore": false,  "nextCursor": null}

pendingApprovals counts the requests of the task that wait for an answer.

nextRunAt is set for a schedule task that is active, and null otherwise.

Reference