Skip to main content
GET
Get Task
Returns one task whole: its fields and tags, its latest review round, the approved round to carry out, its links, its children and the newest 30 entries of its timeline. You need read access to the task’s workspace; an internal task also requires internal membership. Auth: Authorization: Bearer tr_...

Query parameters

Response

List rows, load items and children carry the task’s fields with latestRound as { number, outcome }, and none of approvedRound, links, children or timeline. Every task write answers with this shape, without children and timeline.

Rounds

Each artifact part is { position, artifact, version, editedVersion, current, changedSince, base }: artifact ({ id, title, type }, null once purged or when the task’s readers may not open it), the version proposed, the later version an approver edited it to, the file’s current version (null while it is in the trash), changedSince (the current version is not the part’s final one), and base ({ round, versionId }, the same file in the latest earlier round at the same step). Diff a part against its base with GET /v0/diffs?versionId=…&baseVersionId=…. Each link is { id, role, artifact, url, addedAt }. role is context (what the work uses) or result (what came of it). artifact is { id, title, type, version } for an artifact link (version { id, number }, or null for the current version, also when the named version was deleted) and null for a URL link. A link to an artifact in the trash, or to an internal artifact on a shared task, is left out.

The timeline

Each entry is { at, round }, { at, comment } or { at, event }: Pass nextCursor as timelineCursor for the next 30 entries; it is null at the start of the task. Rounds and comments never drop out; events follow the workspace’s activity retention.

Principals

assignee, reviewer, createdBy, completedBy, a round’s proposedBy and decidedBy, a comment’s author and an event’s actor name a person or one agent the same way: Key ids never appear. Someone else’s agent reads by its person and harness: “alek’s agent · Codex”.

The holder

A doing task has one holder: an agent key under a lease, or the person in the browser, whose hold has no lease.

Error codes

Operator mirror

GET /v0/operator/tasks/{id} takes the same query parameters, with an operator session acting as the bound account.