| name | clickup |
| version | 0.1.0 |
| author | devclaw |
| description | ClickUp API — tasks, lists, spaces, and productivity management |
| category | project-management |
| tags | ["clickup","tasks","productivity","project-management"] |
| requires | {"bins":["curl","jq"],"env":["CLICKUP_API_TOKEN"]} |
ClickUp
Interact with ClickUp using their REST API.
Setup
-
Check existing credentials:
vault_get clickup_api_token
-
If not configured:
The token is auto-injected as $CLICKUP_API_TOKEN.
Get Authorized User & Workspaces
curl -s "https://api.clickup.com/api/v2/user" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.user'
curl -s "https://api.clickup.com/api/v2/team" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.teams[]'
curl -s "https://api.clickup.com/api/v2/team/TEAM_ID/space" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.spaces[]'
curl -s "https://api.clickup.com/api/v2/space/SPACE_ID/list" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.lists[]'
Tasks
curl -s "https://api.clickup.com/api/v2/list/LIST_ID/task" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.tasks[]'
curl -s "https://api.clickup.com/api/v2/task/TASK_ID" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.'
curl -s "https://api.clickup.com/api/v2/list/LIST_ID/task?status[]=Open&due_date_lt=1735689600000" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.tasks[]'
Create Task
curl -s -X POST "https://api.clickup.com/api/v2/list/LIST_ID/task" \
-H "Authorization: $CLICKUP_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Implement authentication",
"description": "Add OAuth2 support",
"priority": 2,
"due_date": 1735689600000,
"assignees": [USER_ID]
}' | jq '.'
Update Task
curl -s -X PUT "https://api.clickup.com/api/v2/task/TASK_ID" \
-H "Authorization: $CLICKUP_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "Updated task name", "status": "in progress"}'
curl -s -X PUT "https://api.clickup.com/api/v2/task/TASK_ID" \
-H "Authorization: $CLICKUP_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"status": "complete"}'
Comments
curl -s -X POST "https://api.clickup.com/api/v2/task/TASK_ID/comment" \
-H "Authorization: $CLICKUP_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"comment_text": "Great progress!"}'
curl -s "https://api.clickup.com/api/v2/task/TASK_ID/comment" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.comments[]'
Time Tracking
curl -s -X POST "https://api.clickup.com/api/v2/team/TEAM_ID/time_entries/start" \
-H "Authorization: $CLICKUP_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tid": "TASK_ID"}'
curl -s -X POST "https://api.clickup.com/api/v2/team/TEAM_ID/time_entries/stop" \
-H "Authorization: $CLICKUP_API_TOKEN"
curl -s "https://api.clickup.com/api/v2/team/TEAM_ID/time_entries?task_id=TASK_ID" \
-H "Authorization: $CLICKUP_API_TOKEN" | jq '.data[]'
Tips
- Priority: 1=Urgent, 2=High, 3=Normal, 4=Low
- Dates are Unix timestamps in milliseconds
- Status names depend on your ClickUp workspace configuration
- Use
include_closed=true to get completed tasks
Triggers
clickup, clickup task, create clickup task, clickup api, clickup list