Skip to content

PUT tasks

Updates an existing task in the team

PUT thgflow.com/api/rest/v1/teams/tasks/{id}

{id} is the task’s id (UUID). The task must belong to the team that the API client belongs to, otherwise a 404 is returned.

This is a partial update: any field you omit keeps its current value, and only the fields you send are changed. For status_id, phase_id and parent_id you can also clear the current value by sending the field as null. To clear a template field, send it with an empty array ([]) as its value.

Request

Send only the fields you want to change. Every field below is optional.

{
"title": "updated title", // omit to leave unchanged
"status_id": "status-id", // omit to leave unchanged; send null to clear
"phase_id": "phase-id", // omit to leave unchanged; send null to clear
"parent_id": "parent-task-id", // omit to leave unchanged; send null to clear; when set, must not be the task's own id
"assigned_users": [ // omit to leave unchanged; send [] to remove all assignees
{
"id": "assigned-user-id"
}
],
"task_template_input": {
"template_id": "template-id",
"fields": [
{
"id": "field-id",
"value": ["field-input"] // empty array clears this field
}
]
},
"metadata": {
"estimation": 8
}
}

Response

{
"id": string;
"code": string;
}

Notes

  • Omitted fields are preserved. Sending an empty body ({}) is a valid no-op.
  • For status_id, phase_id and parent_id: omitting the field keeps its current value, sending a value changes it, and sending null clears (unsets) it.
  • title cannot be cleared — omitting it or sending null both keep the current value, and when provided it cannot be empty.
  • parent_id cannot be set to the task’s own id (a task cannot be its own parent).
  • When set to a value, status_id, phase_id and parent_id must reference resources that belong to the same team.