Update task
PATCH
/api/tasks/{id}
PATCH semantics — only fields present in the body are updated.
Authorizations
bearerAuth
API token created via POST /api/tokens or the db:create-token CLI command
Type
HTTP (bearer)
Request Body
application/json
JSON
{
"title": "string",
"short_title": "string",
"due_at": "string",
"target_at": "string",
"deadline_at": "string",
"horizon": "string",
"retarget": true,
"deadline_nag_off": true,
"affirm_horizon": true,
"allow_past_deadline": true,
"cap_at_deadline": true,
"reset_original_due_at": true,
"priority": 0,
"rrule": "string",
"recurrence_mode": "string",
"labels": [
"string"
],
"notes": "string",
"project_id": 0,
"auto_snooze_minutes": 0,
"progress_target": 0,
"progress_current": 0,
"create_label": true
}
Responses
Updated task with change metadata
application/json
JSON
{
"data": {
"id": 0,
"user_id": 0,
"project_id": 0,
"title": "string",
"original_title": "string",
"short_title": "string",
"done": true,
"done_at": "string",
"priority": 0,
"due_at": "string",
"rrule": "string",
"recurrence_mode": "string",
"anchor_time": "string",
"anchor_dow": 0,
"anchor_dom": 0,
"original_due_at": "string",
"target_at": "string",
"deadline_at": "string",
"horizon": "string",
"horizon_set_at": "string",
"last_considered_at": "string",
"segment_deferred_at": "string",
"segment_targeted_at": "string",
"target_set_at": "string",
"target_auto": true,
"occurrence_at": "string",
"deadline_nag_off": true,
"auto_snooze_minutes": 0,
"deleted_at": "string",
"archived_at": "string",
"labels": [
"string"
],
"notes": "string",
"progress_target": 0,
"progress_current": 0,
"progress_period_start": "string",
"quota_prompt_config": {
"enabled": true,
"slot_id": 0,
"numbers": {
"additionalProperties": 0
}
},
"quota_day_state": {
"date": "2026-09-24",
"logged": 0,
"did": [
"string"
],
"considered": [
"string"
],
"did_applied": {
"additionalProperties": 0
}
},
"completion_count": 0,
"skip_count": 0,
"first_completed_at": "string",
"last_completed_at": "string",
"created_at": "string",
"updated_at": "string",
"is_recurring": true,
"fields_changed": [
"string"
],
"description": "string"
}
}
PATCH
/api/tasks/{id}
