ClickUp connector
OAuth 2.0Project ManagementCollaborationProductivityConnect to ClickUp. Manage tasks, projects, workspaces, and team collaboration
ClickUp connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Set up the connector
Section titled “Set up the connector”Register your ClickUp credentials with Scalekit so it handles the token lifecycle. You do this once per environment.
Dashboard setup steps
Register your Scalekit environment with the ClickUp connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows:
-
Set up auth redirects
-
In Scalekit dashboard, go to AgentKit > Connections > Create Connection. Find ClickUp and click Create. Copy the redirect URI. It looks like
https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.
-
In ClickUp, click your Workspace avatar (lower-left corner) → Settings → Integrations → ClickUp API.
-
Open your application and paste the copied URI under Redirect URL(s), then save.

-
-
Get client credentials
On your ClickUp application page (Settings → Integrations → ClickUp API):

- Client ID — found under Client ID on your app page
- Client Secret — found under Client Secret on your app page
-
Add credentials in Scalekit
-
In Scalekit dashboard, go to AgentKit > Connections and open the connection you created.
-
Enter your credentials:
- Client ID (from your ClickUp app page)
- Client Secret (from your ClickUp app page)

-
Click Save.
-
-
Connect a user account
- Click the Connected Accounts tab, then Add Account.
- Enter your user’s ID and click Create Account — you’ll be redirected to ClickUp to authorize access.
-
-
Authorize and make your first call
Section titled “Authorize and make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'clickup'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize ClickUp:', link)process.stdout.write('Press Enter after authorizing...')await new Promise(r => process.stdin.once('data', r))// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'clickup_user_get',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "clickup"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize ClickUp:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="clickup_user_get",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- Manage tasks — create, update, delete, and search tasks; set priorities, due dates, assignees, and statuses
- Manage lists — create, update, and delete lists in folders or as folderless lists; get members
- Manage folders — create, update, and delete folders; list all folders in a space
- Manage spaces — create, update, and delete spaces; manage space tags and views
- Manage comments — add, update, and delete comments on tasks and lists
- Manage goals — create, update, delete, and list goals and their key results
- Track time — list and create time entries for tasks
- Manage checklists — create task checklists and checklist items
- Manage webhooks — create, update, delete, and list workspace webhooks
- Access workspace data — get user info, list workspaces, spaces, and views
Common workflows
Section titled “Common workflows”Proxy API call
const result = await actions.request({ connectionName: 'clickup', identifier: 'user_123', path: '/api/v2/user', method: 'GET',});console.log(result);result = actions.request( connection_name='clickup', identifier='user_123', path="/api/v2/user", method="GET")print(result)Execute a tool
const result = await actions.executeTool({ connector: 'clickup', identifier: 'user_123', toolName: 'clickup_list', toolInput: {},});console.log(result);result = actions.execute_tool( tool_input={}, tool_name='clickup_list', connection_name='clickup', identifier='user_123',)print(result)Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
clickup_checklist_item_create#Add a new item to an existing ClickUp task checklist.3 params
Add a new item to an existing ClickUp task checklist.
checklist_idstringrequiredChecklist ID (UUID)namestringrequiredItem labelassigneeintegeroptionalUser ID to assign to this itemclickup_comment_create#Add a new comment to a ClickUp task. Supports assigning the comment to a user and sending notifications.4 params
Add a new comment to a ClickUp task. Supports assigning the comment to a user and sending notifications.
comment_textstringrequiredThe content of the commentnotify_allbooleanrequiredWhen true, notifies the comment creator in addition to other watcherstask_idstringrequiredThe unique identifier of the task to comment onassigneeintegeroptionalUser ID to assign this comment toclickup_comment_create_list#Add a new comment to a ClickUp list. Supports assigning the comment to a user and sending notifications.4 params
Add a new comment to a ClickUp list. Supports assigning the comment to a user and sending notifications.
assigneeintegerrequiredUser ID to assign this comment tocomment_textstringrequiredThe content of the commentlist_idstringrequiredThe unique identifier of the list to comment onnotify_allbooleanrequiredWhen true, also notifies the comment creatorclickup_comment_delete#Permanently delete a ClickUp comment by comment ID. This action cannot be undone.1 param
Permanently delete a ClickUp comment by comment ID. This action cannot be undone.
comment_idstringrequiredThe unique identifier of the comment to deleteclickup_comment_get_list#Retrieve comments on a ClickUp list. Returns up to 25 most recent comments by default. Use start and start_id for pagination.3 params
Retrieve comments on a ClickUp list. Returns up to 25 most recent comments by default. Use start and start_id for pagination.
list_idstringrequiredThe unique identifier of the liststartintegeroptionalUnix timestamp in milliseconds of a reference comment for paginationstart_idstringoptionalID of a reference comment for paginationclickup_comment_get_task#Retrieve comments on a ClickUp task. Returns up to 25 most recent comments. Use start and start_id for pagination.3 params
Retrieve comments on a ClickUp task. Returns up to 25 most recent comments. Use start and start_id for pagination.
task_idstringrequiredThe unique identifier of the taskstartintegeroptionalUnix timestamp in milliseconds of a reference comment for paginationstart_idstringoptionalID of a reference comment for paginationclickup_comment_update#Update an existing ClickUp comment. Supports changing comment text, assignee, and resolved status.4 params
Update an existing ClickUp comment. Supports changing comment text, assignee, and resolved status.
assigneeintegerrequiredUser ID to assign this comment tocomment_idstringrequiredThe unique identifier of the comment to updatecomment_textstringrequiredNew text content for the commentresolvedbooleanrequiredWhether the comment is marked as resolvedclickup_folder_create#Create a new folder within a ClickUp space to organize lists and tasks.2 params
Create a new folder within a ClickUp space to organize lists and tasks.
namestringrequiredThe name for the new folderspace_idstringrequiredThe ID of the space to create the folder inclickup_folder_delete#Permanently delete a ClickUp folder. This action cannot be undone.1 param
Permanently delete a ClickUp folder. This action cannot be undone.
folder_idstringrequiredThe unique identifier of the folder to deleteclickup_folder_get#Retrieve details of a specific ClickUp folder by folder ID, including the lists it contains.1 param
Retrieve details of a specific ClickUp folder by folder ID, including the lists it contains.
folder_idstringrequiredThe unique identifier of the folderclickup_folder_get_all#Retrieve all folders within a ClickUp space. Optionally filter to include archived folders.2 params
Retrieve all folders within a ClickUp space. Optionally filter to include archived folders.
space_idstringrequiredThe unique identifier of the spacearchivedbooleanoptionalInclude archived folders in resultsclickup_folder_update#Rename an existing ClickUp folder.2 params
Rename an existing ClickUp folder.
folder_idstringrequiredThe unique identifier of the folder to updatenamestringrequiredNew name for the folderclickup_goal_create#Create a new goal in a ClickUp workspace. Goals help track high-level objectives with due dates and owner assignments.6 params
Create a new goal in a ClickUp workspace. Goals help track high-level objectives with due dates and owner assignments.
colorstringrequiredColor for the goal (hex code)descriptionstringrequiredDescription of the goaldue_dateintegerrequiredDue date as Unix timestamp in millisecondsmultiple_ownersbooleanrequiredAllow multiple owners for this goalnamestringrequiredName of the goalteam_idstringrequiredThe workspace (team) IDclickup_goal_delete#Remove a Goal from a ClickUp Workspace.1 param
Remove a Goal from a ClickUp Workspace.
goal_idstringrequiredGoal ID (UUID)clickup_goal_get#Retrieve the details of a ClickUp Goal including its targets.1 param
Retrieve the details of a ClickUp Goal including its targets.
goal_idstringrequiredGoal ID (UUID)clickup_goal_get_all#Retrieve all goals in a ClickUp workspace. Optionally filter to include or exclude completed goals.2 params
Retrieve all goals in a ClickUp workspace. Optionally filter to include or exclude completed goals.
team_idstringrequiredThe workspace (team) IDinclude_completedbooleanoptionalInclude completed goals in results (defaults to true)clickup_goal_update#Update an existing ClickUp goal. Supports renaming, changing due date, description, color, and managing owners.5 params
Update an existing ClickUp goal. Supports renaming, changing due date, description, color, and managing owners.
colorstringrequiredUpdated color for the goal (hex code)descriptionstringrequiredUpdated description of the goaldue_dateintegerrequiredUpdated due date as Unix timestamp in millisecondsgoal_idstringrequiredThe unique identifier (UUID) of the goal to updatenamestringrequiredNew name for the goalclickup_list_create#Create a new list within a ClickUp folder. Supports setting name, description, due date, priority, and assignee.6 params
Create a new list within a ClickUp folder. Supports setting name, description, due date, priority, and assignee.
folder_idstringrequiredThe ID of the folder to create the list innamestringrequiredThe name for the new listassigneeintegeroptionalUser ID to assign to the listcontentstringoptionalDescription of the listdue_dateintegeroptionalDue date for the list as Unix timestamp in millisecondspriorityintegeroptionalPriority level: 1 (urgent), 2 (high), 3 (normal), 4 (low)clickup_list_create_folderless#Create a new list directly within a ClickUp space (not inside a folder). Useful for top-level organization.5 params
Create a new list directly within a ClickUp space (not inside a folder). Useful for top-level organization.
namestringrequiredThe name for the new listspace_idstringrequiredThe ID of the space to create the list incontentstringoptionalDescription of the listdue_dateintegeroptionalDue date as Unix timestamp in millisecondspriorityintegeroptionalPriority level: 1 (urgent), 2 (high), 3 (normal), 4 (low)clickup_list_delete#Permanently delete a ClickUp list and all its contents. This action cannot be undone.1 param
Permanently delete a ClickUp list and all its contents. This action cannot be undone.
list_idstringrequiredThe unique identifier of the list to deleteclickup_list_get#Retrieve details of a specific ClickUp list by list ID.1 param
Retrieve details of a specific ClickUp list by list ID.
list_idstringrequiredThe unique identifier of the listclickup_list_get_all#Retrieve all lists within a ClickUp folder. Optionally filter to include or exclude archived lists.2 params
Retrieve all lists within a ClickUp folder. Optionally filter to include or exclude archived lists.
folder_idstringrequiredThe unique identifier of the folderarchivedbooleanoptionalInclude archived lists in resultsclickup_list_get_folderless#Retrieve all lists in a ClickUp space that are not inside a folder. These are top-level lists within the space.2 params
Retrieve all lists in a ClickUp space that are not inside a folder. These are top-level lists within the space.
space_idstringrequiredThe unique identifier of the spacearchivedbooleanoptionalInclude archived lists in resultsclickup_list_members_list#Retrieve Workspace members who have explicit access to a specific ClickUp List.1 param
Retrieve Workspace members who have explicit access to a specific ClickUp List.
list_idintegerrequiredList IDclickup_list_update#Update an existing ClickUp list. Supports renaming, updating description, due date, priority, assignee, and status color.6 params
Update an existing ClickUp list. Supports renaming, updating description, due date, priority, assignee, and status color.
list_idstringrequiredThe unique identifier of the list to updatenamestringrequiredNew name for the listcontentstringoptionalUpdated description for the listdue_dateintegeroptionalUpdated due date as Unix timestamp in millisecondspriorityintegeroptionalPriority level: 1 (urgent), 2 (high), 3 (normal), 4 (low)unset_statusbooleanoptionalSet to true to remove the list colorclickup_list_views_list#Retrieve all views in a ClickUp List.1 param
Retrieve all views in a ClickUp List.
list_idintegerrequiredList IDclickup_space_create#Create a new space within a ClickUp workspace. Spaces are the top-level organizational units that contain folders and lists.3 params
Create a new space within a ClickUp workspace. Spaces are the top-level organizational units that contain folders and lists.
multiple_assigneesbooleanrequiredAllow multiple assignees on tasks in this spacenamestringrequiredThe name for the new spaceteam_idstringrequiredThe workspace (team) ID to create the space inclickup_space_delete#Permanently delete a ClickUp space from your workspace. This action cannot be undone.1 param
Permanently delete a ClickUp space from your workspace. This action cannot be undone.
space_idstringrequiredThe unique identifier of the space to deleteclickup_space_get#Retrieve details of a specific ClickUp space by space ID.1 param
Retrieve details of a specific ClickUp space by space ID.
space_idstringrequiredThe unique identifier of the spaceclickup_space_get_all#Retrieve all spaces available in a ClickUp workspace (team). Optionally include archived spaces.2 params
Retrieve all spaces available in a ClickUp workspace (team). Optionally include archived spaces.
team_idstringrequiredThe workspace (team) IDarchivedbooleanoptionalInclude archived spaces in resultsclickup_space_tag_create#Create a new tag in a ClickUp Space.4 params
Create a new tag in a ClickUp Space.
space_idstringrequiredSpace IDtag_namestringrequiredTag nametag_bgstringoptionalBackground color (hex)tag_fgstringoptionalForeground color (hex)clickup_space_tag_delete#Remove a tag from a ClickUp Space.4 params
Remove a tag from a ClickUp Space.
space_idstringrequiredSpace IDtag_namestringrequiredTag name to deletetag_bgstringoptionalBackground color (hex)tag_fgstringoptionalForeground color (hex)clickup_space_tags_list#Retrieve all task tags available in a ClickUp Space.1 param
Retrieve all task tags available in a ClickUp Space.
space_idstringrequiredSpace IDclickup_space_update#Update an existing ClickUp space. Supports renaming, changing color, privacy settings, and enabling multiple assignees.5 params
Update an existing ClickUp space. Supports renaming, changing color, privacy settings, and enabling multiple assignees.
colorstringrequiredColor for the space (hex code)multiple_assigneesbooleanrequiredAllow multiple assignees on tasksnamestringrequiredNew name for the spaceprivatebooleanrequiredWhether this space is privatespace_idstringrequiredThe unique identifier of the space to updateclickup_space_views_list#Retrieve all views in a ClickUp Space.1 param
Retrieve all views in a ClickUp Space.
space_idintegerrequiredSpace IDclickup_task_checklist_create#Add a new checklist to a ClickUp task.4 params
Add a new checklist to a ClickUp task.
namestringrequiredChecklist nametask_idstringrequiredTask IDcustom_task_idsbooleanoptionalUse custom task IDsteam_idintegeroptionalWorkspace ID (required if custom_task_ids=true)clickup_task_create#Create a new task in a ClickUp list. Supports setting name, description, assignees, status, priority, due date, start date, and more.9 params
Create a new task in a ClickUp list. Supports setting name, description, assignees, status, priority, due date, start date, and more.
list_idstringrequiredThe ID of the list to create the task innamestringrequiredThe name or title of the taskdescriptionstringoptionalPlain text description of the taskdue_dateintegeroptionalDue date as Unix timestamp in millisecondsnotify_allbooleanoptionalWhen true, notifies task creator and all assignees/watchersparentstringoptionalID of a parent task to create this as a subtaskpriorityintegeroptionalPriority level: 1 (urgent), 2 (high), 3 (normal), 4 (low)start_dateintegeroptionalStart date as Unix timestamp in millisecondsstatusstringoptionalThe status of the task (must match a status in the list)clickup_task_create_from_template#Create a new ClickUp task using an existing task template. The template must be added to your workspace before use.3 params
Create a new ClickUp task using an existing task template. The template must be added to your workspace before use.
list_idstringrequiredThe ID of the list where the task will be creatednamestringrequiredThe name for the new task being created from the templatetemplate_idstringrequiredThe ID of the task template to useclickup_task_delete#Permanently delete a ClickUp task by task ID. This action cannot be undone.1 param
Permanently delete a ClickUp task by task ID. This action cannot be undone.
task_idstringrequiredThe unique identifier of the task to deleteclickup_task_get#Retrieve details of a specific ClickUp task by task ID. Returns task properties, assignees, status, dates, and custom fields.3 params
Retrieve details of a specific ClickUp task by task ID. Returns task properties, assignees, status, dates, and custom fields.
task_idstringrequiredThe unique identifier of the taskinclude_markdown_descriptionbooleanoptionalReturn task description in Markdown formatinclude_subtasksbooleanoptionalInclude subtasks in the responseclickup_task_list#Retrieve tasks from a specific ClickUp list. Supports filtering by status, assignee, tags, and date ranges. Returns up to 100 tasks per page.7 params
Retrieve tasks from a specific ClickUp list. Supports filtering by status, assignee, tags, and date ranges. Returns up to 100 tasks per page.
list_idstringrequiredThe ID of the list to retrieve tasks fromarchivedbooleanoptionalReturn archived tasksinclude_closedbooleanoptionalInclude closed tasks in the resultsorder_bystringoptionalField to sort tasks by: id, created, updated, or due_datepageintegeroptionalPage number for pagination (starts at 0)reversebooleanoptionalDisplay results in reverse ordersubtasksbooleanoptionalInclude subtasks in the resultsclickup_task_members_list#Retrieve Workspace members who have access to a specific ClickUp task.1 param
Retrieve Workspace members who have access to a specific ClickUp task.
task_idstringrequiredTask IDclickup_task_search#Search and filter tasks across an entire ClickUp workspace (team). Supports filtering by spaces, lists, folders, statuses, assignees, tags, and date ranges.8 params
Search and filter tasks across an entire ClickUp workspace (team). Supports filtering by spaces, lists, folders, statuses, assignees, tags, and date ranges.
team_idstringrequiredThe workspace (team) ID to search tasks withindue_date_gtintegeroptionalFilter tasks with due date greater than this Unix timestamp in millisecondsdue_date_ltintegeroptionalFilter tasks with due date less than this Unix timestamp in millisecondsinclude_closedbooleanoptionalInclude closed tasks in the resultsorder_bystringoptionalSort field: id, created, updated, or due_datepageintegeroptionalPage number for pagination (starts at 0)reversebooleanoptionalDisplay results in reverse ordersubtasksbooleanoptionalInclude subtasks in the resultsclickup_task_update#Update an existing ClickUp task. Supports updating name, description, status, priority, due date, start date, and other fields.9 params
Update an existing ClickUp task. Supports updating name, description, status, priority, due date, start date, and other fields.
task_idstringrequiredThe unique identifier of the task to updatearchivedbooleanoptionalSet to true to archive the taskdescriptionstringoptionalUpdated task description. Use a space character to clear the description.due_dateintegeroptionalDue date as Unix timestamp in millisecondsnamestringoptionalNew name for the taskpriorityintegeroptionalPriority level: 1 (urgent), 2 (high), 3 (normal), 4 (low)start_dateintegeroptionalStart date as Unix timestamp in millisecondsstatusstringoptionalNew status for the tasktime_estimateintegeroptionalTime estimate in millisecondsclickup_time_entries_list#Retrieve time entries within a date range for a ClickUp Workspace.9 params
Retrieve time entries within a date range for a ClickUp Workspace.
team_idstringrequiredWorkspace IDassigneeintegeroptionalFilter by user IDend_dateintegeroptionalEnd date (Unix ms)folder_idintegeroptionalFilter by folder IDis_billablebooleanoptionalFilter by billable statuslist_idintegeroptionalFilter by list IDspace_idintegeroptionalFilter by space IDstart_dateintegeroptionalStart date (Unix ms)task_idstringoptionalFilter by task IDclickup_time_entry_create#Log a time entry for a task in a ClickUp Workspace.7 params
Log a time entry for a task in a ClickUp Workspace.
durationintegerrequiredDuration in millisecondsstartintegerrequiredStart timestamp (Unix ms)team_idstringrequiredWorkspace IDassigneeintegeroptionalUser ID to assign entry tobillablebooleanoptionalMark as billabledescriptionstringoptionalTime entry descriptiontidstringoptionalTask ID to associate withclickup_user_get#Retrieve the details of the authenticated ClickUp user account.0 params
Retrieve the details of the authenticated ClickUp user account.
clickup_view_tasks_list#Retrieve all tasks in a specific ClickUp view.2 params
Retrieve all tasks in a specific ClickUp view.
view_idstringrequiredView IDpageintegeroptionalPage number (starts at 0)clickup_webhook_create#Create a new webhook in a ClickUp workspace to monitor specific events. Use '*' for the events field to subscribe to all events.6 params
Create a new webhook in a ClickUp workspace to monitor specific events. Use '*' for the events field to subscribe to all events.
endpointstringrequiredThe URL that will receive webhook payloadseventsstringrequiredComma-separated list of events to subscribe to, or '*' for all eventsteam_idstringrequiredThe workspace (team) IDlist_idintegeroptionalFilter webhook to a specific list IDspace_idintegeroptionalFilter webhook to a specific space IDtask_idstringoptionalFilter webhook to a specific task IDclickup_webhook_delete#Delete a ClickUp webhook, stopping it from monitoring events. This action cannot be undone.1 param
Delete a ClickUp webhook, stopping it from monitoring events. This action cannot be undone.
webhook_idstringrequiredThe unique identifier (UUID) of the webhook to deleteclickup_webhook_get_all#Retrieve all webhooks created via the API for a ClickUp workspace. Only returns webhooks created by the authenticated user.1 param
Retrieve all webhooks created via the API for a ClickUp workspace. Only returns webhooks created by the authenticated user.
team_idstringrequiredThe workspace (team) IDclickup_webhook_update#Update an existing ClickUp webhook. Change the endpoint URL, subscribed events, or webhook status.4 params
Update an existing ClickUp webhook. Change the endpoint URL, subscribed events, or webhook status.
endpointstringrequiredNew destination URL for the webhookeventsstringrequiredEvents to subscribe to, or '*' for all eventsstatusstringrequiredStatus of the webhook (active or inactive)webhook_idstringrequiredThe unique identifier (UUID) of the webhook to updateclickup_workspace_members_list#Retrieve all members in a ClickUp Workspace.1 param
Retrieve all members in a ClickUp Workspace.
team_idstringrequiredWorkspace IDclickup_workspace_seats_get#Retrieve seat utilization data for a ClickUp Workspace, showing member and guest seat counts.1 param
Retrieve seat utilization data for a ClickUp Workspace, showing member and guest seat counts.
team_idstringrequiredWorkspace IDclickup_workspaces_list#Retrieve all ClickUp Workspaces available to the authenticated user.0 params
Retrieve all ClickUp Workspaces available to the authenticated user.