ClickUp
Read and create ClickUp tasks from InTouch using the
ClickUp REST API v2 (https://api.clickup.com/api/v2).
The tool uses the Python standard library only (no third-party dependencies) and authenticates with a ClickUp personal API token.
Operations
| Operation | Required inputs | ClickUp endpoint | What it does |
|---|---|---|---|
get_workspaces |
— | GET /team |
List the workspaces (teams) your token can access. |
get_tasks |
listId |
GET /list/{list_id}/task |
List tasks in a List (up to 100 per page). |
get_task |
taskId |
GET /task/{task_id} |
Get a single task by its ID. |
create_task |
listId, name |
POST /list/{list_id}/task |
Create a task in a List. Optional: description. |
Inputs
| Name | Required | Description |
|---|---|---|
apiKey |
yes | ClickUp personal API token (starts with pk_). |
operation |
yes | One of get_workspaces, get_tasks, get_task, create_task. |
listId |
for get_tasks, create_task |
The ClickUp List ID. |
taskId |
for get_task |
The ClickUp Task ID. |
name |
for create_task |
The task name. |
description |
optional | Task description for create_task. |
Outputs
| Key | Description |
|---|---|
result |
The raw JSON response body from ClickUp (as a string). |
status |
The HTTP status code (e.g. 200). |
On a transport-level failure the tool prints {"error": "..."} and exits 1,
marking the step FAILED. API errors (4xx/5xx) are returned in result/status
so you can branch on them.
Getting your apiKey
ClickUp personal tokens never expire and are tied to your user account:
- Log in to ClickUp.
- Click your avatar (upper-right) > Settings.
- In the sidebar, click Apps (or go to https://app.clickup.com/settings/apps).
- Under API Token, click Generate (or Regenerate) and Copy.
The token is sent in the Authorization header with no Bearer prefix —
e.g. Authorization: pk_12345_ABCDEF....
Examples
List your workspaces (to find a workspace, then drill into spaces/folders/lists in the ClickUp UI to get a List ID):
operation: get_workspaces
apiKey: pk_12345_ABCDEF...
Create a task in a list:
operation: create_task
apiKey: pk_12345_ABCDEF...
listId: "900100123456"
name: "Follow up with vendor on RFQ"
description: "Email them the revised drawing and confirm delivery date."
List the tasks in that list afterward:
operation: get_tasks
apiKey: pk_12345_ABCDEF...
listId: "900100123456"