# PATCH /tasks/:task_id

**Resource:** [Tasks](./tasks.md)  
**MCP tool:** `update_task`  
**Scopes:** `tasks:write`  
**Write operation:** yes

Update a task. Set status to "completed" to mark complete. Pass only fields you want to change. Note: the task modal has two text fields — "Summary" (maps to `description`) and "Detailed Description" (maps to `body`). Pick the right one for the length of content.

## Parameters

| Name | In | Type | Required | Description |
|------|----|------|----------|-------------|
| `task_id` | path | string | yes |  |
| `title` | body | string | no | Title. Matches the "Title" field on the task modal. |
| `description` | body | string | no | Summary — short one-line summary (target under ~200 chars). Matches the "Summary" field on the task modal. For multi-paragraph content use `body` instead. |
| `body` | body | string | no | Detailed Description — long-form notes, acceptance criteria, multi-paragraph content. Matches the "Detailed Description" field on the task modal. |
| `due_date` | body | string | no |  |
| `due_time` | body | string | no |  |
| `assigned_to` | body | string | no |  |
| `status` | body | string | no | todo, in_progress, or completed. Set to completed to mark done. |
| `priority` | body | string | no | low, medium, high, or urgent |
| `category` | body | string | no |  |

## Request example

```bash
curl -X PATCH   "https://api.trustpager.com/functions/v1/api/v1/tasks/:task_id"   -H "Authorization: Bearer YOUR_API_KEY"   -H "Content-Type: application/json"   -d '{"title":"...","description":"...","body":"..."}'
```

---
Base URL: `https://api.trustpager.com/functions/v1/api/v1` — Auth: `Authorization: Bearer YOUR_API_KEY`