{"workflow":{"id":12359,"name":"Auto-reply to Telegram messages using BrowserAct and Google Gemini","views":46,"recentViews":0,"totalViews":46,"createdAt":"2026-01-01T06:56:42.915Z","description":"# Auto-reply to Telegram messages using BrowserAct & Google Gemini\n\nThis workflow acts as a smart, 24/7 personal assistant for your Telegram chats. It runs on a schedule to monitor your message history, uses AI to decide if a reply is necessary, drafts a personalized response, and sends it back to the user, all while handling delivery verification and potential CAPTCHA challenges via BrowserAct.\n\n## Target Audience\nCommunity managers, busy professionals, and customer support teams who need to manage Telegram communications efficiently.\n\n## How it works\n1. **Scheduled Check**: Every 15 minutes, the workflow triggers **BrowserAct** to fetch the latest chat history.\n2. **Analysis**: An **AI Agent** (using Google Gemini) reviews the conversation. It determines if the last message requires a response (e.g., a question) or if the chat is idle.\n3. **Drafting**: If a reply is needed, the AI drafts a personalized message that includes the user's name and a standard footer disclaimer.\n4. **Formatting**: A Code node cleans up the text to ensure proper line breaks and formatting for Telegram.\n5. **Delivery**: **BrowserAct** executes the task to send the drafted reply. The workflow loops to check the task status, ensuring the message is delivered successfully.\n\n## How to set up\n1. **Configure Credentials**: Connect your **BrowserAct** and **Google Gemini** accounts in n8n.\n2. **Prepare BrowserAct**: Ensure the **Telegram Personal Assistant** template is saved in your BrowserAct account.\n3. **Set Schedule**: The default trigger interval is 15 minutes. Adjust the **Schedule Trigger** node if you need a different frequency.\n4. **Activate**: Turn on the workflow to start monitoring your chats.\n\n## Requirements\n* **BrowserAct** account with the **Telegram Personal Assistant** template.\n* **Google Gemini** account.\n* **Telegram** account (accessed via BrowserAct).\n\n## How to customize the workflow\n1. **Change AI Persona**: Modify the system prompt in the **Chatting & Answering AI** agent to change the tone from \"Professional Support\" to \"Casual Assistant\" or \"Sales Representative.\"\n2. **Adjust Frequency**: Change the **Schedule Trigger** interval to run every 5 minutes for faster responses or hourly for less urgency.\n3. **Add Notification**: Add a **Slack** or **Email** node after the delivery step to get notified whenever the bot sends a reply.\n\n## Need Help?\n* [How to Find Your BrowserAct API Key & Workflow ID](https://www.youtube.com/watch?v=pDjoZWEsZlE)\n* [How to Connect n8n to BrowserAct](https://www.youtube.com/watch?v=RoYMdJaRdcQ)\n* [How to Use & Customize BrowserAct Templates](https://www.youtube.com/watch?v=CPZHFUASncY)\n\n---\n### Workflow Guidance and Showcase Video\n\n* #### [Telegram Personal Assistant: Auto-Read Chats & Auto-Reply them with n8n](https://youtu.be/iTp4LhhjCiQ)\n\n\n","workflow":{"id":"Mlrl2mzp2YtbMQMW","meta":{"instanceId":"6fcb279fd6b00187153abdc6d8b627acfd9fe31f84b387f64b56a0996e8ea182"},"name":"Auto-reply to Telegram messages using BrowserAct & Google Gemini","tags":[],"nodes":[{"id":"6b2a7654-3d7d-4b93-ac03-0cceb7351369","name":"Loop Over Items","type":"n8n-nodes-base.splitInBatches","position":[-848,384],"parameters":{"options":{}},"typeVersion":3},{"id":"bd8d3616-6bdb-451e-8aa7-330fcb3d58e0","name":"Structured Output","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[-496,304],"parameters":{"autoFix":true,"jsonSchemaExample":"{\n  \"name\": \"BrowserAct 🐈‍⬛\",\n  \"type\": \"answer\",\n  \"Answer\": \"Yes, BrowserAct 🐈‍⬛, I can certainly help you. What do you need?\\n\\n[This is an automated bot and will answer every 15 minutes]\"\n}"},"typeVersion":1.3},{"id":"304fd4f9-7381-475a-af67-7152c89b8421","name":"Human Verification Switch","type":"n8n-nodes-base.switch","position":[-1824,400],"parameters":{"rules":{"values":[{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"cea414f0-feaa-4012-9826-9feaf49d3e40","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.status }}","rightValue":"finished"}]}},{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"cf3a1ab6-d5dc-4641-b3d7-7e8471fe502a","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.status }}","rightValue":"paused"}]}}]},"options":{}},"typeVersion":3.4},{"id":"fb70f68d-fae9-41dd-932f-ea33a366097f","name":"Every 15 minutes","type":"n8n-nodes-base.scheduleTrigger","position":[-2224,400],"parameters":{"rule":{"interval":[{"field":"minutes","minutesInterval":15}]}},"typeVersion":1.3},{"id":"4de3aa32-c759-4c4d-8b3b-623652d22373","name":"Read Telegram Message","type":"n8n-nodes-browseract.browserAct","position":[-2048,400],"parameters":{"type":"WORKFLOW","workflowId":"69828791477180147","workflowConfig":{"value":{},"schema":[{"id":"input-Telegram","type":"string","display":true,"removed":true,"required":false,"description":"If left blank, the default value defined in BrowserAct will be used.","displayName":"Telegram","defaultMatch":true}],"mappingMode":"defineBelow","matchingColumns":["input-Telegram"],"attemptToConvertTypes":false,"convertFieldsToString":false},"open_incognito_mode":false},"credentials":{"browserActApi":{"id":"G1U5ih38TKU5wcI5","name":"BrowserAct account"}},"typeVersion":1},{"id":"5ec5dde5-f00f-409c-8eed-72d6be43f1b1","name":"Give Time to Complete Verification","type":"n8n-nodes-base.wait","position":[-1600,288],"webhookId":"ae013ba1-14de-4b79-bf00-188fca36e927","parameters":{"unit":"minutes"},"typeVersion":1.1},{"id":"8a63c0b3-4564-401c-a91d-3de73cc31e3a","name":"Get Data From BrowserAct","type":"n8n-nodes-base.httpRequest","position":[-1376,288],"parameters":{"url":"https://api.browseract.com/v2/workflow/get-task","options":{},"sendQuery":true,"authentication":"predefinedCredentialType","queryParameters":{"parameters":[{"name":"task_id","value":"={{ $('Read Telegram Message').item.json.id }}"}]},"nodeCredentialType":"browserActApi"},"credentials":{"browserActApi":{"id":"G1U5ih38TKU5wcI5","name":"BrowserAct account"}},"typeVersion":4.3},{"id":"c35ac544-95f4-4a40-aa03-4794aa6bf261","name":"Splitting Extracted Items","type":"n8n-nodes-base.code","position":[-1152,384],"parameters":{"jsCode":"// Get the JSON string using the exact path provided by the user.\nconst jsonString = $input.first().json.output.string;\n\nlet parsedData;\n\n// Check if the string exists before attempting to parse\nif (!jsonString) {\n    // Return an empty array or throw an error if no string is found\n    // Throwing an error is usually better to stop the workflow if data is missing.\n    throw new Error(\"Input string is empty or missing at the specified path: $input.first().json.output.string\");\n}\n\ntry {\n    // 1. Parse the JSON string into a JavaScript array of objects\n    parsedData = JSON.parse(jsonString);\n} catch (error) {\n    // Handle JSON parsing errors (e.g., if the string is malformed)\n    throw new Error(`Failed to parse JSON string: ${error.message}`);\n}\n\n// 2. Ensure the parsed data is an array\nif (!Array.isArray(parsedData)) {\n    throw new Error('Parsed data is not an array. It cannot be split into multiple items.');\n}\n\n// 3. Map the array of objects into the n8n item format { json: object }\n// Each element in this array will be treated as a new item by n8n, achieving the split.\nconst outputItems = parsedData.map(item => ({\n    json: item,\n}));\n\n// 4. Return the new array of items\nreturn outputItems;"},"typeVersion":2},{"id":"89f4899a-ed8a-47fd-911e-1df12f6c25f7","name":"Generate Answers for Messages","type":"@n8n/n8n-nodes-langchain.agent","position":[-576,80],"parameters":{"text":"=Name : {{ $json.Name }},\nLast Message : {{ $json.Last }},\nUser Chat history : {{ $json.UserHistory }}\nBot Rrsponse history :{{ $json.BotHistory }}","options":{"systemMessage":"You are an automated response bot designed to process user messages and return structured JSON data.\n\n**Input Format:**\nYou will receive a JSON list containing an object with:\n- `Name`: The user's name.\n- `Last`: The latest message to answer.\n- `UserHistory`: Past user messages.\n- `BotHistory`: Past bot responses.\n\n**Task Instructions:**\n1. **Analyze Necessity:** Determine if the `Last` message requires a response.\n   - If `Last` contains text/questions: Set status to \"answer\".\n   - If `Last` is empty, null, or only whitespace: Set status to \"idle\".\n2. **Personalize:** If status is \"answer\", draft a helpful response. You **MUST** mention the user's `Name` explicitly within your response text (e.g., \"Hello [Name], I see you asked...\").\n3. **Add Disclaimer:** If status is \"answer\", append this exact footer to the end of your response text: \"\\n\\n[This is an automated bot and will answer every 15 minutes]\"\n4. **Handle Idle:** If status is \"idle\", leave the answer text empty or null.\n\n**Output Format:**\nYou must return ONLY a raw JSON object (valid JSON, no markdown code blocks) with exactly these three keys:\n1. `\"name\"`: The user's name (same as input).\n2. `\"type\"`: Either \"answer\" or \"idle\".\n3. `\"Answer\"`: Your personalized response text with the footer (or null if idle).\n\n**Example 1 (Standard Reply):**\n\n*Input:*\n[ { \"Name\": \"BrowserAct 🐈‍⬛\", \"Last\": \"Can you help me?\", \"UserHistory\": \"...\", \"BotHistory\": \"...\" } ]\n\n*Output:*\n{\n  \"name\": \"BrowserAct 🐈‍⬛\",\n  \"type\": \"answer\",\n  \"Answer\": \"Yes, BrowserAct 🐈‍⬛, I can certainly help you. What do you need?\\n\\n[This is an automated bot and will answer every 15 minutes]\"\n}\n\n**Example 2 (No Input / Idle):**\n\n*Input:*\n[ { \"Name\": \"BrowserAct 🐈‍⬛\", \"Last\": \"\", \"UserHistory\": \"...\", \"BotHistory\": \"...\" } ]\n\n*Output:*\n{\n  \"name\": \"BrowserAct 🐈‍⬛\",\n  \"type\": \"idle\",\n  \"Answer\": null\n}"},"promptType":"define","hasOutputParser":true},"typeVersion":3},{"id":"41d3dd95-d1c9-49e5-819d-ed342283cd8d","name":"Check If Message Requires Response","type":"n8n-nodes-base.if","position":[-224,80],"parameters":{"options":{},"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"loose"},"combinator":"and","conditions":[{"id":"160a47f6-dec9-46bf-94c7-59894437d851","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.output.type }}","rightValue":"answer"}]},"looseTypeValidation":true},"typeVersion":2.3},{"id":"2e396381-b0fe-43f7-9cf6-907a7264ea3e","name":"Run Answering Workflow","type":"n8n-nodes-browseract.browserAct","position":[320,112],"parameters":{"type":"WORKFLOW","timeout":7200,"workflowId":"69845607081621235","workflowConfig":{"value":{"input-Name":"={{ $('Generate Answers for Messages').first().json.output.name }}","input-Answer":"={{ $json.clean_message }}"},"schema":[{"id":"input-Telegram","type":"string","display":true,"removed":true,"required":false,"description":"If left blank, the default value defined in BrowserAct will be used.","displayName":"Telegram","defaultMatch":true},{"id":"input-Name","type":"string","display":true,"removed":false,"required":false,"description":"If left blank, the default value defined in BrowserAct will be used.","displayName":"Name","defaultMatch":true},{"id":"input-Answer","type":"string","display":true,"removed":false,"required":false,"description":"If left blank, the default value defined in BrowserAct will be used.","displayName":"Answer","defaultMatch":true}],"mappingMode":"defineBelow","matchingColumns":["input-Name"],"attemptToConvertTypes":false,"convertFieldsToString":false},"open_incognito_mode":false},"credentials":{"browserActApi":{"id":"G1U5ih38TKU5wcI5","name":"BrowserAct account"}},"typeVersion":1},{"id":"1d597160-9bb9-42e4-81dc-5c335a99b85b","name":"Human Verification Switch2","type":"n8n-nodes-base.switch","position":[528,112],"parameters":{"rules":{"values":[{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"cea414f0-feaa-4012-9826-9feaf49d3e40","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.status }}","rightValue":"finished"}]}},{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"cf3a1ab6-d5dc-4641-b3d7-7e8471fe502a","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.status }}","rightValue":"paused"}]}}]},"options":{}},"typeVersion":3.4},{"id":"51fe8b67-ed5a-4f61-bad8-992f41ad8c75","name":"Give Time to Complete Verification2","type":"n8n-nodes-base.wait","position":[784,0],"webhookId":"ae013ba1-14de-4b79-bf00-188fca36e927","parameters":{"unit":"minutes"},"typeVersion":1.1},{"id":"57d26f4f-644d-41ed-a46a-5b74c21af963","name":"Get Data From BrowserAct2","type":"n8n-nodes-base.httpRequest","position":[1008,0],"parameters":{"url":"https://api.browseract.com/v2/workflow/get-task","options":{},"sendQuery":true,"authentication":"predefinedCredentialType","queryParameters":{"parameters":[{"name":"task_id","value":"={{ $('Read Telegram Message').item.json.id }}"}]},"nodeCredentialType":"browserActApi"},"credentials":{"browserActApi":{"id":"G1U5ih38TKU5wcI5","name":"BrowserAct account"}},"typeVersion":4.3},{"id":"35949fa1-894d-44a6-8da5-1baa58b633b4","name":"Wait for Workflow Completion","type":"n8n-nodes-base.wait","position":[1360,96],"webhookId":"ae013ba1-14de-4b79-bf00-188fca36e927","parameters":{"unit":"minutes"},"typeVersion":1.1},{"id":"411d2ba6-b510-45ce-b707-d659d39185e5","name":"Google Gemini","type":"@n8n/n8n-nodes-langchain.lmChatGoogleGemini","position":[-624,304],"parameters":{"options":{}},"credentials":{"googlePalmApi":{"id":"9pXYiybR74j5zn4d","name":"Google Gemini(PaLM) Api account"}},"typeVersion":1},{"id":"9aea2505-df97-4a68-b905-df2ef274097e","name":"Cleaning Output Text","type":"n8n-nodes-base.code","position":[0,112],"parameters":{"jsCode":"// Get the \"Answer\" string from the previous node\nconst rawAnswer = $input.first().json.output.Answer;\n// Fix the new lines: Replace literal \"\\n\" characters with real line breaks\nconst cleanText = rawAnswer.replace(/\\\\n/g, '\\n');\n\n// Output the clean text so the next node (Slack/Discord/Email) reads it perfectly\nreturn {\n  json: {\n    clean_message: cleanText\n  }\n};"},"typeVersion":2},{"id":"bc5a2d3b-0b3e-43df-9fd8-4320c7047401","name":"Documentation","type":"n8n-nodes-base.stickyNote","position":[-2592,-272],"parameters":{"width":380,"height":520,"content":"## ⚡ Workflow Overview & Setup\n\n**Summary:** This automation acts as an always-on customer support agent for Telegram. It checks for new messages every 15 minutes, uses AI to draft personalized responses, and replies automatically via BrowserAct.\n\n### Requirements\n* **Credentials:** Telegram, BrowserAct, Google Gemini (PaLM).\n* **Mandatory:** BrowserAct API (Template: **Telegram Personal Assistant**)\n\n### How to Use\n1.  **Credentials:** Set up your Telegram, BrowserAct, and Google Gemini credentials in n8n.\n2.  **BrowserAct Template:** Ensure you have the **TTelegram Personal Assistant** template saved in your BrowserAct account.\n3.  **Operation:** The workflow runs automatically. It reads unread messages, drafts replies using AI, and sends them back to the user.\n\n### Need Help?\n[How to Find Your BrowserAct API Key & Workflow ID](https://docs.browseract.com)\n[How to Connect n8n to BrowserAct](https://docs.browseract.com)\n[How to Use & Customize BrowserAct Templates](https://docs.browseract.com)"},"typeVersion":1},{"id":"2b8d1463-bf34-4baf-a28f-65393da1099c","name":"Step 1 Explanation","type":"n8n-nodes-base.stickyNote","position":[-2176,128],"parameters":{"color":7,"width":1132,"height":124,"content":"### 📩 Step 1: Message Retrieval\n\nThe workflow triggers every 15 minutes to fetch the latest messages from Telegram via BrowserAct. It scrapes the chat history to understand the context of each user interaction."},"typeVersion":1},{"id":"81769b9a-722e-4606-831b-557272c03f62","name":"Step 2 Explanation","type":"n8n-nodes-base.stickyNote","position":[-880,-64],"parameters":{"color":7,"width":1004,"height":108,"content":"### 🧠 Step 2: AI Response Drafting\n\nAn AI agent analyzes the retrieved messages to determine if a response is needed. If the user asked a question, it drafts a personalized, helpful reply, ensuring to include a disclaimer that it is an automated bot."},"typeVersion":1},{"id":"ed5b3990-a679-4648-9dd7-eebdef8984ce","name":"Step 3 Explanation","type":"n8n-nodes-base.stickyNote","position":[320,-144],"parameters":{"color":7,"width":1180,"height":108,"content":"### 🤖 Step 3: Automated Reply\n\nOnce a response is drafted and cleaned, BrowserAct is triggered again to type and send the message directly in the Telegram web interface, simulating a human agent's behavior."},"typeVersion":1},{"id":"811257f4-8b38-4526-b7f2-32b27a82a395","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-2176,-272],"parameters":{"color":6,"width":640,"height":368,"content":"@[youtube](iTp4LhhjCiQ)"},"typeVersion":1}],"active":false,"pinData":{},"settings":{"executionOrder":"v1"},"versionId":"2ef7d37b-2871-43dd-9742-2c5dcec52d44","connections":{"Google Gemini":{"ai_languageModel":[[{"node":"Generate Answers for Messages","type":"ai_languageModel","index":0},{"node":"Structured Output","type":"ai_languageModel","index":0}]]},"Loop Over Items":{"main":[[],[{"node":"Generate Answers for Messages","type":"main","index":0}]]},"Every 15 minutes":{"main":[[{"node":"Read Telegram Message","type":"main","index":0}]]},"Structured Output":{"ai_outputParser":[[{"node":"Generate Answers for Messages","type":"ai_outputParser","index":0}]]},"Cleaning Output Text":{"main":[[{"node":"Run Answering Workflow","type":"main","index":0}]]},"Read Telegram Message":{"main":[[{"node":"Human Verification Switch","type":"main","index":0}]]},"Run Answering Workflow":{"main":[[{"node":"Human Verification Switch2","type":"main","index":0}]]},"Get Data From BrowserAct":{"main":[[{"node":"Splitting Extracted Items","type":"main","index":0}]]},"Get Data From BrowserAct2":{"main":[[{"node":"Wait for Workflow Completion","type":"main","index":0}]]},"Human Verification Switch":{"main":[[{"node":"Splitting Extracted Items","type":"main","index":0}],[{"node":"Give Time to Complete Verification","type":"main","index":0}]]},"Splitting Extracted Items":{"main":[[{"node":"Loop Over Items","type":"main","index":0}]]},"Human Verification Switch2":{"main":[[{"node":"Wait for Workflow Completion","type":"main","index":0}],[{"node":"Give Time to Complete Verification2","type":"main","index":0}]]},"Wait for Workflow Completion":{"main":[[{"node":"Loop Over Items","type":"main","index":0}]]},"Generate Answers for Messages":{"main":[[{"node":"Check If Message Requires Response","type":"main","index":0}]]},"Check If Message Requires Response":{"main":[[{"node":"Cleaning Output Text","type":"main","index":0}],[{"node":"Loop Over Items","type":"main","index":0}]]},"Give Time to Complete Verification":{"main":[[{"node":"Get Data From BrowserAct","type":"main","index":0}]]},"Give Time to Complete Verification2":{"main":[[{"node":"Get Data From BrowserAct2","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":22,"nodeTypes":{"n8n-nodes-base.if":{"count":1},"n8n-nodes-base.code":{"count":2},"n8n-nodes-base.wait":{"count":3},"n8n-nodes-base.switch":{"count":2},"n8n-nodes-base.stickyNote":{"count":5},"n8n-nodes-base.httpRequest":{"count":2},"n8n-nodes-base.splitInBatches":{"count":1},"@n8n/n8n-nodes-langchain.agent":{"count":1},"n8n-nodes-base.scheduleTrigger":{"count":1},"n8n-nodes-browseract.browserAct":{"count":2},"@n8n/n8n-nodes-langchain.lmChatGoogleGemini":{"count":1},"@n8n/n8n-nodes-langchain.outputParserStructured":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"Madame AI Team | Kai","username":"madame-ai","bio":"I’m a PhD in Physics turned AI enthusiast, passionate about uncovering how AI is transforming content creation, business, and daily life.","verified":true,"links":["https://www.youtube.com/@AI.madame.english"],"avatar":"https://gravatar.com/avatar/44c0d2b4b78d8dda7685aea70ef92b2c2339ca9478738c6ed8049cc70e3af32d?r=pg&d=retro&size=200"},"nodes":[{"id":19,"icon":"file:httprequest.svg","name":"n8n-nodes-base.httpRequest","codex":{"data":{"alias":["API","Request","URL","Build","cURL"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/","icon":"📈","label":"Automatically pulling and visualizing data with n8n"},{"url":"https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/","icon":"✍️","label":"Learn how to automatically cross-post your content with n8n"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/running-n8n-on-ships-an-interview-with-maranics/","icon":"🛳","label":"Running n8n on ships: An interview with Maranics"},{"url":"https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/","icon":" 🪢","label":"What are APIs and how to use them with no code"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/world-poetry-day-workflow/","icon":"📜","label":"Celebrating World Poetry Day with a daily poem in Telegram"},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/automate-designs-with-bannerbear-and-n8n/","icon":"🎨","label":"Automate Designs with Bannerbear and n8n"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/","icon":"📱","label":"Building an expense tracking app in 10 minutes"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/how-to-use-the-http-request-node-the-swiss-army-knife-for-workflow-automation/","icon":"🧰","label":"How to use the HTTP Request Node - The Swiss Army Knife for Workflow Automation"},{"url":"https://n8n.io/blog/learn-how-to-use-webhooks-with-mattermost-slash-commands/","icon":"🦄","label":"Learn how to use webhooks with Mattermost slash commands"},{"url":"https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/","icon":"📈","label":"How a Membership Development Manager automates his work and investments"},{"url":"https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/","icon":"📈","label":"A low-code bitcoin ticker built with QuestDB and n8n.io"},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/automations-for-activists/","icon":"✨","label":"How Common Knowledge use workflow automation for activism"},{"url":"https://n8n.io/blog/creating-scheduled-text-affirmations-with-n8n/","icon":"🤟","label":"Creating scheduled text affirmations with n8n"},{"url":"https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"output\"]","defaults":{"name":"HTTP Request","color":"#0004F5"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MCAyMEM0MCA4Ljk1MzE0IDMxLjA0NjkgMCAyMCAwQzguOTUzMTQgMCAwIDguOTUzMTQgMCAyMEMwIDMxLjA0NjkgOC45NTMxNCA0MCAyMCA0MEMzMS4wNDY5IDQwIDQwIDMxLjA0NjkgNDAgMjBaTTIwIDM2Ljk0NThDMTguODg1MiAzNi45NDU4IDE3LjEzNzggMzUuOTY3IDE1LjQ5OTggMzIuNjk4NUMxNC43OTY0IDMxLjI5MTggMTQuMTk2MSAyOS41NDMxIDEzLjc1MjYgMjcuNjg0N0gyNi4xODk4QzI1LjgwNDUgMjkuNTQwMyAyNS4yMDQ0IDMxLjI5MDEgMjQuNTAwMiAzMi42OTg1QzIyLjg2MjIgMzUuOTY3IDIxLjExNDggMzYuOTQ1OCAyMCAzNi45NDU4Wk0xMi45MDY0IDIwQzEyLjkwNjQgMjEuNjA5NyAxMy4wMDg3IDIzLjE2NCAxMy4yMDAzIDI0LjYzMDVIMjYuNzk5N0MyNi45OTEzIDIzLjE2NCAyNy4wOTM2IDIxLjYwOTcgMjcuMDkzNiAyMEMyNy4wOTM2IDE4LjM5MDMgMjYuOTkxMyAxNi44MzYgMjYuNzk5NyAxNS4zNjk1SDEzLjIwMDNDMTMuMDA4NyAxNi44MzYgMTIuOTA2NCAxOC4zOTAzIDEyLjkwNjQgMjBaTTIwIDMuMDU0MTlDMjEuMTE0OSAzLjA1NDE5IDIyLjg2MjIgNC4wMzA3OCAyNC41MDAxIDcuMzAwMzlDMjUuMjA2NiA4LjcxNDA4IDI1LjgwNzIgMTAuNDA2NyAyNi4xOTIgMTIuMzE1M0gxMy43NTAxQzE0LjE5MzMgMTAuNDA0NyAxNC43OTQyIDguNzEyNTQgMTUuNDk5OCA3LjMwMDY0QzE3LjEzNzcgNC4wMzA4MyAxOC44ODUxIDMuMDU0MTkgMjAgMy4wNTQxOVpNMzAuMTQ3OCAyMEMzMC4xNDc4IDE4LjQwOTkgMzAuMDU0MyAxNi44NjE3IDI5LjgyMjcgMTUuMzY5NUgzNi4zMDQyQzM2LjcyNTIgMTYuODQyIDM2Ljk0NTggMTguMzk2NCAzNi45NDU4IDIwQzM2Ljk0NTggMjEuNjAzNiAzNi43MjUyIDIzLjE1OCAzNi4zMDQyIDI0LjYzMDVIMjkuODIyN0MzMC4wNTQzIDIzLjEzODMgMzAuMTQ3OCAyMS41OTAxIDMwLjE0NzggMjBaTTI2LjI3NjcgNC4yNTUxMkMyNy42MzY1IDYuMzYwMTkgMjguNzExIDkuMTMyIDI5LjM3NzQgMTIuMzE1M0gzNS4xMDQ2QzMzLjI1MTEgOC42NjggMzAuMTA3IDUuNzgzNDYgMjYuMjc2NyA0LjI1NTEyWk0xMC42MjI2IDEyLjMxNTNINC44OTI5M0M2Ljc1MTQ3IDguNjY3ODQgOS44OTM1MSA1Ljc4MzQxIDEzLjcyMzIgNC4yNTUxM0MxMi4zNjM1IDYuMzYwMjEgMTEuMjg5IDkuMTMyMDEgMTAuNjIyNiAxMi4zMTUzWk0zLjA1NDE5IDIwQzMuMDU0MTkgMjEuNjAzIDMuMjc3NDMgMjMuMTU3NSAzLjY5NDg0IDI0LjYzMDVIMTAuMTIxN0M5Ljk0NjE5IDIzLjE0MiA5Ljg1MjIyIDIxLjU5NDMgOS44NTIyMiAyMEM5Ljg1MjIyIDE4LjQwNTcgOS45NDYxOSAxNi44NTggMTAuMTIxNyAxNS4zNjk1SDMuNjk0ODRDMy4yNzc0MyAxNi44NDI1IDMuMDU0MTkgMTguMzk3IDMuMDU0MTkgMjBaTTI2LjI3NjYgMzUuNzQyN0MyNy42MzY1IDMzLjYzOTMgMjguNzExIDMwLjg2OCAyOS4zNzc0IDI3LjY4NDdIMzUuMTA0NkMzMy4yNTEgMzEuMzMyMiAzMC4xMDY4IDM0LjIxNzkgMjYuMjc2NiAzNS43NDI3Wk0xMy43MjM0IDM1Ljc0MjdDOS44OTM2OSAzNC4yMTc5IDYuNzUxNTUgMzEuMzMyNCA0Ljg5MjkzIDI3LjY4NDdIMTAuNjIyNkMxMS4yODkgMzAuODY4IDEyLjM2MzUgMzMuNjM5MyAxMy43MjM0IDM1Ljc0MjdaIiBmaWxsPSIjM0E0MkU5Ii8+Cjwvc3ZnPgo="},"displayName":"HTTP Request","typeVersion":4,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":20,"icon":"fa:map-signs","name":"n8n-nodes-base.if","codex":{"data":{"alias":["Router","Filter","Condition","Logic","Boolean","Branch"],"details":"The IF node can be used to implement binary conditional logic in your workflow. You can set up one-to-many conditions to evaluate each item of data being inputted into the node. That data will either evaluate to TRUE or FALSE and route out of the node accordingly.\n\nThis node has multiple types of conditions: Bool, String, Number, and Date & Time.","resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"If","color":"#408000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"If","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":39,"icon":"fa:sync","name":"n8n-nodes-base.splitInBatches","codex":{"data":{"alias":["Loop","Concatenate","Batch","Split","Split In Batches"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Loop Over Items","color":"#007755"},"iconData":{"icon":"sync","type":"icon"},"displayName":"Loop Over Items (Split in Batches)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":112,"icon":"fa:map-signs","name":"n8n-nodes-base.switch","codex":{"data":{"alias":["Router","If","Path","Filter","Condition","Logic","Branch","Case"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"Switch","color":"#506000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"Switch","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":514,"icon":"fa:pause-circle","name":"n8n-nodes-base.wait","codex":{"data":{"alias":["pause","sleep","delay","timeout"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Wait","color":"#804050"},"iconData":{"icon":"pause-circle","type":"icon"},"displayName":"Wait","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":565,"icon":"fa:sticky-note","name":"n8n-nodes-base.stickyNote","codex":{"data":{"alias":["Comments","Notes","Sticky"],"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"Sticky Note","color":"#FFD233"},"iconData":{"icon":"sticky-note","type":"icon"},"displayName":"Sticky Note","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":834,"icon":"file:code.svg","name":"n8n-nodes-base.code","codex":{"data":{"alias":["cpde","Javascript","JS","Python","Script","Custom Code","Function"],"details":"The Code node allows you to execute JavaScript in your workflow.","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Code"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Code","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":839,"icon":"fa:clock","name":"n8n-nodes-base.scheduleTrigger","codex":{"data":{"alias":["Time","Scheduler","Polling","Cron","Interval"],"resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\",\"schedule\"]","defaults":{"name":"Schedule Trigger","color":"#31C49F"},"iconData":{"icon":"clock","type":"icon"},"displayName":"Schedule Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1119,"icon":"fa:robot","name":"@n8n/n8n-nodes-langchain.agent","codex":{"data":{"alias":["LangChain","Chat","Conversational","Plan and Execute","ReAct","Tools"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Agents","Root Nodes"]}}},"group":"[\"transform\"]","defaults":{"name":"AI Agent","color":"#404040"},"iconData":{"icon":"robot","type":"icon"},"displayName":"AI Agent","typeVersion":3,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1179,"icon":"fa:code","name":"@n8n/n8n-nodes-langchain.outputParserStructured","codex":{"data":{"alias":["json","zod"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserstructured/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Output Parsers"]}}},"group":"[\"transform\"]","defaults":{"name":"Structured Output Parser"},"iconData":{"icon":"code","type":"icon"},"displayName":"Structured Output Parser","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1262,"icon":"file:google.svg","name":"@n8n/n8n-nodes-langchain.lmChatGoogleGemini","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatgooglegemini/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Language Models","Root Nodes"],"Language Models":["Chat Models (Recommended)"]}}},"group":"[\"transform\"]","defaults":{"name":"Google Gemini Chat Model"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNDggNDgiPjxkZWZzPjxwYXRoIGlkPSJhIiBkPSJNNDQuNSAyMEgyNHY4LjVoMTEuOEMzNC43IDMzLjkgMzAuMSAzNyAyNCAzN2MtNy4yIDAtMTMtNS44LTEzLTEzczUuOC0xMyAxMy0xM2MzLjEgMCA1LjkgMS4xIDguMSAyLjlsNi40LTYuNEMzNC42IDQuMSAyOS42IDIgMjQgMiAxMS44IDIgMiAxMS44IDIgMjRzOS44IDIyIDIyIDIyYzExIDAgMjEtOCAyMS0yMiAwLTEuMy0uMi0yLjctLjUtNCIvPjwvZGVmcz48Y2xpcFBhdGggaWQ9ImIiPjx1c2UgeGxpbms6aHJlZj0iI2EiIG92ZXJmbG93PSJ2aXNpYmxlIi8+PC9jbGlwUGF0aD48cGF0aCBmaWxsPSIjRkJCQzA1IiBkPSJNMCAzN1YxMWwxNyAxM3oiIGNsaXAtcGF0aD0idXJsKCNiKSIvPjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Im0wIDExIDE3IDEzIDctNi4xTDQ4IDE0VjBIMHoiIGNsaXAtcGF0aD0idXJsKCNiKSIvPjxwYXRoIGZpbGw9IiMzNEE4NTMiIGQ9Im0wIDM3IDMwLTIzIDcuOSAxTDQ4IDB2NDhIMHoiIGNsaXAtcGF0aD0idXJsKCNiKSIvPjxwYXRoIGZpbGw9IiM0Mjg1RjQiIGQ9Ik00OCA0OCAxNyAyNGwtNC0zIDM1LTEweiIgY2xpcC1wYXRoPSJ1cmwoI2IpIi8+PC9zdmc+"},"displayName":"Google Gemini Chat Model","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]}],"categories":[{"id":40,"name":"Support Chatbot"},{"id":47,"name":"AI Chatbot"}],"image":[]}}