Skip to main content

Tasks

Tasks are the unit of accountable work: anything an agent works on becomes a task, and any work you assign a teammate becomes a task. A task has status, priority (1–5), an assignee (a human, a specific agent, or the master agent when unassigned), deadlines, comments, attachments, subtasks, and — when an agent runs it — a full execution record.

Creating Tasks

  • Board: Tasks → New Task.
  • Chat: ask an agent — "Create a task for tomorrow to follow up with the Hayes booking".
  • Channels: inbound messages (email, WhatsApp, …) create tasks in the workspace they route to.
  • Automations and workflows: scheduled jobs and workflow runs create the tasks they work on.
  • Booking links: a confirmed booking becomes a task.

Statuses and the Board

Task statuses: created, proposed, pending, scheduled, in_progress, waiting_on_customer, on_hold, blocked, completed, cancelled, failed — with legal transitions enforced (an illegal move returns 409). GET /api/v1/tasks/constants returns the full state machine.

The board groups statuses into five columns:

ColumnStatuses
To Docreated, pending, proposed
Scheduledscheduled
In Progressin_progress
Needs Attentionwaiting_on_customer, on_hold, blocked, failed
Donecompleted, cancelled

Drag cards to change status. Board and list modes, visible columns, and column order are per-user preferences and sync across devices. A calendar tab and CSV import are built in. Collections (categories with icon and color) group tasks across the board.

Task Detail

A task page shows: properties (status, priority, assignee, deadline, category, requester), the Markdown description, comments (Markdown + attachments; a comment on a waiting task resumes it, and @-mentioning an agent dispatches it), subtasks, generated output files, and the execution timeline — the plan steps, tool calls, and status changes from agent runs.

If an agent is assigned at creation, the run starts immediately. POST /api/v1/tasks/{task_id}/retry re-runs a failed task (reusing or regenerating its plan); approval steps waiting on you are decided right from the task — see HITL Governance.

Sharing Work Outside Manor

Unauthenticated, code-scoped task endpoints let external collaborators update a task without an account: generate a session code for a task and the holder can view it, update status, complete it, or leave a customer evaluation (/api/v1/public/task/..., codes expire after 7 days).

SLA Policies

Define SLA policies (/api/v1/tasks/sla-policies) and attach them to tasks; breaches surface on the task and in reporting.

API Summary

EndpointPurpose
GET /api/v1/tasks, POST /api/v1/tasksList (status/workspace/category filters) and create
GET /api/v1/tasks/boardKanban grouping with counts
GET/PUT /api/v1/tasks/board-preferencesPer-user board preferences
POST /api/v1/tasks/{id}/moveStatus transition (validated)
GET/PUT/DELETE /api/v1/tasks/{id}Read / update / delete
POST /api/v1/tasks/{id}/retry, /hitl-response, /approvalAgent-run controls and approvals
GET/POST /api/v1/tasks/{id}/logs, /attachments, GET /{id}/historyComments, files, audit
GET/POST /api/v1/tasks/categoriesCollections
GET/POST /api/v1/tasks/templates, POST .../{id}/instantiateTask templates with {{variable}} rendering (API-only surface)