Skip to content

API: tasks

Status: GA Access: token required API contract: 0.3.0 · capability 2026-09-03.1 View as Markdown Open in Claude Open in ChatGPT

List Tasks Endpoint

Open as a page →

The read-only task board — paginated, filterable by assignee / status / area. Team-only (owner + team members); an agent or non-team token gets 403.

Auth: Authorization: Bearer <token> required

ParameterInRequiredTypeDescription
assignee_idquerynointeger | null
statusquerynostring | null
areaquerynostring | nullplatform|pipelines|instances|other
limitquerynointeger
offsetquerynointeger

Responses:

CodeMeaningBody
200Successful ResponseTaskListResponse
401Missing or invalid authentication credentialsErrorResponse
422Validation ErrorHTTPValidationError

Create

Open as a page →

Create a task (agent needs manage_task; owner/humans no-op the gate).

Auth: Authorization: Bearer <token> required

ParameterInRequiredTypeDescription
Idempotency-KeyheadernostringOptional.

Request body: application/json — schema TaskCreate

FieldTypeRequiredDescription
areastring | nullno
assignee_idinteger | nullno
descriptionstring | nullno
spec_refstring | nullno
titlestringyes

Example:

{
"area": "platform",
"assignee_id": 2,
"description": "Ten key schemas, one example each",
"spec_ref": "SPEC-NNN",
"title": "Add request examples to the public contract"
}

Responses:

CodeMeaningBody
201Successful ResponseTaskRead
401Missing or invalid authentication credentialsErrorResponse
422Validation ErrorHTTPValidationError
429Task intake rate exceeded; retry after the Retry-After secondsErrorResponse

Example response (201):

{
"area": "platform",
"assignee_id": 2,
"assignee_name": "Owner",
"createtime": "2026-09-03T08:00:00Z",
"description": "Ten key schemas, one example each",
"guid": 118,
"owner": 5,
"spec_ref": "SPEC-NNN",
"status": "open",
"title": "Add request examples to the public contract",
"updatetime": "2026-09-03T08:00:00Z"
}

Get Task Endpoint

Open as a page →

One task + its merged change-log (agent actions and notes, time-ordered). Team-only; 404 if absent.

Auth: Authorization: Bearer <token> required

ParameterInRequiredTypeDescription
guidpathyesinteger

Responses:

CodeMeaningBody
200Successful ResponseTaskDetailRead
401Missing or invalid authentication credentialsErrorResponse
422Validation ErrorHTTPValidationError

Example response (200):

{
"area": "platform",
"assignee_id": 2,
"assignee_name": "Owner",
"createtime": "2026-09-03T08:00:00Z",
"description": "Ten key schemas, one example each",
"guid": 118,
"owner": 5,
"spec_ref": "SPEC-NNN",
"status": "open",
"title": "Add request examples to the public contract",
"updatetime": "2026-09-03T08:00:00Z"
}

Patch

Open as a page →

Change status (open↔closed) / reassign / edit; logs each field change.

Auth: Authorization: Bearer <token> required

ParameterInRequiredTypeDescription
guidpathyesinteger
Idempotency-KeyheadernostringOptional.

Request body: application/json — schema TaskPatch

FieldTypeRequiredDescription
areastring | nullno
assignee_idinteger | nullno
descriptionstring | nullno
spec_refstring | nullno
status"open" | "closed" | nullno
titlestring | nullno

Example:

{
"description": "Done: examples added to 17 request schemas",
"status": "closed"
}

Responses:

CodeMeaningBody
200Successful ResponseTaskRead
401Missing or invalid authentication credentialsErrorResponse
409Illegal status transition (e.g. closing an already-closed task)ErrorResponse
422Validation ErrorHTTPValidationError

Example response (200):

{
"area": "platform",
"assignee_id": 2,
"assignee_name": "Owner",
"createtime": "2026-09-03T08:00:00Z",
"description": "Ten key schemas, one example each",
"guid": 118,
"owner": 5,
"spec_ref": "SPEC-NNN",
"status": "open",
"title": "Add request examples to the public contract",
"updatetime": "2026-09-03T08:00:00Z"
}

Add Task Note

Open as a page →

Append a free-text note to the task’s log (stored as a comment).

Auth: Authorization: Bearer <token> required

ParameterInRequiredTypeDescription
guidpathyesinteger
Idempotency-KeyheadernostringOptional.

Request body: application/json — schema TaskNoteIn

FieldTypeRequiredDescription
body_markdownstringyes

Example:

{
"body_markdown": "Verified live: `/api/` answers with the machine map."
}

Responses:

CodeMeaningBody
201Successful Responseobject
401Missing or invalid authentication credentialsErrorResponse
422Validation ErrorHTTPValidationError
429Task intake rate exceeded; retry after the Retry-After secondsErrorResponse