Update a task
const url = 'https://dashboard.quantcdn.io/api/v3/organizations/example/ai/tasks/550e8400-e29b-41d4-a716-446655440000';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"title":"Updated task title","description":"Updated description with more details","taskListId":"world-2","status":"pending","assignedAgentId":"agent-specialist","dependsOn":["550e8400-e29b-41d4-a716-446655440000"],"metadata":{"priority":"urgent"},"progress":0.75,"progressMessage":"Processing document 3 of 4...","result":{"summary":"Document processed successfully","wordCount":1500},"error":"Failed to connect to external API","retryCount":1,"maxRetries":5,"blockedReason":"Waiting for external approval","blockedByTaskIds":["2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://dashboard.quantcdn.io/api/v3/organizations/example/ai/tasks/550e8400-e29b-41d4-a716-446655440000 \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "title": "Updated task title", "description": "Updated description with more details", "taskListId": "world-2", "status": "pending", "assignedAgentId": "agent-specialist", "dependsOn": [ "550e8400-e29b-41d4-a716-446655440000" ], "metadata": { "priority": "urgent" }, "progress": 0.75, "progressMessage": "Processing document 3 of 4...", "result": { "summary": "Document processed successfully", "wordCount": 1500 }, "error": "Failed to connect to external API", "retryCount": 1, "maxRetries": 5, "blockedReason": "Waiting for external approval", "blockedByTaskIds": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ] }'Updates an existing task. All fields are optional - only provided fields will be updated. * * Status Transitions: * - Changing from pending to in_progress automatically sets startedAt timestamp * - Changing to completed, failed, or cancelled automatically sets completedAt timestamp * - Changing to blocked automatically sets blockedAt timestamp * - Changing from blocked to in_progress or pending clears blocked fields * - Completed tasks get a 30-day TTL for automatic cleanup * * Progress Updates: * - Update progress (0.0 to 1.0) to track completion percentage * - Update progressMessage for human-readable status updates * - Set result object when task completes successfully * - Set error string when task fails * - Set blockedReason and blockedByTaskIds when blocking a task
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”The organisation ID
The task UUID
Example
550e8400-e29b-41d4-a716-446655440000Request Bodyrequired
Section titled “Request Bodyrequired”object
Example
Updated task titleExample
Updated description with more detailsMove task to different list or remove from list (set null)
Example
world-2Task status (triggers automatic timestamp updates)
Example
in_progressReassign task to different agent
Example
agent-specialistUpdate task dependencies
Example
[ "550e8400-e29b-41d4-a716-446655440000"]Update task metadata (replaces entire metadata object)
object
Example
{ "priority": "urgent"}Progress from 0.0 to 1.0
Example
0.75Human-readable progress message
Example
Processing document 3 of 4...Task result data (set when completing task)
object
Example
{ "summary": "Document processed successfully", "wordCount": 1500}Error message (set when task fails)
Example
Failed to connect to external APIUpdate retry count
Example
1Update maximum retry attempts
Example
5Reason task is blocked (set when status is blocked)
Example
Waiting for external approvalTask IDs that are blocking this task
Responses
Section titled “Responses”Task updated successfully
object
Examplegenerated
{ "taskId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "status": "example", "updatedAt": 1}Invalid request
Task not found
Failed to update task
