This workflow corresponds to n8n.io template #6546 — we link there as the canonical source.
This workflow follows the Agent → OpenAI Chat recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"meta": {
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "f692d05d-839b-4975-93ce-cd16582eb2fc",
"name": "Telegram Bot Receives Message",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
80,
-96
],
"parameters": {
"updates": [
"message"
],
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "ae472b5f-a380-4eef-9985-a09c76601b9c",
"name": "Ignore Bot Messages",
"type": "n8n-nodes-base.if",
"position": [
304,
-96
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "b4b9d960-c121-49d9-95e2-b699e1127ccd",
"operator": {
"type": "number",
"operation": "notEquals"
},
"leftValue": "={{ $json.message.reply_to_message.from.id }}",
"rightValue": 8453959426
}
]
}
},
"typeVersion": 2.2
},
{
"id": "13735844-9e30-482b-b78a-58985bea08db",
"name": "Send User Confirmation Message",
"type": "n8n-nodes-base.telegramTool",
"position": [
912,
320
],
"parameters": {
"text": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Text', ``, 'string') }}",
"chatId": "={{ $('Telegram Bot Receives Message').item.json.message.chat.id }}",
"descriptionType": "manual",
"toolDescription": "After a task is created in ClickUp, send a message to let the user know",
"additionalFields": {
"appendAttribution": false,
"reply_to_message_id": "={{ $('Telegram Bot Receives Message').item.json.message.message_id }}"
}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "63726bc9-f304-422c-9a09-5945486d7b8e",
"name": "AI Agent: Create Task or Follow Up",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
832,
-112
],
"parameters": {
"text": "=Current Datetime: {{ $now.minus(1, 'days').setZone('America/Toronto') }}\nUser First Name: {{ $json.message.chat.first_name }}\n{{ $json.message.text }}",
"options": {
"systemMessage": "You are a helpful assistant. Your goal is to create, update or delete tasks in ClickUp for the user. Please follow the detailed instructions below:\n\nDetailed Instructions - Create a New Task: \n1. Please create a blank task in ClickUp using the create task tool. Remember to keep a note of the task ID returned by ClickUp so you can update this task in the future.\n2. If you are using dates, please convert to UTC before sending to ClickUp\n3. Update the task details using the update tool \n4. If you need more information, use the telegram tool to ask for more information. \n\nDetailed Instructions - Update an Existing Task: \n1. If you don't already have the task ID, use the \u201cfind task\u201d tool to find the task ID of the task you want to update in ClickUp\n2. Update the details, as requested by the user\n\nDetailed Instructions - Delete a Task: \n1. If you don't already have the task ID, use the \u201cfind task\u201d tool to find the task ID of the task you want to delete in ClickUp\n2. Please be careful with deleting tasks, if you are unsure, send the user a message and ask them to confirm the task is correct before deleting\n\nImportant: Always send the user a confirmation of the changes that have been made in clickup, or if no changes have been made\n\nIf you need to communicate with the user for any reason, such as providing info or asking for info, send a message using the communicate tool"
},
"promptType": "define"
},
"typeVersion": 1.9
},
{
"id": "a9c2661e-2bff-478e-ad96-845081b115dc",
"name": "OpenAI Chat Model1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
528,
128
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "7723dbdc-f266-4c72-a30d-52a9d2a2857b",
"name": "Create A Blank Task in ClickUp",
"type": "n8n-nodes-base.clickUpTool",
"position": [
1168,
128
],
"parameters": {
"list": "901406981487",
"name": "New Task",
"team": "9014464478",
"space": "90141755852",
"folder": "90144781876",
"authentication": "oAuth2",
"descriptionType": "manual",
"toolDescription": "n8n does not allow you to choose the task name on creation, so this tool will create a task with a generic name. Pleae note the task Id so you can update the name",
"additionalFields": {}
},
"credentials": {
"clickUpOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "b2437311-3c97-4ec3-8df2-721ce782c760",
"name": "Find a Task in ClickUp",
"type": "n8n-nodes-base.clickUpTool",
"position": [
1328,
128
],
"parameters": {
"list": "901406981487",
"team": "9014464478",
"space": "90141755852",
"folder": "90144781876",
"filters": {},
"operation": "getAll",
"returnAll": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}",
"authentication": "oAuth2"
},
"credentials": {
"clickUpOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "8e70d57a-b5af-49b9-8d55-0b367c9fde15",
"name": "Update a Task in ClickUp",
"type": "n8n-nodes-base.clickUpTool",
"position": [
1168,
320
],
"parameters": {
"id": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Task_ID', ``, 'string') }}",
"operation": "update",
"updateFields": {
"name": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Name', ``, 'string') }}",
"status": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Status', ``, 'string') }}",
"content": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Content', ``, 'string') }}",
"dueDate": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Due_Date', ``, 'string') }}",
"priority": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Priority', ``, 'number') }}",
"dueDateTime": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Due_Date_Time', ``, 'boolean') }}"
},
"authentication": "oAuth2"
},
"credentials": {
"clickUpOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "d336f3be-c0c0-4e06-a2a0-d7d83500c814",
"name": "Communicate with User",
"type": "n8n-nodes-base.telegramTool",
"position": [
912,
128
],
"parameters": {
"text": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Text', ``, 'string') }}",
"chatId": "={{ $('Telegram Bot Receives Message').item.json.message.chat.id }}",
"descriptionType": "manual",
"toolDescription": "If you need to communicate with the user for any reason, such as providing info or asking for info, send a message using this tool",
"additionalFields": {
"appendAttribution": false,
"reply_to_message_id": "={{ $('Telegram Bot Receives Message').item.json.message.message_id }}"
}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "a0a68d35-3bf3-49f3-bc55-a2cb98228010",
"name": "Simple Memory",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
688,
128
],
"parameters": {
"sessionKey": "={{ $json.message.chat.id }}",
"sessionIdType": "customKey"
},
"typeVersion": 1.3
},
{
"id": "9b9c3096-b2d6-45dc-b264-7725a05f8a03",
"name": "Delete a task in ClickUp",
"type": "n8n-nodes-base.clickUpTool",
"position": [
1328,
320
],
"parameters": {
"id": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Task_ID', ``, 'string') }}",
"operation": "delete",
"authentication": "oAuth2"
},
"credentials": {
"clickUpOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "f6f86b82-5197-4402-9ab9-38c9e82a6a7f",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-688,
-496
],
"parameters": {
"width": 660,
"height": 1908,
"content": "## Automatically Manage ClickUp Tasks Using a Telegram Bot\n\n## \ud83d\udccc What It Does \nThis workflow connects a Telegram bot with your ClickUp workspace, allowing you to **create**, **read**, **update**, and **delete** tasks just by sending a message. The AI agent interprets natural language commands and takes the appropriate action \u2014 all without needing to open ClickUp.\n\nIt\u2019s like having a personal assistant inside Telegram that manages your task list for you.\n\n## \u2705 Prerequisites \nTo use this workflow, you'll need the following credentials set up in n8n:\n- **Telegram Bot API Credential** (used in all Telegram nodes) \n- **ClickUp OAuth2 Credential** (for task operations) \n- **OpenAI Credential** (to power the AI agent that parses your commands)\n\n## \u26a0\ufe0f Before First Use \nMake sure to **add your bot's user ID** to the `Ignore Bot Messages` node. \nThis prevents infinite loops caused by the bot responding to its own messages.\n\nIf you're unsure of your bot's ID:\n1. Temporarily disable the two Telegram tool nodes connected to the AI Agent.\n2. Send a test message from the bot and capture its ID.\n3. Add that ID to the ignore filter, then re-enable the nodes.\n\n## \u2699\ufe0f How It Works \n1. **Trigger:** The workflow starts when your Telegram bot receives a message. \n2. **Ignore Self:** If the message was sent by the bot itself, the workflow stops. \n3. **AI Analysis:** The message is passed to an AI agent (OpenAI) that determines what action to take. \n4. **Decision Tree:**\n - \ud83d\udccc Create a new task in ClickUp \n - \u270f\ufe0f Update an existing task \n - \ud83d\udd0d Find a task and return its details \n - \ud83d\uddd1\ufe0f Delete a task \n - \u2753 Ask for more details if input is unclear \n - \u2705 Send confirmation or feedback to the user \n\n## \ud83d\udca1 Example Use Cases \n- \u201cAdd a task called \u2018Follow up with supplier\u2019 for tomorrow.\u201d \n- \u201cWhat tasks are due this week?\u201d \n- \u201cUpdate the task \u2018Website Launch\u2019 to \u2018in progress\u2019.\u201d \n- \u201cDelete the task \u2018Old client notes\u2019.\u201d \n\nThis workflow is ideal for solo operators, remote teams, or anyone who wants to manage ClickUp while on the go \u2014 without switching apps.\n\n## \ud83d\udee0\ufe0f Setup Instructions \n1. **Telegram Bot:**\n - Create a Telegram bot using BotFather \n - Add your **Telegram credential** to all Telegram nodes in this workflow \n2. **Bot ID Filter:**\n - Add your **bot\u2019s Telegram user ID** to the `Ignore Bot Messages` node \n3. **OpenAI Setup:**\n - Add your **OpenAI credential** to the AI Agent node \n4. **ClickUp Integration:**\n - Connect your **ClickUp credential** \n - Set your **workspace, list, and folder IDs** in the task creation and search nodes \n\n## \ud83d\ude80 How to Use \n1. Save the Telegram bot to your contacts \n2. Open the Telegram chat with your bot and send a message like: \n `\"Add a task to follow up with invoices every Friday\"` \n3. The bot will reply with confirmation or ask for clarification \n4. The task will appear in your ClickUp workspace within seconds \n\n## \ud83d\udd27 Customization Options \n- Add new intents to the AI agent to support more actions (e.g., time tracking or comments) \n- Customize the bot\u2019s responses for branding or tone \n- Add notifications or reminders using additional Telegram nodes \n\n## \u2728 Why It's Useful \nThis workflow eliminates the friction of switching between Telegram and your task manager. It reduces manual data entry, saves time, and gives you a simple way to manage your to-do list using natural language \u2014 even on mobile.\n\nPerfect for freelancers, managers, or team leads who want a faster, more intuitive way to stay organized.\n"
},
"typeVersion": 1
},
{
"id": "93756fcc-d0e0-4cd3-81ce-6a5e378aea4a",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
224,
-240
],
"parameters": {
"color": 3,
"width": 256,
"height": 320,
"content": "## \u26a0\ufe0f Warning\nPlease configure this node using the instructions in `Before First Use` to avoid infinite loops"
},
"typeVersion": 1
},
{
"id": "672c3389-daf4-4df5-b26e-d70c73509b73",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1488,
128
],
"parameters": {
"color": 7,
"width": 304,
"height": 144,
"content": "## \ud83d\udccc ClickUp Setup\nBefore running this workflow, make sure to configure your ClickUp **workspace**, **folder**, **list**, and other required fields in the relevant nodes."
},
"typeVersion": 1
},
{
"id": "17a2c5ab-b6f5-4379-82b1-1974fbd0d390",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
1488,
320
],
"parameters": {
"width": 304,
"height": 144,
"content": "## \u26a0\ufe0f Caution: Delete Node\nThis node will **permanently delete tasks** in ClickUp. If you're testing or unsure, consider disabling or deleting this node to avoid accidental data loss."
},
"typeVersion": 1
}
],
"connections": {
"Simple Memory": {
"ai_memory": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "ai_memory",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Ignore Bot Messages": {
"main": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "main",
"index": 0
}
]
]
},
"Communicate with User": {
"ai_tool": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "ai_tool",
"index": 0
}
]
]
},
"Find a Task in ClickUp": {
"ai_tool": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "ai_tool",
"index": 0
}
]
]
},
"Delete a task in ClickUp": {
"ai_tool": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "ai_tool",
"index": 0
}
]
]
},
"Update a Task in ClickUp": {
"ai_tool": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "ai_tool",
"index": 0
}
]
]
},
"Telegram Bot Receives Message": {
"main": [
[
{
"node": "Ignore Bot Messages",
"type": "main",
"index": 0
}
]
]
},
"Create A Blank Task in ClickUp": {
"ai_tool": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "ai_tool",
"index": 0
}
]
]
},
"Send User Confirmation Message": {
"ai_tool": [
[
{
"node": "AI Agent: Create Task or Follow Up",
"type": "ai_tool",
"index": 0
}
]
]
},
"AI Agent: Create Task or Follow Up": {
"main": [
[]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
clickUpOAuth2ApiopenAiApitelegramApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
This workflow connects a Telegram bot with your ClickUp workspace, allowing you to create, read, update, and delete tasks just by sending a message. The AI agent interprets natural language commands and takes the appropriate action — all without needing to open ClickUp.
Source: https://n8n.io/workflows/6546/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Automate your personal productivity with this intelligent n8n workflow that integrates Telegram, Google Sheets, and OpenAI (GPT-4o). This system uses multiple AI agents to manage work hours, tasks, fi
QuantumDefender AI is a next-generation intelligent cybersecurity assistant designed to harness the symbolic strength of quantum computing’s promise alongside cutting-edge AI capabilities. This sophis
Agentic Telegram AI bot with LangChain nodes and new tools. Uses lmChatOpenAi, memoryBufferWindow, telegramTrigger, stickyNote. Event-driven trigger; 8 nodes.
Create a Telegram bot that combines advanced AI functionalities with LangChain nodes and new tools.
Digital marketers, content creators, social media managers, and businesses who want to use AI marketing automation for YouTube Shorts without spending hours on production. This AI workflow helps anyon