ClickUp - Update Task
↩ Part of the ClickUp integration.
Description
Section titled “Description”Updates an existing ClickUp task (PUT /task/{task_id}). This is how a workflow advances a task through its list statuses — “to do” → “in progress” → “done” — and how it adjusts dates, priority or assignees along the way.
The fields to change are given as a JSON object, so a single node covers any editable attribute without a form field per attribute.
Configuration
Section titled “Configuration”| Field | Type | Required | Description |
|---|---|---|---|
credentials_id | credentials | Yes | ClickUp credential |
task_id | text | Yes | Task id |
fields | JSON | Yes | Fields to update, e.g. {"status":"in progress"} |
task_id is resolved through dynamic variables ({{data.field}}). fields is not: it is parsed as JSON and sent as the request body, so build any computed value in a previous node.
Credentials
Section titled “Credentials”This node requires a ClickUp credential (service type clickup):
| Field | Description |
|---|---|
token | Personal API token from ClickUp → Settings → Apps → API Token |
Commonly updated fields
Section titled “Commonly updated fields”| Key | Effect |
|---|---|
status | Moves the task to that status (must exist in its list) |
name | Renames the task |
description | Replaces the description |
priority | 1 urgent, 2 high, 3 normal, 4 low |
due_date | Due date in Unix milliseconds |
start_date | Start date in Unix milliseconds |
assignees | {"add": [123], "rem": [456]} — ClickUp adds and removes rather than replacing |
archived | true archives the task |
Output
Section titled “Output”The updated task, as ClickUp returns it:
{ "data": { "id": "86a1b2c3d", "name": "Order: ACME Inc.", "status": { "status": "in progress", "type": "custom" }, "date_updated": "1786790000000", "url": "https://app.clickup.com/t/86a1b2c3d" }, "_meta": { "moduleVersion": "1.0.0", "success": true, "id": "86a1b2c3d", "totalMs": 271 }}Usage Example
Section titled “Usage Example”Advance the status
Section titled “Advance the status”{ "credentials_id": "clickup_ops", "task_id": "{{data.task_id}}", "fields": { "status": "in progress" }}Raise priority and push the due date
Section titled “Raise priority and push the due date”{ "credentials_id": "clickup_ops", "task_id": "{{data.task_id}}", "fields": { "priority": 1, "due_date": 1786788000000 }}Add and remove assignees
Section titled “Add and remove assignees”{ "credentials_id": "clickup_ops", "task_id": "{{data.task_id}}", "fields": { "assignees": { "add": [ 4812345 ], "rem": [ 4812346 ] } }}- If
fieldsis not valid JSON, the node stops with avalidationerror before calling ClickUp. - Only the keys you send are changed; everything else keeps its current value.
- Sending a
statusthat does not exist in the task’s list returns avalidationerror (400) with ClickUp’sECODE. - To mark a task complete, set the status your list uses for the “done” stage — there is no generic
completedflag. - Custom fields are not updated through this endpoint; they need
POST /task/{id}/field/{field_id}via the HTTP node.
Related Nodes
Section titled “Related Nodes”- ClickUp - Get Task — read the current values before updating.
- ClickUp - Create Task — create the task in the first place.
- ClickUp - Delete Task — remove it permanently.