Update a task
PATCH
/projects/{id}/tickets/{ticketId}/tasks/{taskId}
const url = 'https://example.com/api/projects/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/tickets/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/tasks/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"title":"example","body":"example","role":"frontend","status":"pending","depends_on_task_ids":["2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"],"acceptance_criteria":[{}],"estimated_minutes":1,"blocking_reason":"example","assignee_user_id":"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 PATCH \ --url https://example.com/api/projects/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/tickets/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/tasks/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "title": "example", "body": "example", "role": "frontend", "status": "pending", "depends_on_task_ids": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ], "acceptance_criteria": [ {} ], "estimated_minutes": 1, "blocking_reason": "example", "assignee_user_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" }'Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ” id
required
string format: uuid
Project UUID
ticketId
required
string format: uuid
Ticket UUID
taskId
required
string format: uuid
Task UUID
Request Body required
Section titled “Request Body required ” Media type application/json
object
title
string
body
string
role
string
status
string
depends_on_task_ids
Array<string>
acceptance_criteria
Array<object>
object
estimated_minutes
integer
blocking_reason
string
assignee_user_id
string format: uuid
Responses
Section titled “ Responses ”Task updated
Media type application/json
object
task
object
id
string format: uuid
handoff_request_id
string format: uuid
project_id
string format: uuid
sequence
integer
title
string
body
string | null
summary
string | null
role
string
status
string
assignee_user_id
string | null format: uuid
assignee_session_id
string | null
depends_on_task_ids
Array<string>
acceptance_criteria
Array<object>
object
estimated_minutes
integer | null
actual_minutes
integer | null
blocking_reason
string | null
started_at
string | null format: date-time
completed_at
string | null format: date-time
created_at
string format: date-time
updated_at
string format: date-time
Invalid request
Media type application/json
object
error
required
Human-readable error message
string
code
Stable machine-readable error code for client branching
string
fieldErrors
First validation message per field path
object
key
additional properties
string
issues
Structured validation issues (Zod)
Array<object>
object
path
required
string
message
required
string
retryAfter
Seconds until rate limit resets (429 responses)
number
Not authenticated
Media type application/json
object
error
required
Human-readable error message
string
code
Stable machine-readable error code for client branching
string
fieldErrors
First validation message per field path
object
key
additional properties
string
issues
Structured validation issues (Zod)
Array<object>
object
path
required
string
message
required
string
retryAfter
Seconds until rate limit resets (429 responses)
number
reconnect
True if re-linking GitHub may fix the issue
boolean
Task not found
Cycle detected in depends_on_task_ids