> ## Documentation Index
> Fetch the complete documentation index at: https://lava.so/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ClickUp

> ClickUp workspace API for reading and writing tasks, lists, folders, spaces, comments, time entries, docs, and chat.

ClickUp workspace API for reading and writing tasks, lists, folders, spaces, comments, time entries, docs, and chat. Best for syncing task state into or out of ClickUp, automating status transitions, or pulling pipeline data into reports. Covers both v2 (team/space/list/task hierarchy, time tracking, webhooks) and v3 (chat, docs, audit logs).

16 example endpoints available through Lava's AI Gateway. See the [ClickUp API docs](https://developer.clickup.com/reference) for full documentation.

<Warning>This provider requires your own credentials — connect your API key or OAuth account before use.</Warning>

<Info>This is a **catch-all provider** — any valid URL under `https://api.clickup.com` is supported. Any ClickUp API endpoint. v2 paths start with /api/v2 (most of the product — workspaces/teams, spaces, folders, lists, tasks, comments, time tracking, webhooks). v3 paths start with /api/v3 (chat, docs, audit logs, attachments). Construct URL as [https://api.clickup.com/\&#123;path\&#125](https://api.clickup.com/\&#123;path\&#125);. See [https://developer.clickup.com/reference](https://developer.clickup.com/reference) for full reference. The endpoints below are curated examples.</Info>

## Endpoints

### List Workspaces (called "teams" in the v2 API) the authorized user can access. Use first to discover workspace IDs for downstream calls.

**GET** `https://api.clickup.com/api/v2/team` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/team', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Fteam" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### Get the authorized user.

**GET** `https://api.clickup.com/api/v2/user` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/user', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Fuser" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### List spaces under a Workspace (team\_id).

**GET** `https://api.clickup.com/api/v2/team/{team_id}/space` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/team/{team_id}/space', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Fteam%2F%7Bteam_id%7D%2Fspace" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### List folders under a space.

**GET** `https://api.clickup.com/api/v2/space/{space_id}/folder` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/space/{space_id}/folder', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Fspace%2F%7Bspace_id%7D%2Ffolder" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### List lists under a folder.

**GET** `https://api.clickup.com/api/v2/folder/{folder_id}/list` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/folder/{folder_id}/list', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Ffolder%2F%7Bfolder_id%7D%2Flist" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### List tasks in a list. Supports filters: page, archived, include\_closed, order\_by, assignees, tags, due\_date\_gt, etc.

**GET** `https://api.clickup.com/api/v2/list/{list_id}/task?archived=false&include_closed=false` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/list/{list_id}/task?archived=false&include_closed=false', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Flist%2F%7Blist_id%7D%2Ftask%3Farchived%3Dfalse%26include_closed%3Dfalse" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### Create a task in a list.

**POST** `https://api.clickup.com/api/v2/list/{list_id}/task` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/list/{list_id}/task', {
      body: {
    "name": "New task from Lava",
    "description": "Created via the gateway",
    "status": "to do"
    },
    });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Flist%2F%7Blist_id%7D%2Ftask" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY" \
      -H "Content-Type: application/json" \
      -d '{"name":"New task from Lava","description":"Created via the gateway","status":"to do"}'
    ```
  </Tab>
</Tabs>

### Retrieve a single task by ID. Supports custom\_task\_ids and team\_id query params.

**GET** `https://api.clickup.com/api/v2/task/{task_id}` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/task/{task_id}', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Ftask%2F%7Btask_id%7D" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### Update a task. Only fields in the body are modified — use status, name, description, priority, assignees\_add, assignees\_rem, etc.

**PUT** `https://api.clickup.com/api/v2/task/{task_id}` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/task/{task_id}', { method: 'PUT', body: {"status":"in progress"} });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl -X PUT "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Ftask%2F%7Btask_id%7D" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY" \
      -H "Content-Type: application/json" \
      -d '{"status":"in progress"}'
    ```
  </Tab>
</Tabs>

### Delete a task.

**DELETE** `https://api.clickup.com/api/v2/task/{task_id}` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/task/{task_id}', { method: 'DELETE' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl -X DELETE "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Ftask%2F%7Btask_id%7D" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY" \
      -H "Content-Type: application/json"
    ```
  </Tab>
</Tabs>

### Get filtered tasks across a whole Workspace. Supports page, assignees, statuses, tags, date filters, space\_ids, project\_ids, list\_ids.

**GET** `https://api.clickup.com/api/v2/team/{team_id}/task?include_closed=false` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/team/{team_id}/task?include_closed=false', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Fteam%2F%7Bteam_id%7D%2Ftask%3Finclude_closed%3Dfalse" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### Add a comment to a task.

**POST** `https://api.clickup.com/api/v2/task/{task_id}/comment` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/task/{task_id}/comment', {
      body: {
    "comment_text": "Posted via Lava gateway.",
    "notify_all": false
    },
    });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Ftask%2F%7Btask_id%7D%2Fcomment" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY" \
      -H "Content-Type: application/json" \
      -d '{"comment_text":"Posted via Lava gateway.","notify_all":false}'
    ```
  </Tab>
</Tabs>

### Get time entries within a date range for a Workspace. Supports start\_date, end\_date, assignee, include\_task\_tags.

**GET** `https://api.clickup.com/api/v2/team/{team_id}/time_entries` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/team/{team_id}/time_entries', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Fteam%2F%7Bteam_id%7D%2Ftime_entries" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### Create a time entry for a Workspace.

**POST** `https://api.clickup.com/api/v2/team/{team_id}/time_entries` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/team/{team_id}/time_entries', {
      body: {
    "start": 1700000000000,
    "duration": 3600000,
    "description": "Working on task",
    "tid": "{task_id}"
    },
    });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Fteam%2F%7Bteam_id%7D%2Ftime_entries" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY" \
      -H "Content-Type: application/json" \
      -d '{"start":1700000000000,"duration":3600000,"description":"Working on task","tid":"{task_id}"}'
    ```
  </Tab>
</Tabs>

### Create a webhook subscription for a Workspace.

**POST** `https://api.clickup.com/api/v2/team/{team_id}/webhook` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v2/team/{team_id}/webhook', {
      body: {
    "endpoint": "https://example.com/clickup-webhook",
    "events": [
      "taskCreated",
      "taskUpdated"
    ]
    },
    });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl -X POST "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv2%2Fteam%2F%7Bteam_id%7D%2Fwebhook" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY" \
      -H "Content-Type: application/json" \
      -d '{"endpoint":"https://example.com/clickup-webhook","events":["taskCreated","taskUpdated"]}'
    ```
  </Tab>
</Tabs>

### Update a Chat channel (v3) — name, description, topic, visibility.

**PATCH** `https://api.clickup.com/api/v3/workspaces/{workspace_id}/chat/channels/{channel_id}` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.clickup.com/api/v3/workspaces/{workspace_id}/chat/channels/{channel_id}', { method: 'PATCH', body: {"name":"Renamed channel"} });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl -X PATCH "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.clickup.com%2Fapi%2Fv3%2Fworkspaces%2F%7Bworkspace_id%7D%2Fchat%2Fchannels%2F%7Bchannel_id%7D" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY" \
      -H "Content-Type: application/json" \
      -d '{"name":"Renamed channel"}'
    ```
  </Tab>
</Tabs>

## Next Steps

<CardGroup cols={2}>
  <Card title="All Providers" icon="grid" href="/gateway/supported-providers">
    Browse all supported AI providers
  </Card>

  <Card title="Forward Proxy" icon="route" href="/gateway/forward-proxy">
    Learn how to construct proxy URLs and authenticate requests
  </Card>
</CardGroup>
