Reference · Tools
ClickUp Trigger
Starts workflow when ClickUp events occur (tasks created, updated, deleted, comments, folders, goals, etc.)
The ClickUp Trigger node starts a workflow the moment something happens in your ClickUp workspace — a task is created, a comment is posted, a goal changes, and more. It uses ClickUp's webhook system and verifies each incoming request via HMAC SHA-256 signature. A common use case is automatically notifying a Slack channel or creating a record in a database whenever a task in a specific list is marked complete.
- Node type
- Webhook trigger
- Parameters
- 3
- Outputs
- Output
- Credentials
- ClickUp API
ClickUp Trigger
Trigger workflows from ClickUp events
Overview
The ClickUp Trigger node listens for webhook events from a ClickUp workspace. It can be configured to trigger on specific events such as task creation, task updates, task deletion, comments, folder changes, goal changes, and more. The incoming webhook payload contains full event details including the affected resource ID, event type, and history entries describing what changed. Supports filtering by space, folder, list, or task ID. Verifies webhook authenticity via HMAC SHA-256 signature.
Category: Productivity
Tool Name: clickup_trigger
Version: 1
Appearance: Icon: si-clickup | Color: #7b68ee
Node Type
Trigger — webhook (receives incoming HTTP callbacks)
Input / Output
| Direction | Port(s) |
|---|---|
| Input | None (trigger node) |
| Output | Output |
Credentials
This tool requires ClickUp API credentials. See the Credentials Guide for setup instructions.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Team ID | string | Yes | — | The ClickUp team (workspace) ID. Find this in your ClickUp workspace settings or via the ClickUp API. |
| Events | multiOptions | Yes | [] | Which ClickUp events to listen for. Select * to receive all events. |
Options: * (All Events), folderCreated, folderDeleted, folderUpdated, goalCreated, goalDeleted, goalUpdated, keyResultCreated, keyResultDeleted, keyResultUpdated, listCreated, listDeleted, listUpdated, spaceCreated, spaceDeleted, spaceUpdated, taskAssigneeUpdated, taskCommentPosted, taskCommentUpdated, taskCreated, taskDeleted, taskDueDateUpdated, taskMoved, taskStatusUpdated, taskTagUpdated, taskTimeEstimateUpdated, taskTimeTrackedUpdated, taskUpdated | ||||
| Filters | collection | No | {} | Optionally scope the webhook to a specific space, folder, list, or task. |
| — Folder ID | string | No | — | Only receive events for this folder |
| — List ID | string | No | — | Only receive events for this list |
| — Space ID | string | No | — | Only receive events for this space |
| — Task ID | string | No | — | Only receive events for this task |
Output Data
Each delivery from ClickUp produces one output item. The webhook payload is copied onto the item unchanged, and three fields are added:
_trigger— alwaysclickup_webhook_timestamp— ISO 8601 timestamp of when the request arrived_webhookEvent— the ClickUp event name, taken from the payload’seventfield
The ClickUp payload itself carries:
event— the event name, e.g.taskCreatedwebhook_id— the ID of the ClickUp webhook that delivered the eventtask_id— the affected task, on task eventshistory_items— an array of change entries, each withfield,before,after,date, anduser
Reference the payload downstream by expression, e.g. {{ $json.task_id }} or {{ $json.history_items[0].after.status }}.
Usage Examples
- Start a workflow when a new task is created in ClickUp
- Trigger an automation when a ClickUp task status changes
- Run a workflow when someone comments on a ClickUp task
- Automate actions when a ClickUp folder or list is updated
- Listen for ClickUp goal progress updates
Example Configuration
Listen for all task-related events across the entire workspace:
{
"type": "clickup_trigger",
"typeVersion": 1,
"position": [0, 0],
"parameters": {
"team": "1234567",
"events": ["taskCreated", "taskUpdated", "taskDeleted"]
}
}
Listen for all events but only within a specific space:
{
"type": "clickup_trigger",
"typeVersion": 1,
"position": [0, 0],
"parameters": {
"team": "1234567",
"events": ["*"],
"filters": {
"spaceId": "space_123456"
}
}
}
Listen for comment events only within a specific list:
{
"type": "clickup_trigger",
"typeVersion": 1,
"position": [0, 0],
"parameters": {
"team": "1234567",
"events": ["taskCommentPosted", "taskCommentUpdated"],
"filters": {
"listId": "list_789012"
}
}
}
Monitor all events for a specific task:
{
"type": "clickup_trigger",
"typeVersion": 1,
"position": [0, 0],
"parameters": {
"team": "1234567",
"events": ["*"],
"filters": {
"taskId": "task_345678"
}
}
}
Monitor task status changes and assignments in a specific folder:
{
"type": "clickup_trigger",
"typeVersion": 1,
"position": [0, 0],
"parameters": {
"team": "1234567",
"events": ["taskStatusUpdated", "taskAssigneeUpdated", "taskDueDateUpdated"],
"filters": {
"folderId": "folder_456789"
}
}
}
Monitor all goal and key result events:
{
"type": "clickup_trigger",
"typeVersion": 1,
"position": [0, 0],
"parameters": {
"team": "1234567",
"events": ["goalCreated", "goalUpdated", "goalDeleted", "keyResultCreated", "keyResultUpdated", "keyResultDeleted"]
}
}
Track organizational changes to spaces, folders, and lists:
{
"type": "clickup_trigger",
"typeVersion": 1,
"position": [0, 0],
"parameters": {
"team": "1234567",
"events": ["spaceCreated", "spaceUpdated", "spaceDeleted", "folderCreated", "folderUpdated", "folderDeleted", "listCreated", "listUpdated", "listDeleted"]
}
}
Monitor time-related updates in a specific space:
{
"type": "clickup_trigger",
"typeVersion": 1,
"position": [0, 0],
"parameters": {
"team": "1234567",
"events": ["taskTimeEstimateUpdated", "taskTimeTrackedUpdated"],
"filters": {
"spaceId": "space_987654"
}
}
}
Trigger Behavior
- Activation: When the workflow is activated, a webhook endpoint is registered with the service.
- Deactivation: The webhook is automatically unregistered when the workflow is deactivated.
- Payload: The incoming webhook payload is parsed and output as workflow items.
- Verification: Supports signature verification where applicable.
Tips
Receives webhook events from ClickUp. Configure which events to listen for (task created, updated, deleted, comments, folders, goals, etc.). Optionally filter by space, folder, list, or task ID. The webhook payload includes the event type, affected resource, and change history.
Key Notes
- The
teamparameter is always required and represents your ClickUp workspace ID - Use
"*"in theeventsarray to listen for all available events - Filter parameters are completely optional but help reduce noise by limiting events to specific organizational units
- The
filtersobject uses a flat structure — all filter fields are direct properties of thefiltersobject
Frequently asked questions
What credential do I need, and where do I find it?
The node requires a ClickUp API credential (type: clickupApi). You also need your ClickUp workspace ID, which maps to the required `team` parameter — this must always be provided, regardless of which events you are subscribing to. You can find your workspace ID in ClickUp's settings or from the URL when viewing your workspace.
How do I listen for every ClickUp event without listing them one by one?
Set the `events` array to `["*"]` to subscribe to all available ClickUp webhook events at once. This is useful when you want a single trigger to catch anything that happens in your workspace and then branch the workflow based on the event type found in the payload.
The trigger is firing for events I don't care about. How do I reduce the noise?
Use the optional filter parameters to scope the webhook to a specific space, folder, list, or task ID. All filter fields sit as direct properties of a flat `filters` object — there are no nested sub-objects. For example, providing a list ID means the trigger only fires for events that occur within that list, ignoring everything else in the workspace.
What does the webhook payload actually contain?
Each incoming payload includes the event type (e.g. `taskCreated`, `taskUpdated`), the ID of the affected resource, and history entries that describe exactly what changed. This means for update events you can inspect the before/after values directly in the payload without making a follow-up API call.
How does the node verify that an incoming webhook is genuinely from ClickUp?
The node validates each request using an HMAC SHA-256 signature, which ClickUp sends with every webhook delivery. This happens automatically — you do not need to add a separate verification step in your workflow. Requests that fail signature verification are rejected before your workflow runs.
Build with the ClickUp Trigger node
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need ClickUp API credentials first.
Open BusyBotLast updated . Spotted something wrong? Tell us.