跳到主要内容

Tasks API

/api/tasks - Task management endpoints

Overview

The Tasks API provides functionality for creating, querying, updating, and deleting tasks.

Endpoints

MethodPathDescription
GET/api/tasksList all tasks
POST/api/tasksCreate a task
GET/api/tasks/:idGet task details
PATCH/api/tasks/:idUpdate a task
DELETE/api/tasks/:idDelete a task

Detailed Description

GET /api/tasks

List all tasks.

Response:

{
"tasks": [
{
"id": "task-abc123",
"title": "Implement user authentication",
"description": "Add login/logout functionality",
"status": "in_progress",
"agent_id": "CLAUDE_CODE",
"created_at": "2024-01-16T10:00:00Z",
"updated_at": "2024-01-16T14:30:00Z"
}
]
}

POST /api/tasks

Create a new task.

Request Body:

{
"title": "Implement user authentication",
"description": "Add login/logout functionality",
"agent_id": "CLAUDE_CODE"
}
FieldTypeRequiredDescription
titlestringYesTask title
descriptionstringNoTask description
agent_idstringNoAssigned agent

Response:

{
"id": "task-abc123",
"title": "Implement user authentication",
"description": "Add login/logout functionality",
"status": "pending",
"created_at": "2024-01-16T10:00:00Z"
}

GET /api/tasks/:id

Get task details.

Response:

{
"id": "task-abc123",
"title": "Implement user authentication",
"description": "Add login/logout functionality",
"status": "in_progress",
"agent_id": "CLAUDE_CODE",
"sessions": [
{
"id": "session-xyz",
"status": "active",
"message_count": 15
}
],
"created_at": "2024-01-16T10:00:00Z",
"updated_at": "2024-01-16T14:30:00Z"
}

PATCH /api/tasks/:id

Update a task.

Request Body:

{
"title": "Updated title",
"description": "Updated description",
"status": "completed",
"agent_id": "my-agent"
}
FieldTypeDescription
titlestringTask title
descriptionstringTask description
statusstringTask status
agent_idstringAssigned agent

DELETE /api/tasks/:id

Delete a task.

Response:

{
"success": true
}

Task Status

StatusDescription
pendingPending
in_progressIn progress
completedCompleted
failedFailed
cancelledCancelled

Event Notifications

Events are sent when task status changes:

{
"type": "TaskStatusChanged",
"data": {
"task_id": "task-abc123",
"old_status": "pending",
"new_status": "in_progress",
"timestamp": "2024-01-16T10:00:00Z"
}
}