{"workflow":{"id":13160,"name":"Manage finances, tasks, tweets and Gmail with GPT‑4.1 on WhatsApp","views":189,"recentViews":0,"totalViews":189,"createdAt":"2026-02-01T21:52:53.145Z","description":"## n8n Wizard 🪄 – Your personal AI assistant inside WhatsApp\n\nThis workflow transforms WhatsApp into a powerful personal AI using n8n + Green-API. Send text or voice messages — the assistant understands intent and handles daily tasks automatically.\n\n### Key features\n\n- 💰 **Expense & income tracking** — record spending, view summaries & category breakdowns (Google Sheets, append-only)\n- ✓ **Google Tasks management** — create, list, update, delete tasks & reminders\n- 🐦 **Post to X/Twitter** — write and publish single tweets or short threads\n- 📧 **Gmail search & summaries** — find recent/unread emails by sender, label, keyword (read-only)\n- 🌐 **Real-time answers** — current weather, news, exchange rates, facts via web search\n- 🧮 **Quick calculations** — math, percentages, currency conversions\n- 🎤 **Full voice support** — incoming voice messages transcribed (Whisper), replies can be spoken (TTS)\n\n### How it works\n\n1. Green-API webhook receives message (text or audio)  \n2. Voice → transcribed automatically  \n3. Main intelligent router agent selects one sub-agent/tool  \n4. Action executed → result sent back as text or voice (if input was voice)\n\n### Setup requirements\n\n- Green-API instance (webhook + send endpoints)  \n- OpenAI API key (chat, Whisper, TTS)  \n- Google Sheets, Google Tasks, Twitter/X, Gmail (read scope), SerpAPI credentials  \n\nStrict routing rules prevent misuse — no deletions, no guessing values, one tool per clear intent.\n\nStart commanding: “spent 3200 on groceries”, “remind dentist tomorrow”, “tweet: loving n8n!”, “weather in Lahore now”","workflow":{"meta":{"instanceId":"5f3c5e6f777b2c7f976eff784f15d2e2501680193b55be3d2ceef10db21e51fb","templateCredsSetupCompleted":true},"nodes":[{"id":"a42f93ee-e6fa-4040-a1b6-62fc329f70b9","name":"Calculator","type":"@n8n/n8n-nodes-langchain.toolCalculator","position":[864,16],"parameters":{},"typeVersion":1},{"id":"f257b156-dc41-4492-b348-a154cbe3c20c","name":"Append row in sheet in Google Sheets","type":"n8n-nodes-base.googleSheetsTool","position":[944,432],"parameters":{"columns":{"value":{"date":"={{$now.toFormat('d-M-yyyy HH:mm')}}","type":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('type', ``, 'string') }}","amount":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('amount', ``, 'string') }}","category":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('category', ``, 'string') }}","description":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('description', ``, 'string') }}"},"schema":[{"id":"type","type":"string","display":true,"required":false,"displayName":"type","defaultMatch":false,"canBeUsedToMatch":true},{"id":"amount","type":"string","display":true,"required":false,"displayName":"amount","defaultMatch":false,"canBeUsedToMatch":true},{"id":"date","type":"string","display":true,"required":false,"displayName":"date","defaultMatch":false,"canBeUsedToMatch":true},{"id":"category","type":"string","display":true,"required":false,"displayName":"category","defaultMatch":false,"canBeUsedToMatch":true},{"id":"description","type":"string","display":true,"required":false,"displayName":"description","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1A2NOTd2OJwGgL_0t-QvEuLO0gaC5QKUDisy7jQwFAsI/edit#gid=0","cachedResultName":"EXPENSES"},"documentId":{"__rl":true,"mode":"list","value":"1A2NOTd2OJwGgL_0t-QvEuLO0gaC5QKUDisy7jQwFAsI","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1A2NOTd2OJwGgL_0t-QvEuLO0gaC5QKUDisy7jQwFAsI/edit?usp=drivesdk","cachedResultName":"Expense Tracker"}},"credentials":{"googleSheetsOAuth2Api":{"id":"tTDnrUZwDmRRhtHd","name":"moosa-abc1"}},"typeVersion":4.7},{"id":"dd1a9dc6-7abc-42fb-a4d4-40ca980333f3","name":"Get row(s) in sheet in Google Sheets","type":"n8n-nodes-base.googleSheetsTool","position":[1072,432],"parameters":{"options":{},"filtersUI":{"values":[{"lookupValue":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('values0_Value', ``, 'string') }}","lookupColumn":"date"},{"lookupValue":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('values1_Value', ``, 'string') }}","lookupColumn":"category"}]},"sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1A2NOTd2OJwGgL_0t-QvEuLO0gaC5QKUDisy7jQwFAsI/edit#gid=0","cachedResultName":"EXPENSES"},"documentId":{"__rl":true,"mode":"list","value":"1A2NOTd2OJwGgL_0t-QvEuLO0gaC5QKUDisy7jQwFAsI","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1A2NOTd2OJwGgL_0t-QvEuLO0gaC5QKUDisy7jQwFAsI/edit?usp=drivesdk","cachedResultName":"Expense Tracker"},"combineFilters":"OR"},"credentials":{"googleSheetsOAuth2Api":{"id":"tTDnrUZwDmRRhtHd","name":"moosa-abc1"}},"typeVersion":4.7},{"id":"dc990648-0a23-4932-8188-0617818bf885","name":"OpenAI Chat Model4","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[816,432],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{},"builtInTools":{}},"credentials":{"openAiApi":{"id":"CAbOfzeCKn7KwE2V","name":"rizwan"}},"typeVersion":1.3},{"id":"393a3daf-e91c-4e7b-8de5-074b50c7f098","name":"expense-tracker","type":"@n8n/n8n-nodes-langchain.agentTool","position":[912,224],"parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Prompt__User_Message_', ``, 'string') }}","options":{"systemMessage":"=You are a precise personal finance assistant focused ONLY on expense tracking.\n\nAvailable tools:\n• Get row(s) in sheet in Google Sheets → read / filter expenses (use when user asks for summary, list, total, report, category breakdown, date range etc.)\n• Append row in sheet in Google Sheets → add new expense (use when user reports spending)\n\nColumns in sheet: type, amount, category, description, date (auto-filled)\n\nBehavior rules:\n\nWhen user reports spending → extract type, amount (number only, PKR), category, description, then append row.\n\nWhen user asks for summary / list / total / report → get row(s) with appropriate filters, then summarize concisely.\n\nAlways return amounts in PKR. Format nicely (e.g., \"Total food this month: 18,450 PKR\").\n\nIf ambiguous → ask ONE clarifying question.\n\nNever modify or delete rows — only read or append.\n\nBe accurate with numbers and dates.\n\nFinal answer should be short and tabular when showing multiple rows.\n\nExecute commands directly as instructed by the main agent.\nCurrent date: {{$now.toFormat('yyyy-MM-dd')}}\n\nRespond only with final answer or tool calls — no explanations, reasoning, or extra comments."},"toolDescription":"This agent will used for recording expenses and returning summaries when asked"},"typeVersion":3},{"id":"587260b9-5105-493e-b4de-cfb61b5eb039","name":"Task-manager-agent","type":"@n8n/n8n-nodes-langchain.agentTool","position":[1536,224],"parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Prompt__User_Message_', ``, 'string') }}","options":{"systemMessage":"=You are a task execution agent for Google Tasks.\n\nYou DO NOT interpret user intent.\nYou DO NOT verify information.\nYou DO NOT ask questions unless explicitly instructed.\n\nYou ONLY execute the instruction provided by the main agent.\n\n────────────────────────────────\nABSOLUTE RULES\n────────────────────────────────\n1. Trust all IDs and values provided in the input.\n2. NEVER verify IDs by calling \"get list\".\n3. NEVER infer or guess missing information.\n4. NEVER call any tool unless explicitly required by the instruction.\n5. Call ONLY ONE tool per request.\n6. Use the provided values exactly as given.\n\n────────────────────────────────\nEXECUTION LOGIC\n────────────────────────────────\n- If input contains \"listId\":\n    → Use it directly.\n    → Call \"get tasks\".\n- If input contains \"createTask\":\n    → Call \"Create a task in Google Tasks\".\n- If input contains \"createList\":\n    → Call \"create list\".\n- If input contains \"updateTask\":\n    → Call \"update task\".\n- If input contains \"deleteTask\":\n    → Call \"delete task\".\n\nDO NOT perform any additional checks.\nDO NOT request confirmation.\nDO NOT call \"get list\" unless explicitly told to do so.\n\n────────────────────────────────\nOUTPUT\n────────────────────────────────\n- Return tool output as-is.\n- Do not add explanations.\n- Do not add extra text.\n\nCurrent date: {{$now.toFormat('yyyy-MM-dd')}}\n"},"toolDescription":"This will look after Google Tasks"},"typeVersion":3},{"id":"bcd84d68-b761-4619-9e7f-410452c7e647","name":"Tweet-agent","type":"@n8n/n8n-nodes-langchain.agentTool","position":[2144,224],"parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Prompt__User_Message_', ``, 'string') }}","options":{"systemMessage":"=you are tweet agent\n\nuse post tweet tool to post.\n\nIf tweet is larger than 280 characters then suggest alternative\n\nIf you get Instructions to post a tweet then post it.\n\nnote: post only once"},"toolDescription":"This will do tweet"},"typeVersion":3},{"id":"17506000-9c4f-4b52-998c-537efbd94fd2","name":"Create Tweet in X","type":"n8n-nodes-base.twitterTool","position":[2304,432],"parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Text', ``, 'string') }}","additionalFields":{}},"credentials":{"twitterOAuth2Api":{"id":"xWnOYJcbTbSQIbAw","name":"X account 2"}},"typeVersion":2},{"id":"42fd020a-dcc1-402e-9af7-6f53ba274c49","name":"OpenAI Chat Model3","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[2160,432],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{},"builtInTools":{}},"credentials":{"openAiApi":{"id":"CAbOfzeCKn7KwE2V","name":"rizwan"}},"typeVersion":1.3},{"id":"b989707a-6baf-46e6-9d44-5c97426992e0","name":"get-gmail","type":"@n8n/n8n-nodes-langchain.agentTool","position":[2592,224],"parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Prompt__User_Message_', ``, 'string') }}","options":{"systemMessage":"=you are gmail returever agent\n\nuse gmail tool attached when given task\n\n\nCurrent date: {{$now.toFormat('yyyy-MM-dd')}}\nKeep every answer very clean, short and structured.  \nUse bullet points or numbered lists when showing multiple emails."},"toolDescription":"This tool will get Emails"},"typeVersion":3},{"id":"fe0a295f-5852-4915-a82c-8e6d4cfc90dc","name":"Get many messages in Gmail","type":"n8n-nodes-base.gmailTool","position":[2736,432],"webhookId":"f42530ef-fcf0-4f60-98fc-ace14c81e908","parameters":{"filters":{"q":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Search', ``, 'string') }}","sender":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Sender', ``, 'string') }}","labelIds":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Label_Names_or_IDs', ``, 'string') }}","receivedAfter":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Received_After', ``, 'string') }}","receivedBefore":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Received_Before', ``, 'string') }}"},"operation":"getAll","returnAll":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}"},"credentials":{"gmailOAuth2":{"id":"nD2Ug87yE8zrRXpw","name":"abc1"}},"typeVersion":2.2},{"id":"b00337c5-da5b-4347-ba20-887752b91999","name":"OpenAI Chat Model2","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[2592,432],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{},"builtInTools":{}},"credentials":{"openAiApi":{"id":"j4OqIQtI7Um6LEX2","name":"moosa-n8n"}},"typeVersion":1.3},{"id":"b27b1739-fa14-41ab-bb63-dd7f094a744d","name":"OpenAI Chat Model1","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[400,0],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{},"builtInTools":{}},"credentials":{"openAiApi":{"id":"j4OqIQtI7Um6LEX2","name":"moosa-n8n"}},"typeVersion":1.3},{"id":"42e2c543-db67-4b21-92a9-cd36ee33a84b","name":"OpenAI Chat Model","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[1296,432],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4.1-mini"},"options":{},"builtInTools":{}},"credentials":{"openAiApi":{"id":"j4OqIQtI7Um6LEX2","name":"moosa-n8n"}},"typeVersion":1.3},{"id":"df9c0dce-d5f9-4c86-94cd-8ccb481c3908","name":"Transcribe a recording","type":"@n8n/n8n-nodes-langchain.openAi","position":[784,-528],"parameters":{"options":{},"resource":"audio","operation":"transcribe"},"credentials":{"openAiApi":{"id":"CAbOfzeCKn7KwE2V","name":"rizwan"}},"typeVersion":2.1},{"id":"52935b3c-e4dd-4978-beae-4a9fc5dab7e7","name":"download-audio","type":"n8n-nodes-base.httpRequest","position":[560,-528],"parameters":{"url":"={{ $json.body.messageData.fileMessageData.downloadUrl }}","options":{}},"typeVersion":4.3},{"id":"f462c7b2-2164-4aed-994f-a85b1dd48531","name":"Switch","type":"n8n-nodes-base.switch","position":[128,-464],"parameters":{"rules":{"values":[{"outputKey":"audio","conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"4e91b085-e2e0-4db2-84eb-cb1d29a574e1","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.body.messageData.typeMessage }}","rightValue":"audioMessage"}]},"renameOutput":true},{"outputKey":"text","conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"9aaebdb5-2671-4028-8cca-92a79534861c","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.body.messageData.typeMessage }}","rightValue":"textMessage"}]},"renameOutput":true},{"outputKey":"image","conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"ae1b36fc-ffa4-41e7-b67a-461160f16a31","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.body.messageData.typeMessage }}","rightValue":"imageMessage"}]},"renameOutput":true},{"outputKey":"doc","conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"a255bfb4-c663-4d7d-9bff-59b2715e08e2","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.body.messageData.typeMessage }}","rightValue":"documentMessage"}]},"renameOutput":true}]},"options":{}},"typeVersion":3.4},{"id":"de5adec9-4c8c-406f-8f5a-1bd3aab0f5f2","name":"Webhook","type":"n8n-nodes-base.webhook","position":[-112,-432],"webhookId":"101813cf-8a7f-4f73-a8c6-3f22ee1f127f","parameters":{"path":"101813cf-8a7f-4f73-a8c6-3f22ee1f127f","options":{},"httpMethod":"POST"},"typeVersion":2.1},{"id":"5583e250-b016-488b-a6d4-157ad21d7d11","name":"Generate audio","type":"@n8n/n8n-nodes-langchain.openAi","position":[2256,-288],"parameters":{"input":"={{ $json.output }}","voice":"shimmer","options":{},"resource":"audio"},"credentials":{"openAiApi":{"id":"CAbOfzeCKn7KwE2V","name":"rizwan"}},"typeVersion":2.1},{"id":"ee4f85cd-1a5e-4ab4-94a5-5888e57dbf35","name":"Simple Memory","type":"@n8n/n8n-nodes-langchain.memoryBufferWindow","position":[736,16],"parameters":{},"typeVersion":1.3},{"id":"ef6750dd-2606-46cc-b3d5-5def85de005c","name":"If","type":"n8n-nodes-base.if","onError":"continueRegularOutput","position":[2032,-192],"parameters":{"options":{},"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"ecafc1eb-b95f-4db8-9e21-b0add39af623","operator":{"type":"string","operation":"exists","singleValue":true},"leftValue":"={{ $('set audio to one').item.json.audio }}","rightValue":""}]}},"typeVersion":2.3},{"id":"1d6ec277-c2b3-4f41-a90c-e7a2fd93b239","name":"main-agent","type":"@n8n/n8n-nodes-langchain.agent","position":[1568,-192],"parameters":{"text":"={{ $json.text }}","options":{"systemMessage":"=You are \"n8n Wizard\" — a fast, precise, no-nonsense personal assistant that helps the user manage daily life using ONLY the tools/sub-agents listed below.\n\nCurrent date: 2026-01-19\n\nAvailable tools / sub-agents — use ONLY when the intent clearly matches:\n\n1. expense-tracker\n   → ANYTHING related to money out / in: recording expenses, income, purchases, viewing history, totals, category breakdowns, monthly/weekly summaries, budgets\n\n2. Task-manager-agent\n   → ANYTHING related to tasks, to-dos, reminders, Google Tasks: create, list, update, complete, delete, show upcoming/due/overdue\n\n3. Tweet-agent\n   → ANYTHING related to X/Twitter: writing posts, threads, drafting content, posting, scheduling ideas\n\n4. get-gmail\n   → ANYTHING related to reading or searching Gmail: find emails, summarize inbox, check specific senders, labels, keywords, recent/unread messages\n   → NEVER use for sending, replying, deleting or archiving\n\n5. Quick-google-search\n   → ONLY when current, factual, real-time or external information is needed that you do not already know for sure:\n      • weather, news, sports scores, stock/crypto prices, exchange rates\n      • definitions, how-to guides, recipes, translations\n      • current events, people, companies, product prices/availability\n      • anything time-sensitive or post-training-cutoff\n\n6. Calculator\n   → ONLY pure math, unit conversions, percentages, financial calculations, date differences — nothing else\n\nStrict routing rules — follow exactly:\n\nA. If the user message is clearly about ONE of the first 4 categories above → call ONLY that one sub-agent.\n   Give it a short, complete, self-contained instruction that includes all important details from the user message.\n\nB. If the message requires up-to-date or external knowledge you cannot know → call Quick-google-search.\n   You MUST provide a complete https:// URL (usually a Google search link).\n\nC. If the message is ONLY math / calculation → call Calculator.\n\nD. If the message matches NONE of the above categories → answer directly (short + helpful).\n   Do NOT force a tool call. Do NOT hallucinate facts.\n\nE. If the message could match multiple tools → handle step-by-step in separate thoughts/tool calls:\n   Example: \"What's the current USD/PKR rate? Also add 5000 PKR expense for groceries.\"\n   → First Quick-google-search → then expense-tracker\n\nCritical safety rules:\n- NEVER invent numbers, dates, names, prices, email content, task lists, tweet results, etc.\n- If information is missing or ambiguous → ask ONE clear question — do NOT guess.\n- For Quick-google-search: you MUST output a full valid URL starting with https:// — never plain text.\n- For expense-tracker: never guess category, amount or type — ask if unclear.\n- Keep final answers very concise, natural and friendly.\n- Do not explain your reasoning in the final output unless the user asks.\n- Do not say \"I'm calling a tool\" or similar — just do the tool call or give the answer.\n\nRouting examples:\n\nUser: \"I spent 3200 on new shoes yesterday\"                  → expense-tracker\nUser: \"Remind me to pay electricity bill on 25th\"             → Task-manager-agent\nUser: \"Tweet: Just launched my new n8n workflow!\"             → Tweet-agent\nUser: \"Any emails from Zainab since Friday?\"                  → get-gmail\nUser: \"What's the weather like in Lahore right now?\"          → Quick-google-search\nUser: \"19.5% tip on 4850 PKR bill\"                            → Calculator\nUser: \"How much did I spend on transport this month?\"         → expense-tracker\nUser: \"Tell me a joke\"                                        → direct answer (no tool)\n\nRespond ONLY with:\n- a direct final answer, or\n- one or more tool / sub-agent calls\n\nNo chit-chat, no meta comments, no apologies.\nCurrent date: {{$now.toFormat('yyyy-MM-dd')}}"},"promptType":"define"},"typeVersion":3.1},{"id":"9d2c7f04-423e-4084-89ca-e2e46f46efa4","name":"Create a task in Google Tasks","type":"n8n-nodes-base.httpRequestTool","position":[1424,432],"parameters":{"url":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('URL', ``, 'string') }}","method":"POST","options":{},"jsonBody":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('JSON', ``, 'json') }}","sendBody":true,"sendHeaders":true,"specifyBody":"json","authentication":"predefinedCredentialType","toolDescription":"Use this to create task in google Tasks","headerParameters":{"parameters":[{"name":"Content-Type","value":"application/json"}]},"nodeCredentialType":"googleTasksOAuth2Api"},"credentials":{"googleTasksOAuth2Api":{"id":"6qOR1A6RIs2zyBOv","name":"moosa-abc1"}},"typeVersion":4.3},{"id":"9f043c17-fb66-4a10-8e43-c15c98d533f5","name":"create list","type":"n8n-nodes-base.httpRequestTool","position":[1552,432],"parameters":{"url":"https://tasks.googleapis.com/tasks/v1/users/@me/lists","method":"POST","options":{},"jsonBody":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('JSON', ``, 'json') }}","sendBody":true,"sendHeaders":true,"specifyBody":"json","authentication":"predefinedCredentialType","headerParameters":{"parameters":[{"name":"Content-Type","value":"application/json"}]},"nodeCredentialType":"googleTasksOAuth2Api"},"credentials":{"googleTasksOAuth2Api":{"id":"6qOR1A6RIs2zyBOv","name":"moosa-abc1"}},"typeVersion":4.3},{"id":"e5426f29-a5f1-4d39-9202-8a4ead033ac3","name":"update task","type":"n8n-nodes-base.httpRequestTool","position":[1680,432],"parameters":{"url":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('URL', ``, 'string') }}","method":"PATCH","options":{},"jsonBody":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('JSON', ``, 'json') }}","sendBody":true,"sendHeaders":true,"specifyBody":"json","authentication":"predefinedCredentialType","toolDescription":"update task","headerParameters":{"parameters":[{"name":"Content-Type","value":"application/json"}]},"nodeCredentialType":"googleTasksOAuth2Api"},"credentials":{"googleTasksOAuth2Api":{"id":"6qOR1A6RIs2zyBOv","name":"moosa-abc1"}},"typeVersion":4.3},{"id":"7b8e3f6c-b9ff-4254-95dd-9d5e4fdea014","name":"get list","type":"n8n-nodes-base.httpRequestTool","position":[1808,432],"parameters":{"url":"https://tasks.googleapis.com/tasks/v1/users/@me/lists","options":{},"authentication":"predefinedCredentialType","toolDescription":"Use this node to get all lists","nodeCredentialType":"googleTasksOAuth2Api"},"credentials":{"googleTasksOAuth2Api":{"id":"6qOR1A6RIs2zyBOv","name":"moosa-abc1"}},"typeVersion":4.3},{"id":"5a8af285-2a03-4052-afad-401f29d0971a","name":"When chat message received","type":"@n8n/n8n-nodes-langchain.chatTrigger","position":[-192,-144],"webhookId":"40d8cfbd-c809-4874-9b6a-ccce577dabf2","parameters":{"options":{}},"typeVersion":1.4},{"id":"dbfe4c17-b977-4359-8702-8aa26b2c4302","name":"get tasks","type":"n8n-nodes-base.httpRequestTool","position":[1936,432],"parameters":{"url":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('URL', ``, 'string') }}","options":{},"jsonBody":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('JSON', ``, 'json') }}","sendBody":true,"sendHeaders":true,"specifyBody":"json","authentication":"predefinedCredentialType","toolDescription":"use this to get tasks","headerParameters":{"parameters":[{"name":"Content-Type","value":"application/json"}]},"nodeCredentialType":"googleTasksOAuth2Api"},"credentials":{"googleTasksOAuth2Api":{"id":"6qOR1A6RIs2zyBOv","name":"moosa-abc1"}},"typeVersion":4.3},{"id":"482968cb-5a05-4c74-bae3-10a08e1f0ead","name":"quick-web-search","type":"@n8n/n8n-nodes-langchain.toolSerpApi","position":[560,16],"parameters":{"options":{}},"credentials":{"serpApi":{"id":"eS48KaGlRsHYldse","name":"SerpAPI ali"}},"typeVersion":1},{"id":"30df0de5-beea-4ed0-8ee8-a912804a8ea7","name":"send audio response","type":"n8n-nodes-base.httpRequest","position":[2480,-288],"parameters":{"url":"=https://7105.media.greenapi.com/waInstance7105477333/sendFileByUpload/API_KEY_HERE","method":"POST","options":{},"sendBody":true,"contentType":"multipart-form-data","bodyParameters":{"parameters":[{"name":"file","parameterType":"formBinaryData","inputDataFieldName":"data"},{"name":"chatId","value":"={{ $item(\"0\").$node[\"Webhook\"].json[\"body\"][\"senderData\"][\"chatId\"] }}"}]}},"typeVersion":4.3},{"id":"3f88db87-efe8-4fab-95d6-87356f19e993","name":"send text response","type":"n8n-nodes-base.httpRequest","position":[2256,-96],"parameters":{"url":"=https://7105.api.greenapi.com/waInstance7105477333/sendMessage/API_KEY_HERE","method":"POST","options":{"redirect":{"redirect":{}}},"sendBody":true,"bodyParameters":{"parameters":[{"name":"chatId","value":"={{ $item(\"0\").$node[\"Webhook\"].json[\"body\"][\"senderData\"][\"chatId\"] }}"},{"name":"message","value":"={{ $json.output }}"}]}},"typeVersion":4.3},{"id":"7a6cdfac-b462-4538-b22a-ee9bf6846c13","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-1088,-544],"parameters":{"width":736,"height":800,"content":"\n## How it works\n1. Message arrives via Green-API webhook (text or voice)  \n2. Voice messages → downloaded → transcribed (OpenAI Whisper)  \n3. Main router agent reads intent and selects exactly one sub-agent/tool  \n4. Sub-agents handle the action:\n• Expense tracking ←→ Google Sheets\n• Tasks (create/list/update) ←→ Google Tasks\n• Post tweet ←→ X\n• Search emails ←→ Gmail (read only)\n• Real-time facts ←→ web search\n• Math & conversions ←→ calculator  \n5. Answer returns as text — or as voice if you sent voice (OpenAI TTS)\n\n### Rules the AI follows strictly\n• One tool call per clear intent\n• Never guesses categories/amounts/IDs\n• Never deletes or modifies existing data\n• Current date always passed: {{$now}}\n## Setup stepsActivate credentials:\n1. OpenAI (chat + whisper + TTS)\n• Green-API (webhook + send endpoints)\n• Google Sheets OAuth\n• Google Tasks OAuth\n• Twitter/X OAuth 2.0\n• Gmail OAuth (read scope)\n• SerpAPI (web search)\n2. Update hardcoded chatId  in the two “send response” nodes  \n3. Test with simple commands first:\n“I spent 2500 on lunch”\n“Weather in Karachi now”\n“Create task: Call dentist tomorrow”\n\n"},"typeVersion":1},{"id":"1913fdaa-963b-4367-bf7c-65cdf2384b16","name":"set audio to one","type":"n8n-nodes-base.set","position":[1008,-528],"parameters":{"options":{},"assignments":{"assignments":[{"id":"7c95968d-34a0-4a56-8edd-92f584e8ff71","name":"text","type":"string","value":"={{ $json.text }}"},{"id":"568af38d-27b8-487c-8f33-ce274b458663","name":"audio","type":"string","value":"1"}]}},"typeVersion":3.4},{"id":"162d4985-3b55-4c83-944a-7329fc65d695","name":"audio to 0","type":"n8n-nodes-base.set","position":[1008,-336],"parameters":{"options":{},"assignments":{"assignments":[{"id":"ce3c8872-9b17-4859-8c86-648c7233b6fa","name":"text","type":"string","value":"={{ $json.body.messageData.textMessageData.textMessage }}"},{"id":"b6946a00-4400-46d5-a08c-e137e7ca4efd","name":"audio","type":"string","value":"0"}]}},"typeVersion":3.4},{"id":"aa8a710a-d07d-47ff-bda4-40a361d03e70","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[-176,-656],"parameters":{"color":4,"width":1344,"height":448,"content":"## Classify input"},"typeVersion":1},{"id":"1041dbbb-a33e-4b72-9cd9-1f16b661687a","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[1952,-368],"parameters":{"color":4,"width":864,"height":416,"content":"## send response according to input"},"typeVersion":1},{"id":"025c6b12-5d32-4975-81dd-f800309df132","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[1488,-272],"parameters":{"color":6,"width":400,"height":256,"content":"## main Agent"},"typeVersion":1},{"id":"35551b4d-f23c-4eba-bb6c-791dea506d9b","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[800,176],"parameters":{"color":5,"width":384,"height":448,"content":"## Sub Agent for expense Tracking\n"},"typeVersion":1},{"id":"f8630511-aefd-46bf-9454-279df9c46aab","name":"Sticky Note5","type":"n8n-nodes-base.stickyNote","position":[1280,160],"parameters":{"color":5,"width":752,"height":448,"content":"## Sub Agent for Google Tasks\n"},"typeVersion":1},{"id":"a1399821-275d-4d3a-9002-6fcf970baf8b","name":"Sticky Note6","type":"n8n-nodes-base.stickyNote","position":[2080,160],"parameters":{"color":5,"width":384,"height":448,"content":"## Sub Agent for Posting Tweet"},"typeVersion":1},{"id":"18b7565d-54b8-4a57-94eb-217bc9adea04","name":"Sticky Note7","type":"n8n-nodes-base.stickyNote","position":[2528,144],"parameters":{"color":5,"width":384,"height":448,"content":"## Sub Agent for Gmail\n"},"typeVersion":1},{"id":"d90b4aee-88ac-4284-8908-c6d0bc9383b9","name":"Sticky Note8","type":"n8n-nodes-base.stickyNote","position":[352,-80],"parameters":{"width":656,"height":208,"content":"## Tools to do websearch and calculate"},"typeVersion":1},{"id":"12f48fce-97e6-49b1-b484-373200c7e11b","name":"Sticky Note9","type":"n8n-nodes-base.stickyNote","position":[-240,-224],"parameters":{"width":256,"height":256,"content":"## Chat Trigger for manual execution"},"typeVersion":1}],"pinData":{},"connections":{"If":{"main":[[{"node":"Generate audio","type":"main","index":0}],[{"node":"send text response","type":"main","index":0}]]},"Switch":{"main":[[{"node":"download-audio","type":"main","index":0}],[{"node":"audio to 0","type":"main","index":0}]]},"Webhook":{"main":[[{"node":"Switch","type":"main","index":0}]]},"get list":{"ai_tool":[[{"node":"Task-manager-agent","type":"ai_tool","index":0}]]},"get tasks":{"ai_tool":[[{"node":"Task-manager-agent","type":"ai_tool","index":0}]]},"get-gmail":{"ai_tool":[[{"node":"main-agent","type":"ai_tool","index":0}]]},"Calculator":{"ai_tool":[[{"node":"main-agent","type":"ai_tool","index":0}]]},"audio to 0":{"main":[[{"node":"main-agent","type":"main","index":0}]]},"main-agent":{"main":[[{"node":"If","type":"main","index":0}]]},"Tweet-agent":{"ai_tool":[[{"node":"main-agent","type":"ai_tool","index":0}]]},"create list":{"ai_tool":[[{"node":"Task-manager-agent","type":"ai_tool","index":0}]]},"update task":{"ai_tool":[[{"node":"Task-manager-agent","type":"ai_tool","index":0}]]},"Simple Memory":{"ai_memory":[[{"node":"main-agent","type":"ai_memory","index":0}]]},"Generate audio":{"main":[[{"node":"send audio response","type":"main","index":0}]]},"download-audio":{"main":[[{"node":"Transcribe a recording","type":"main","index":0}]]},"expense-tracker":{"ai_tool":[[{"node":"main-agent","type":"ai_tool","index":0}]]},"quick-web-search":{"ai_tool":[[{"node":"main-agent","type":"ai_tool","index":0}]]},"set audio to one":{"main":[[{"node":"main-agent","type":"main","index":0}]]},"Create Tweet in X":{"ai_tool":[[{"node":"Tweet-agent","type":"ai_tool","index":0}]]},"OpenAI Chat Model":{"ai_languageModel":[[{"node":"Task-manager-agent","type":"ai_languageModel","index":0}]]},"OpenAI Chat Model1":{"ai_languageModel":[[{"node":"main-agent","type":"ai_languageModel","index":0}]]},"OpenAI Chat Model2":{"ai_languageModel":[[{"node":"get-gmail","type":"ai_languageModel","index":0}]]},"OpenAI Chat Model3":{"ai_languageModel":[[{"node":"Tweet-agent","type":"ai_languageModel","index":0}]]},"OpenAI Chat Model4":{"ai_languageModel":[[{"node":"expense-tracker","type":"ai_languageModel","index":0}]]},"Task-manager-agent":{"ai_tool":[[{"node":"main-agent","type":"ai_tool","index":0}]]},"Transcribe a recording":{"main":[[{"node":"set audio to one","type":"main","index":0}]]},"Get many messages in Gmail":{"ai_tool":[[{"node":"get-gmail","type":"ai_tool","index":0}]]},"When chat message received":{"main":[[{"node":"main-agent","type":"main","index":0}]]},"Create a task in Google Tasks":{"ai_tool":[[{"node":"Task-manager-agent","type":"ai_tool","index":0}]]},"Append row in sheet in Google Sheets":{"ai_tool":[[{"node":"expense-tracker","type":"ai_tool","index":0}]]},"Get row(s) in sheet in Google Sheets":{"ai_tool":[[{"node":"expense-tracker","type":"ai_tool","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":43,"nodeTypes":{"n8n-nodes-base.if":{"count":1},"n8n-nodes-base.set":{"count":2},"n8n-nodes-base.switch":{"count":1},"n8n-nodes-base.webhook":{"count":1},"n8n-nodes-base.gmailTool":{"count":1},"n8n-nodes-base.stickyNote":{"count":10},"n8n-nodes-base.httpRequest":{"count":3},"n8n-nodes-base.twitterTool":{"count":1},"@n8n/n8n-nodes-langchain.agent":{"count":1},"n8n-nodes-base.httpRequestTool":{"count":5},"@n8n/n8n-nodes-langchain.openAi":{"count":2},"n8n-nodes-base.googleSheetsTool":{"count":2},"@n8n/n8n-nodes-langchain.agentTool":{"count":4},"@n8n/n8n-nodes-langchain.chatTrigger":{"count":1},"@n8n/n8n-nodes-langchain.toolSerpApi":{"count":1},"@n8n/n8n-nodes-langchain.lmChatOpenAi":{"count":5},"@n8n/n8n-nodes-langchain.toolCalculator":{"count":1},"@n8n/n8n-nodes-langchain.memoryBufferWindow":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"moosa","username":"moosa","bio":"","verified":true,"links":["https://www.linkedin.com/in/muhammad-moosa-k"],"avatar":"https://gravatar.com/avatar/cd351be0624a4684e5e0cd13a6383a4d743fadbb4021ccbdf2d9c31796e25bef?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":38,"icon":"fa:pen","name":"n8n-nodes-base.set","codex":{"data":{"alias":["Set","JS","JSON","Filter","Transform","Map"],"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/automatically-pulling-and-visualizing-data-with-n8n/","icon":"📈","label":"Automatically pulling and visualizing data with n8n"},{"url":"https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/","icon":"📡","label":"Database Monitoring and Alerting 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/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/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/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/","icon":"📹","label":"The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"},{"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/learn-to-build-powerful-api-endpoints-using-webhooks/","icon":"🧰","label":"Learn to Build Powerful API Endpoints Using Webhooks"},{"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/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/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.set/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"input\"]","defaults":{"name":"Edit Fields"},"iconData":{"icon":"pen","type":"icon"},"displayName":"Edit Fields (Set)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":47,"icon":"file:webhook.svg","name":"n8n-nodes-base.webhook","codex":{"data":{"alias":["HTTP","API","Build","WH"],"resources":{"generic":[{"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/running-n8n-on-ships-an-interview-with-maranics/","icon":"🛳","label":"Running n8n on ships: An interview with Maranics"},{"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/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/how-a-digital-strategist-uses-n8n-for-online-marketing/","icon":"💻","label":"How a digital strategist uses n8n for online marketing"},{"url":"https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/","icon":"📹","label":"The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"},{"url":"https://n8n.io/blog/how-to-automatically-give-kudos-to-contributors-with-github-slack-and-n8n/","icon":"👏","label":"How to automatically give kudos to contributors with GitHub, Slack, and n8n"},{"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/creating-custom-incident-response-workflows-with-n8n/","label":"How to automate every step of an incident response workflow"},{"url":"https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/","icon":"🧰","label":"Learn to Build Powerful API Endpoints Using Webhooks"},{"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-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"trigger\"]","defaults":{"name":"Webhook"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCI+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTM1IDM3Yy0yLjIgMC00LTEuOC00LTRzMS44LTQgNC00IDQgMS44IDQgNC0xLjggNC00IDQiLz48cGF0aCBmaWxsPSIjMzc0NzRmIiBkPSJNMzUgNDNjLTMgMC01LjktMS40LTcuOC0zLjdsMy4xLTIuNWMxLjEgMS40IDIuOSAyLjMgNC43IDIuMyAzLjMgMCA2LTIuNyA2LTZzLTIuNy02LTYtNmMtMSAwLTIgLjMtMi45LjdsLTEuNyAxTDIzLjMgMTZsMy41LTEuOSA1LjMgOS40YzEtLjMgMi0uNSAzLS41IDUuNSAwIDEwIDQuNSAxMCAxMFM0MC41IDQzIDM1IDQzIi8+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTE0IDQzQzguNSA0MyA0IDM4LjUgNCAzM2MwLTQuNiAzLjEtOC41IDcuNS05LjdsMSAzLjlDOS45IDI3LjkgOCAzMC4zIDggMzNjMCAzLjMgMi43IDYgNiA2czYtMi43IDYtNnYtMmgxNXY0SDIzLjhjLS45IDQuNi01IDgtOS44IDgiLz48cGF0aCBmaWxsPSIjZTkxZTYzIiBkPSJNMTQgMzdjLTIuMiAwLTQtMS44LTQtNHMxLjgtNCA0LTQgNCAxLjggNCA0LTEuOCA0LTQgNCIvPjxwYXRoIGZpbGw9IiMzNzQ3NGYiIGQ9Ik0yNSAxOWMtMi4yIDAtNC0xLjgtNC00czEuOC00IDQtNCA0IDEuOCA0IDQtMS44IDQtNCA0Ii8+PHBhdGggZmlsbD0iI2U5MWU2MyIgZD0ibTE1LjcgMzQtMy40LTIgNS45LTkuN2MtMi0xLjktMy4yLTQuNS0zLjItNy4zIDAtNS41IDQuNS0xMCAxMC0xMHMxMCA0LjUgMTAgMTBjMCAuOS0uMSAxLjctLjMgMi41bC0zLjktMWMuMS0uNS4yLTEgLjItMS41IDAtMy4zLTIuNy02LTYtNnMtNiAyLjctNiA2YzAgMi4xIDEuMSA0IDIuOSA1LjFsMS43IDF6Ii8+PC9zdmc+"},"displayName":"Webhook","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"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":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":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":1153,"icon":"file:openAiLight.svg","name":"@n8n/n8n-nodes-langchain.lmChatOpenAi","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenai/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Language Models","Root Nodes"],"Language Models":["Chat Models (Recommended)"]}}},"group":"[\"transform\"]","defaults":{"name":"OpenAI Chat Model"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="},"displayName":"OpenAI Chat Model","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1163,"icon":"fa:database","name":"@n8n/n8n-nodes-langchain.memoryBufferWindow","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.memorybufferwindow/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Memory"],"Memory":["For beginners"]}}},"group":"[\"transform\"]","defaults":{"name":"Simple Memory"},"iconData":{"icon":"database","type":"icon"},"displayName":"Simple Memory","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1195,"icon":"fa:calculator","name":"@n8n/n8n-nodes-langchain.toolCalculator","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolcalculator/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Tools"],"Tools":["Other Tools"]}}},"group":"[\"transform\"]","defaults":{"name":"Calculator"},"iconData":{"icon":"calculator","type":"icon"},"displayName":"Calculator","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1199,"icon":"file:serpApi.svg","name":"@n8n/n8n-nodes-langchain.toolSerpApi","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolserpapi/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Tools"],"Tools":["Other Tools"]}}},"group":"[\"transform\"]","defaults":{"name":"SerpAPI"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQ2ODAgMTM0MCI+PHBhdGggZmlsbD0iIzdEN0Q4NyIgZD0iTTQ0NjMgMTIxdjExMGgyMDdWMTFoLTIwN3pNMzAwLjUgNDcuNmMtMi43LjItMTIuMi44LTIxIDEuNC02OC4yIDQuNi0xMjMuOCAxOC4xLTE2MSAzOS4yQzYwLjYgMTIxIDMxLjggMTc0LjIgMjQgMjYzYy0yLjcgMzEuNS0yLjIgOTguMyAxLjEgMTM1QzM1IDUwOS40IDcyLjggNTU1LjEgMTg1IDU5MS41YzI0IDcuNyA1NS4xIDE1LjggOTguMiAyNS41IDIwIDQuNSA0Ny4xIDEwLjkgNjAuMyAxNC4yIDcxLjggMTggOTUgMzIuNSAxMDIuNSA2My45IDUuMiAyMS45IDUuMiA3NC4zLjEgOTcuOS05IDQwLjktMzYuMSA1NS44LTEwNS44IDU3LjgtOTEuNiAyLjgtMTc3LTkuMy0yNzkuNi0zOS41LTEwLjQtMy0xOS4yLTUuMS0xOS43LTQuNy0uOSAxLjEtMzYuMyAxNjUuNC0zNS43IDE2NiAxLjMgMS4zIDM0LjQgMTQuMyA0OS43IDE5LjUgNTkuOSAyMC41IDEyMy4yIDMzLjMgMTk3LjUgNDAgMTkuMiAxLjcgOTIuMSAyLjMgMTE3IDEgMTMzLjYtNy4yIDIxMC0zNi40IDI1My4xLTk2LjggMzQuMy00OCA0Ni44LTExNy4yIDQyLjUtMjM1LjMtMi4zLTYyLjgtNy41LTkyLjEtMjEuNi0xMjEuNS0yNy41LTU3LjItODktOTAuMS0yMzUuNS0xMjYuMS05Mi44LTIyLjgtMTA0LjktMjYuMS0xMjMuMy0zMy40LTI1LjctMTAuMy0zNy41LTIyLTQyLjctNDIuNS0zLjctMTQuNS01LjItNTUuOS0yLjktNzkgNC0zOS45IDIwLjEtNTYuMyA2MS45LTYzIDMzLjctNS40IDExNC42LTMuNiAxODQuNSA0LjEgMjcgMyA3NC41IDkuNyAxMTAuOSAxNS43IDE2LjMgMi43IDI2IDMuOSAyNi4yIDMuMi42LTEuOSAyMS41LTE3OS44IDIxLjEtMTgwLjEtLjctLjgtNDAuNS04LjUtNjMuNi0xMi4zQzUzMS43IDU4IDQ4OS40IDUzIDQzMy41IDQ4LjljLTE0LjEtMS0xMjIuMS0yLjEtMTMzLTEuM20yNjk5IDE0LjZjLTEgMi45LTI5MS41IDk1Ni44LTI5MS41IDk1Ny4zIDAgLjMgNTAuNS40IDExMi4yLjNsMTEyLjMtLjMgMjUuMi05MWMxMy44LTUwLjEgMjUuNC05MiAyNS44LTkzLjNsLjUtMi4yIDE2MC44LjIgMTYwLjcuMyAyNS41IDkyYzE0LjEgNTAuNiAyNS44IDkyLjYgMjYgOTMuMy40IDEgMjMuNCAxLjIgMTEyLjYgMWwxMTItLjMtMTQ2LjYtNDc5LTE0Ni43LTQ3OS0xNDQuMi0uM2MtMTE0LjgtLjItMTQ0LjMgMC0xNDQuNiAxbTE5OS4zIDM5MGMyOS44IDEwOS42IDU0LjIgMTk5LjYgNTQuMiAyMDAgMCAuNS00OS41LjgtMTEwLjEuOC05MS4zIDAtMTEwLS4yLTEwOS42LTEuMy4zLS44IDI1LjItOTAuOCA1NS4zLTIwMCAzMC4xLTEwOS4zIDU1LjEtMTk4LjcgNTUuNC0xOTguN3MyNSA4OS43IDU0LjggMTk5LjJNMTA2MiAzMDQuNmMtMTcuNC45LTM4LjYgMi43LTQ4LjUgNC0xMjkuOCAxNy41LTIwNS44IDg1LjktMjI2LjUgMjA0LjEtNS4yIDI5LjctNS4zIDMwLjktNS43IDE0Mi44LS41IDExMC4xLS4xIDEyNi43IDMuOCAxNTQuNCA3LjEgNTAuOCAyNSA5NS43IDUxLjQgMTI4LjYgMzcuMyA0Ni42IDk0LjggNzYuOSAxNjguOSA4OC45IDM0LjEgNS42IDU3LjQgNyAxMDIuMSA2LjMgNTMuNC0uOSA5OC41LTUuOSAxNTMuNS0xNy4yIDM5LjItOCA5Ny0yNC42IDk3LTI3LjcgMC0xLjItMjguOS0xNTAuNi0yOS42LTE1Mi45LS40LTEuNS0uOS0xLjUtNS4yLS4zLTQwLjggMTIuNC0xMTAuNSAyMy45LTE2Ni45IDI3LjUtMjQuOCAxLjYtNzcuNC43LTkxLjEtMS41LTQxLTYuNy02MC41LTIwLjQtNzAuMy00OS43LTQuMS0xMi40LTUuOS0yNS4yLTYuNi00OS4ybC0uNi0yMC43SDEzNjZ2LTczLjhjMC03Ni42LS45LTEwOS40LTMuNi0xMzMuNS0xMi4yLTExMC43LTYwLjUtMTc4LjgtMTQ5LjYtMjEwLjgtMjIuNS04LTUzLjYtMTQuNi04Mi44LTE3LjMtMTUuNS0xLjUtNTUuNy0yLjctNjgtMm0zOSAxNjMuNGMyMS43IDIuNyAzNS42IDguNiA0Ny4xIDIwIDE2LjMgMTYuMyAyMS4yIDMzLjMgMjEuMyA3NC41bC4xIDI0aC0xODFsLS4zLTE1Yy0uOC00MS4yIDYuMy02NC43IDI0LjYtODEuNyAxMS4zLTEwLjQgMjUuMy0xNy4xIDQyLjMtMjAuMiAxNC42LTIuNyAzMi0zLjMgNDUuOS0xLjZtMTI5Ni41LTE2Mi45Yy0zOS4zIDIuNy04NSAxNC42LTEzMC43IDM0LTE3LjggNy42LTQ0LjQgMjEtNTguMSAyOS4ybC0xMC44IDYuNS0xLjItMy4xYy0uNy0xLjgtNS42LTE0LjMtMTAuOC0yNy45bC05LjQtMjQuOEgyMDE0djUwNi41YzAgNDY0LjcuMSA1MDYuNSAxLjYgNTA2LjUuOSAwIDQ3LTYuMyAxMDIuNC0xNCA1NS41LTcuNyAxMDEuMy0xNCAxMDEuOS0xNCAuOCAwIDEuMS00Mi40IDEuMS0xNDQuOHYtMTQ0LjlsOC4zIDEuOGMzNS42IDcuOSA4MiAxNCAxMjguNSAxNyAyNC4yIDEuNSA3Mi42LjcgODguNy0xLjUgNjcuOS05LjUgMTE1LjMtMzYuNSAxNDYuOS04My42IDcuNi0xMS4zIDE5LjUtMzUuNyAyNC40LTUwIDcuNi0yMi4yIDEyLjUtNDYuMSAxNS45LTc2LjUgMS4zLTExLjYgMS42LTM0LjkgMi0xMzYgLjUtMTIzLjkgMC0xNTEuNC0zLjItMTc3LjUtMTAtODIuMi00MS42LTEzOS43LTk0LjctMTcyLjYtMjguOC0xNy45LTYyLjgtMjcuNy0xMDUuMy0zMC40LTE2LjUtMS4xLTE5LTEuMS0zNSAuMU0yMzY0IDQ4NWMxOS45IDEuOSAzMi40IDYuOCA0My4xIDE2LjhzMTYuNiAyMiAxOS40IDM5LjVjMi4yIDEzLjcgMi4yIDI0Mi4yIDAgMjU1LTQuOCAyNy4zLTE3LjkgNDQuNS00MC40IDUyLjctMTIgNC40LTIxLjUgNS40LTQ2LjEgNC43LTIyLjUtLjYtNDQuOS0yLjktNzEtNy4xLTE1LjctMi42LTM3LjEtNi44LTQ0LjItOC42bC0zLjgtMS4xVjUzOS4ybDQuMy0zLjdjNi42LTUuNyAyNi4yLTE4LjYgMzcuOC0yNC44IDMwLjItMTYuMiA1Ny43LTI0LjQgODguNC0yNi42IDEuMSAwIDYuNy40IDEyLjUuOW0xNzE0LjUtMTgwLjRjLTU5IDMuNS0xMzQuNCAyOC4zLTE5My43IDYzLjdsLTEwLjcgNi40LTQuOS0xMi42Yy0yLjctNi45LTcuNS0xOS41LTEwLjctMjcuOWwtNS45LTE1LjJIMzY5MHY1MDYuNWMwIDQ2OCAuMSA1MDYuNSAxLjYgNTA2LjUuOSAwIDQ3LjEtNi4zIDEwMi42LTE0czEwMS4zLTE0IDEwMS44LTE0Yy42IDAgMS01My4zIDEtMTQ0Ljh2LTE0NC44bDE4LjMgMy43YzMwLjIgNi4xIDU2LjUgOS43IDk3LjcgMTMuNiAyMy41IDIuMiA4OC45IDIuNSAxMDUgLjUgMzEtMy45IDU5LjUtMTIgODIuOS0yMy45IDE5LjItOS42IDMwLjktMTguMSA0Ni4xLTMzLjMgMjkuMi0yOS4yIDQ3LTY1LjEgNTctMTE1IDcuNC0zNyA4LTUxLjMgOC0xOTEgMC0xMzguOS0uNi0xNTIuOC04LTE5MC0yMC4zLTEwMi04MC42LTE2MC44LTE3Ny0xNzIuNC0xMy0xLjUtMzguMS0yLjYtNDguNS0yTTQwNDEgNDg1YzEyLjYgMS4yIDE5LjggMy4yIDI5LjcgOCAxNS4zIDcuNSAyNS4yIDIwLjggMzAuNiA0MWwyLjIgOC41djI1M2wtMi4yIDguNGMtNi4yIDIzLjEtMjAuMiAzOS00MC4xIDQ1LjUtMTMuMSA0LjMtMTkuNyA0LjktNDQuMiA0LjMtMjIuMi0uNi0zNi4xLTEuOS02My41LTUuOC0xMy43LTItNDUuMy04LTUyLjctMTBsLTMuOC0xVjUzOWw1LjgtNC41YzMyLjctMjYuMSA3OC44LTQ2IDExNC41LTQ5LjQgMTEuNi0xLjIgMTMuMS0xLjIgMjMuNy0uMU0xODc5IDMwNy42Yy00NS4xIDExLjgtMTE1LjcgNDIuNi0xNjIuNSA3MC45LTcuOCA0LjgtMTIuMiA2LjktMTIuNiA2LjItLjMtLjctMy43LTE1LjctNy40LTMzLjVsLTYuOC0zMi4ySDE1MTd2NzAxaDIwN1Y1OTIuMmwxMC44LTdjMzUuNy0yMy4xIDk3LjctNTMuNyAxNTguNC03OC4yIDguNC0zLjQgMTUuNi02LjUgMTYtNi44LjQtLjQtMy4xLTQzLjctNy44LTk2LjItNC42LTUyLjUtOC40LTk2LjMtOC40LTk3LjMgMC0yLjMtMi40LTIuMi0xNCAuOW0yNTg0IDM2MS45VjEwMjBoMjA3VjMxOWgtMjA3eiIvPjwvc3ZnPg=="},"displayName":"SerpApi (Google Search)","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1247,"icon":"fa:comments","name":"@n8n/n8n-nodes-langchain.chatTrigger","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chattrigger/"}]},"categories":["Core Nodes","Langchain"]}},"group":"[\"trigger\"]","defaults":{"name":"When chat message received"},"iconData":{"icon":"comments","type":"icon"},"displayName":"Chat Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"},{"id":26,"name":"Langchain"}]},{"id":1250,"icon":"file:openAi.svg","name":"@n8n/n8n-nodes-langchain.openAi","codex":{"data":{"alias":["LangChain","ChatGPT","Sora","DallE","whisper","audio","transcribe","tts","assistant"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-langchain.openai/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Agents","Miscellaneous","Root Nodes"]}}},"group":"[\"transform\"]","defaults":{"name":"OpenAI"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg1IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NiAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MSA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K"},"displayName":"OpenAI","typeVersion":2,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1310,"icon":"fa:robot","name":"@n8n/n8n-nodes-langchain.agentTool","codex":{"data":{"alias":["LangChain","Chat","Conversational","Plan and Execute","ReAct","Tools"],"categories":["AI","Langchain"],"subcategories":{"AI":["Tools"],"Tools":["Recommended Tools"]}}},"group":"[\"transform\"]","defaults":{"name":"AI Agent Tool","color":"#404040"},"iconData":{"icon":"robot","type":"icon"},"displayName":"AI Agent Tool","typeVersion":3,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]}],"categories":[{"id":43,"name":"Personal Productivity"},{"id":47,"name":"AI Chatbot"}],"image":[]}}