Work Items & Board API
Work items represent individual tasks on the Kanban board. They track the lifecycle from backlog through implementation to completion.
List Work Items
http
GET /api/v1/projects/{project_id}/workitems
Authorization: Bearer <token>Response 200 OK
json
[
{
"id": "uuid",
"project_id": "uuid",
"requirement_id": "uuid",
"title": "Implement user registration API",
"description": "Create REST endpoints for user registration",
"status": "in_progress",
"priority": "high",
"assignee_type": "agent",
"assignee_id": "claude-code",
"created_at": "2026-01-01T00:00:00Z"
}
]Create Work Item
Requires developer role or higher.
http
POST /api/v1/projects/{project_id}/workitems
Authorization: Bearer <token>
Content-Type: application/json
{
"title": "Fix login redirect bug",
"description": "Users are not redirected after login",
"priority": "high"
}Get Work Item
http
GET /api/v1/workitems/{work_item_id}
Authorization: Bearer <token>Update Work Item
Only allowed when status is backlog, todo, or cancelled.
http
PUT /api/v1/workitems/{work_item_id}
Authorization: Bearer <token>
Content-Type: application/json
{
"title": "Updated title",
"description": "Updated description",
"priority": "medium"
}Change Status
Manual status transitions follow allowed paths.
http
PATCH /api/v1/workitems/{work_item_id}/status
Authorization: Bearer <token>
Content-Type: application/json
{ "status": "todo" }Allowed Transitions: backlog → todo, todo → backlog, todo → cancelled, in_progress → cancelled, done → backlog
Assign Work Item
http
POST /api/v1/workitems/{work_item_id}/assign
Authorization: Bearer <token>
Content-Type: application/json
{
"assignee_type": "agent",
"assignee_id": "claude-code"
}Execute Work Item
Triggers the full AI execution pipeline: creates a requirement, generates an execution plan, starts the execution graph, and assigns an agent.
http
POST /api/v1/workitems/{work_item_id}/execute
Authorization: Bearer <token>
Content-Type: application/json
{
"agent_override": "gemini-cli"
}Work Item Detail (Enriched)
Returns the work item along with its execution nodes, gate reviews, and pull requests.
http
GET /api/v1/workitems/{work_item_id}/detail
Authorization: Bearer <token>Response 200 OK
json
{
"work_item": { "id": "uuid", "title": "...", "status": "in_review" },
"execution_nodes": [
{ "id": "uuid", "node_type": "coding", "status": "completed", "agent_type": "claude-code" }
],
"gate_reviews": [
{ "id": "uuid", "result": "pending", "created_at": "..." }
],
"pull_requests": [
{ "url": "https://github.com/org/repo/pull/42", "status": "open" }
]
}Comments
List Comments
http
GET /api/v1/workitems/{work_item_id}/comments
Authorization: Bearer <token>Add Comment
http
POST /api/v1/workitems/{work_item_id}/comments
Authorization: Bearer <token>
Content-Type: application/json
{
"content": "Looking good, ready for review",
"comment_type": "human"
}Board View
Returns all work items organized by Kanban columns.
http
GET /api/v1/projects/{project_id}/board
Authorization: Bearer <token>Response 200 OK
json
{
"backlog": [...],
"todo": [...],
"in_progress": [...],
"in_review": [...],
"done": [...]
}Archived Items
http
GET /api/v1/projects/{project_id}/workitems/archived
Authorization: Bearer <token>