{"workflow":{"id":13152,"name":"Gamify fitness tracking with GPT-4o-mini multi-agents and Google Sheets","views":44,"recentViews":0,"totalViews":44,"createdAt":"2026-02-01T15:05:32.308Z","description":"Title:\nGamify fitness tracking with AI multi-agents and Google Sheets\n## Overview\nThis template transforms fitness tracking into a gamified pirate adventure using AI multi-agents. It scores your health activities and assigns a dynamic \"Bounty\" reward.\n\n## How it works\n1. **Fetch Data**: Retrieves your current \"Bounty\" from Google Sheets.\n2. **AI Analysis**: A central AI Scorer evaluates your report (meals, workouts, or injuries) and assigns a score from 0-100.\n3. **Logic**: JavaScript calculates the bounty increase based on the AI's score.\n4. **Routing**: The Switch node routes you to a specialized agent (Chef, Samurai, Doctor, or Navigator).\n5. **Logging**: Saves the conversation to Google Sheets for progress tracking.\n\n## Setup steps\n1. **Google Sheets**: Create a sheet with two tabs:\n   - `Profile` (Columns: ID, Total_Bounty)\n   - `Log` (Columns: Date, Crew, Inquiry, Response)\n2. **Spreadsheet ID**: Replace `YOUR_SPREADSHEET_ID` in all 6 Google Sheets nodes.\n3. **Credentials**: Connect your Google Sheets and AI (OpenRouter/OpenAI) accounts.","workflow":{"id":"aeLHF60nDK44X0Qg","meta":{"instanceId":"d268c8395d221f48084db7825ba19a0ea56302d1ee64fed53bbcff16e8562c88","templateCredsSetupCompleted":true},"name":"Gamify fitness tracking with AI multi-agents and Google Sheets","tags":[],"nodes":[{"id":"6dddaa54-8c31-4f0c-957f-0ec667467054","name":"When chat message received","type":"@n8n/n8n-nodes-langchain.chatTrigger","position":[-2096,320],"webhookId":"59a3f29b-cd3c-41a8-93a7-226a72249f02","parameters":{"options":{}},"typeVersion":1.4},{"id":"376adaf9-f32b-4340-ace6-2adca92777db","name":"OpenRouter Chat Model","type":"@n8n/n8n-nodes-langchain.lmChatOpenRouter","position":[-864,832],"parameters":{"model":"openai/gpt-4o-mini","options":{}},"typeVersion":1},{"id":"f68af433-7f89-469c-b505-7d13df6e3a5f","name":"Switch","type":"n8n-nodes-base.switch","position":[-592,288],"parameters":{"rules":{"values":[{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"3d461cb9-d0f3-4e4a-a690-f4319bbdf2f1","operator":{"type":"string","operation":"equals"},"leftValue":"={{ $('Bounty Calculator (JS Logic)').item.json.ai_role }}","rightValue":"chef"}]}},{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"93c29ab8-f03a-4bed-b26f-293780f96d13","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $('Bounty Calculator (JS Logic)').item.json.ai_role }}","rightValue":"samurai"}]}},{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"30586f69-a6a0-442d-a77a-456360d92e66","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $('Bounty Calculator (JS Logic)').item.json.ai_role }}","rightValue":"doctor"}]}},{"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"a8c232e8-258b-44fd-95c9-74d1f188ecbc","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $('Bounty Calculator (JS Logic)').item.json.ai_role }}","rightValue":"other"}]}}]},"options":{}},"typeVersion":3.4},{"id":"f183455e-69d5-4fb4-86ac-a58fde7e2a44","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-2176,192],"parameters":{"color":7,"width":528,"height":384,"content":"Step 1: Input & Data"},"typeVersion":1},{"id":"494f98c8-2dea-4508-94c9-f171c7d6ee58","name":"Chef Agent","type":"@n8n/n8n-nodes-langchain.chainLlm","position":[144,240],"parameters":{"text":"=You are the first-class cook of a pirate ship. \n【Personality】\n- Passionate about nutrition and crew health. \n- Be poetic and charming to \"ladies\" and gruff but professional to \"lads.\"\n- Never use offensive insults. Use pirate slang like \"scallywag\" or \"matey\" instead.\n\n【Tasks】\n1. React to the input: {{ $('When chat message received').first().json.chatInput }}\n2. Suggest a pirate-style high-protein recipe.\n3. Confirm the new bounty: {{ $('Bounty Calculator (JS Logic)').first().json.new_bounty }} Berries.\n\nEnd with: \"Eat well and survive the Grand Line! Our journey depends on your strength!\"","batching":{},"promptType":"define"},"typeVersion":1.7},{"id":"3b363cf4-95f6-4ca9-b366-8b0aad1364de","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[-304,192],"parameters":{"color":2,"width":960,"height":768,"content":"Step 4: Agent Responses"},"typeVersion":1},{"id":"75ae9199-e7a2-4e30-b48e-09b34fdfcb34","name":"Samurai Agent","type":"@n8n/n8n-nodes-langchain.chainLlm","position":[144,400],"parameters":{"text":"=You are a stoic swordsman aiming to be the world's strongest.\n【Personality】\n- Extremely serious about training and discipline.\n- Short-spoken and tough, but respects hard work.\n- Terribly bad with directions (always ends up lost).\n- NEVER use toxic language. Say \"Focus on your training\" instead of \"Shut up.\"\n\n【Tasks】\n1. React to the input: {{ $('When chat message received').first().json.chatInput }}\n2. Command a specific bodyweight exercise.\n3. Mention the bounty: {{ $('Bounty Calculator (JS Logic)').first().json.new_bounty }} Berries.\n\nEnd by asking: \"By the way... which way is the training room? I think I'm lost again.\"","batching":{},"promptType":"define"},"typeVersion":1.7},{"id":"85845c9d-9f47-4071-a71c-d0790da18c5f","name":"Get row(s) in sheet","type":"n8n-nodes-base.googleSheets","position":[-1792,320],"parameters":{"options":{},"filtersUI":{"values":[{"lookupColumn":"=ID"}]},"sheetName":{"__rl":true,"mode":"id","value":"YOUR_SPREADSHEET_ID"},"documentId":{"__rl":true,"mode":"id","value":"YOUR_SPREADSHEET_ID"}},"typeVersion":4.7},{"id":"8979d8ee-2aac-4c08-8d53-197542bb525e","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[-816,192],"parameters":{"color":5,"width":512,"height":288,"content":"Step 3: Intent Routing"},"typeVersion":1},{"id":"390cc928-bbba-4e3d-be2e-dd211bb26baa","name":"Navigator Agent","type":"@n8n/n8n-nodes-langchain.chainLlm","position":[160,800],"parameters":{"text":"=You are a smart navigator who loves gold and oranges.\n【Personality】\n- Strict about the voyage's schedule. \n- Sees the user as an \"investment.\"\n- Gently scold the user for off-topic chat: {{ $('When chat message received').item.json.chatInput }}\n\n【Tasks】\n1. Tell them to get back to eating or training so their bounty {{ $('Bounty Calculator (JS Logic)').first().json.new_bounty }} keeps growing.\n2. Remind them that a weak pirate is a liability to the ship!\n\nEnd with: \"Hurry up! I'm expecting a big commission from your next bounty increase!\"","batching":{},"promptType":"define"},"typeVersion":1.7},{"id":"87fdb6cc-84b5-48df-9827-625722590698","name":"Doctor Agent","type":"@n8n/n8n-nodes-langchain.chainLlm","position":[160,624],"parameters":{"text":"=You are a kind reindeer doctor on a pirate ship.\n【Personality】\n- Pure-hearted and loves cotton candy. \n- When complimented, dance and say \"That doesn't make me happy at all, you scoundrel! ♡\" (while blushing).\n- When surprised, hide the wrong way so your whole body is visible.\n\n【Tasks】\n1. Advise rest and recovery for: {{ $('When chat message received').item.json.chatInput }}\n2. Explain why rest is part of training.\n3. Mention the bounty {{ $('Bounty Calculator (JS Logic)').first().json.new_bounty }} Berries as a \"get-well gift.\"\n\nEnd by asking: \"Does anyone have any cotton candy?\"","batching":{},"promptType":"define"},"typeVersion":1.7},{"id":"a1deedd6-0e24-4fcb-a9ea-7f9d736d93ec","name":"AI Scorer & Intent Classifier","type":"@n8n/n8n-nodes-langchain.chainLlm","position":[-1536,320],"parameters":{"text":"=You are a \"Bounty Appraiser\" from the Navy Headquarters. Analyze the user's health report and output ONLY this JSON format:\n\n{\n  \"role\": \"chef\" (food/calories), \"samurai\" (workout/training), \"doctor\" (injury/fatigue), or \"other\" (chat),\n  \"score\": 0-100 (degree of effort or healthiness)\n}\n\n■ Scoring Criteria:\n- High protein/Healthy meals: 90. Junk food: 20.\n- Intense workout: 100. Skipping: 10.\n- Injury/Rest: 50-80 (Recovery is a vital part of training).\n\nUser Report: {{ $('When chat message received').item.json.chatInput }}\n\nNote: Return ONLY raw JSON. No backticks, no markdown, no conversational text.","batching":{},"promptType":"define"},"typeVersion":1.7},{"id":"85219555-43a3-4462-bae8-d18c1688f2e8","name":"Bounty Calculator (JS Logic)","type":"n8n-nodes-base.set","position":[-1168,320],"parameters":{"options":{},"assignments":{"assignments":[{"id":"a231e0e5-0e50-4e16-bdfc-7e541c9b8b05","name":"new_bounty","type":"number","value":"={{ Number($node[\"Get row(s) in sheet\"].json.Total_Bounty || 0) + (Number(JSON.parse($json.text.replace(/```json|```/g, \"\").trim()).score || 0) * 100000) }}"},{"id":"81261f00-592a-43ad-a960-c3580f5d52be","name":"ai_role","type":"string","value":"={{ JSON.parse($node[\"AI Scorer & Intent Classifier\"].json.text.replace(/```json|```/g, \"\").trim()).role }}"}]}},"typeVersion":3.4},{"id":"7db7f66c-91ef-4b08-81a6-2da5bd1c46e7","name":"Sticky Note6","type":"n8n-nodes-base.stickyNote","position":[-3008,-224],"parameters":{"width":816,"height":784,"content":"Title:\nGamify fitness tracking with AI multi-agents and Google Sheets\n## Overview\nThis template transforms fitness tracking into a gamified pirate adventure using AI multi-agents. It scores your health activities and assigns a dynamic \"Bounty\" reward.\n\n## How it works\n1. **Fetch Data**: Retrieves your current \"Bounty\" from Google Sheets.\n2. **AI Analysis**: A central AI Scorer evaluates your report (meals, workouts, or injuries) and assigns a score from 0-100.\n3. **Logic**: JavaScript calculates the bounty increase based on the AI's score.\n4. **Routing**: The Switch node routes you to a specialized agent (Chef, Samurai, Doctor, or Navigator).\n5. **Logging**: Saves the conversation to Google Sheets for progress tracking.\n\n## Setup steps\n1. **Google Sheets**: Create a sheet with two tabs:\n   - `Profile` (Columns: ID, Total_Bounty)\n   - `Log` (Columns: Date, Crew, Inquiry, Response)\n2. **Spreadsheet ID**: Replace `YOUR_SPREADSHEET_ID` in all 6 Google Sheets nodes.\n3. **Credentials**: Connect your Google Sheets and AI (OpenRouter/OpenAI) accounts."},"typeVersion":1},{"id":"737df75e-9a75-487b-afc3-7e5a64c2c4c6","name":"Sticky Note7","type":"n8n-nodes-base.stickyNote","position":[-1648,192],"parameters":{"color":7,"width":832,"height":384,"content":"Step 2: AI Appraisal "},"typeVersion":1},{"id":"defed2a9-8285-4023-8366-e793f9249fcb","name":"Update User Bounty","type":"n8n-nodes-base.googleSheets","position":[-992,320],"parameters":{"columns":{"value":{"ID":"1","Total_Bounty":"={{ $json.new_bounty }}"},"schema":[{"id":"ID","type":"string","display":true,"removed":false,"required":false,"displayName":"ID","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Total_Bounty","type":"string","display":true,"required":false,"displayName":"Total_Bounty","defaultMatch":false,"canBeUsedToMatch":true},{"id":"row_number","type":"number","display":true,"removed":true,"readOnly":true,"required":false,"displayName":"row_number","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":["ID"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"id","value":"YOUR_SHEET_NAME_OR_ID"},"documentId":{"__rl":true,"mode":"id","value":"YOUR_SPREADSHEET_ID"}},"credentials":{"googleSheetsOAuth2Api":{"id":"EQtmEpf8vARis1wx","name":"Google Sheets account"}},"typeVersion":4.7,"alwaysOutputData":true},{"id":"b066f2a6-62a6-4fc5-b321-091c6cd71efd","name":"Save Samurai Log","type":"n8n-nodes-base.googleSheets","position":[464,400],"parameters":{"columns":{"value":{"Crew":"Samurai","Date":"={{ $now }}","Inquiry":"={{ $('When chat message received').first().json.chatInput }}","Response":"={{ $json.text }}"},"schema":[{"id":"Date","type":"string","display":true,"required":false,"displayName":"Date","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Crew","type":"string","display":true,"required":false,"displayName":"Crew","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Inquiry","type":"string","display":true,"required":false,"displayName":"Inquiry","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Response","type":"string","display":true,"removed":false,"required":false,"displayName":"Response","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"id","value":"YOUR_SHEET_NAME_OR_ID"},"documentId":{"__rl":true,"mode":"id","value":"YOUR_SPREADSHEET_ID"}},"credentials":{"googleSheetsOAuth2Api":{"id":"EQtmEpf8vARis1wx","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"5d6edc0b-1647-403a-a4c9-976fb08bd845","name":"Save Doctor Log","type":"n8n-nodes-base.googleSheets","position":[464,624],"parameters":{"columns":{"value":{"Crew":"Doctor","Date":"={{ $now }}","Inquiry":"={{ $('When chat message received').first().json.chatInput }}","Response":"={{ $json.text }}"},"schema":[{"id":"Date","type":"string","display":true,"removed":false,"required":false,"displayName":"Date","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Crew","type":"string","display":true,"removed":false,"required":false,"displayName":"Crew","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Inquiry","type":"string","display":true,"removed":false,"required":false,"displayName":"Inquiry","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Response","type":"string","display":true,"removed":false,"required":false,"displayName":"Response","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"id","value":"YOUR_SHEET_NAME_OR_ID"},"documentId":{"__rl":true,"mode":"id","value":"YOUR_SPREADSHEET_ID"}},"credentials":{"googleSheetsOAuth2Api":{"id":"EQtmEpf8vARis1wx","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"3557055c-91ba-4c03-8c7b-dfe733c33969","name":"Save Navigator Log","type":"n8n-nodes-base.googleSheets","position":[464,800],"parameters":{"columns":{"value":{"Crew":"Navigator","Date":"={{ $now }}","Inquiry":"={{ $('When chat message received').first().json.chatInput }}","Response":"={{ $json.text }}"},"schema":[{"id":"Date","type":"string","display":true,"removed":false,"required":false,"displayName":"Date","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Crew","type":"string","display":true,"removed":false,"required":false,"displayName":"Crew","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Inquiry","type":"string","display":true,"removed":false,"required":false,"displayName":"Inquiry","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Response","type":"string","display":true,"removed":false,"required":false,"displayName":"Response","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"id","value":"YOUR_SHEET_NAME_OR_ID"},"documentId":{"__rl":true,"mode":"id","value":"YOUR_SPREADSHEET_ID"}},"credentials":{"googleSheetsOAuth2Api":{"id":"EQtmEpf8vARis1wx","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"14730ff4-6a70-4e66-b4ab-924f9147cf8f","name":"Save Chef Log","type":"n8n-nodes-base.googleSheets","position":[464,240],"parameters":{"columns":{"value":{"Crew":"Chef","Date":"={{ $now }}","Inquiry":"={{ $('When chat message received').first().json.chatInput }}","Response":"={{ $json.text }}"},"schema":[{"id":"Date","type":"string","display":true,"required":false,"displayName":"Date","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Crew","type":"string","display":true,"required":false,"displayName":"Crew","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Inquiry","type":"string","display":true,"required":false,"displayName":"Inquiry","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Response","type":"string","display":true,"removed":false,"required":false,"displayName":"Response","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"id","value":"YOUR_SHEET_NAME_OR_ID"},"documentId":{"__rl":true,"mode":"id","value":"YOUR_SPREADSHEET_ID"}},"credentials":{"googleSheetsOAuth2Api":{"id":"EQtmEpf8vARis1wx","name":"Google Sheets account"}},"typeVersion":4.7}],"active":false,"pinData":{},"settings":{"executionOrder":"v1"},"versionId":"30944977-75f3-4730-bc23-c0c854d9acb7","connections":{"Switch":{"main":[[{"node":"Chef Agent","type":"main","index":0}],[{"node":"Samurai Agent","type":"main","index":0}],[{"node":"Doctor Agent","type":"main","index":0}],[{"node":"Navigator Agent","type":"main","index":0}]]},"Chef Agent":{"main":[[{"node":"Save Chef Log","type":"main","index":0}]]},"Doctor Agent":{"main":[[{"node":"Save Doctor Log","type":"main","index":0}]]},"Samurai Agent":{"main":[[{"node":"Save Samurai Log","type":"main","index":0}]]},"Navigator Agent":{"main":[[{"node":"Save Navigator Log","type":"main","index":0}]]},"Update User Bounty":{"main":[[{"node":"Switch","type":"main","index":0}]]},"Get row(s) in sheet":{"main":[[{"node":"AI Scorer & Intent Classifier","type":"main","index":0}]]},"OpenRouter Chat Model":{"ai_languageModel":[[{"node":"AI Scorer & Intent Classifier","type":"ai_languageModel","index":0},{"node":"Chef Agent","type":"ai_languageModel","index":0},{"node":"Samurai Agent","type":"ai_languageModel","index":0},{"node":"Navigator Agent","type":"ai_languageModel","index":0},{"node":"Doctor Agent","type":"ai_languageModel","index":0}]]},"When chat message received":{"main":[[{"node":"Get row(s) in sheet","type":"main","index":0}]]},"Bounty Calculator (JS Logic)":{"main":[[{"node":"Update User Bounty","type":"main","index":0}]]},"AI Scorer & Intent Classifier":{"main":[[{"node":"Bounty Calculator (JS Logic)","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":20,"nodeTypes":{"n8n-nodes-base.set":{"count":1},"n8n-nodes-base.switch":{"count":1},"n8n-nodes-base.stickyNote":{"count":5},"n8n-nodes-base.googleSheets":{"count":6},"@n8n/n8n-nodes-langchain.chainLlm":{"count":5},"@n8n/n8n-nodes-langchain.chatTrigger":{"count":1},"@n8n/n8n-nodes-langchain.lmChatOpenRouter":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"TAKUTO ISHIKAWA","username":"onepiceace","bio":"","verified":true,"links":[""],"avatar":"https://gravatar.com/avatar/e56014588b58cfd4e84ccdff3fc526acb7b46d95e1b150ff658a445c696c97b5?r=pg&d=retro&size=200"},"nodes":[{"id":18,"icon":"file:googleSheets.svg","name":"n8n-nodes-base.googleSheets","codex":{"data":{"alias":["CSV","Sheet","Spreadsheet","GS"],"resources":{"generic":[{"url":"https://n8n.io/blog/love-at-first-sight-ricardos-n8n-journey/","icon":"❤️","label":"Love at first sight: Ricardo’s n8n journey"},{"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-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/supercharging-your-conference-registration-process-with-n8n/","icon":"🎫","label":"Supercharging your conference registration process with n8n"},{"url":"https://n8n.io/blog/creating-triggers-for-n8n-workflows-using-polling/","icon":"⏲","label":"Creating triggers for n8n workflows using polling"},{"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/migrating-community-metrics-to-orbit-using-n8n/","icon":"📈","label":"Migrating Community Metrics to Orbit using n8n"},{"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/your-business-doesnt-need-you-to-operate/","icon":" 🖥️","label":"Hey founders! Your business doesn't need you to operate"},{"url":"https://n8n.io/blog/how-honest-burgers-use-automation-to-save-100k-per-year/","icon":"🍔","label":"How Honest Burgers Use Automation to Save $100k per year"},{"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/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-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/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googlesheets/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"}]},"categories":["Data & Storage","Productivity"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"input\",\"output\"]","defaults":{"name":"Google Sheets"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGZpbGw9IiMyOEI0NDYiIGQ9Ik0zNS42OSAxIDUyIDE3LjIyNXYzOS4wODdhMy42NyAzLjY3IDAgMCAxLTEuMDg0IDIuNjFBMy43IDMuNyAwIDAgMSA0OC4yOTMgNjBIMTIuNzA3YTMuNyAzLjcgMCAwIDEtMi42MjMtMS4wNzhBMy42NyAzLjY3IDAgMCAxIDkgNTYuMzEyVjQuNjg4YTMuNjcgMy42NyAwIDAgMSAxLjA4NC0yLjYxQTMuNyAzLjcgMCAwIDEgMTIuNzA3IDF6Ii8+PHBhdGggZmlsbD0iIzZBQ0U3QyIgZD0iTTM1LjY5IDEgNTIgMTcuMjI1SDM5LjM5N2MtMi4wNTQgMC0zLjcwNy0xLjgyOS0zLjcwNy0zLjg3MnoiLz48cGF0aCBmaWxsPSIjMjE5QjM4IiBkPSJNMzkuMjExIDE3LjIyNSA1MiAyMi40OHYtNS4yNTV6Ii8+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTIwLjEyIDMxLjk3NWMwLS44MTcuNjYyLTEuNDc1IDEuNDgzLTEuNDc1aDE3Ljc5NGMuODIxIDAgMS40ODIuNjU4IDEuNDgyIDEuNDc1djE1LjQ4N2MwIC44MTgtLjY2MSAxLjQ3NS0xLjQ4MiAxLjQ3NUgyMS42MDNhMS40NzYgMS40NzYgMCAwIDEtMS40ODItMS40NzRWMzEuOTc0em0yLjIyNSAxLjQ3NWg2LjY3MnYyLjIxMmgtNi42NzJ6bTAgNS4xNjJoNi42NzJ2Mi4yMTNoLTYuNjcyem0wIDUuMTYzaDYuNjcydjIuMjEyaC02LjY3MnptOS42MzgtMTAuMzI1aDYuNjcydjIuMjEyaC02LjY3MnptMCA1LjE2Mmg2LjY3MnYyLjIxM2gtNi42NzJ6bTAgNS4xNjNoNi42NzJ2Mi4yMTJoLTYuNjcyeiIvPjxwYXRoIGZpbGw9IiMyOEI0NDYiIGQ9Ik0zNC42OSAwIDUxIDE2LjIyNXYzOS4wODdhMy42NyAzLjY3IDAgMCAxLTEuMDg0IDIuNjFBMy43IDMuNyAwIDAgMSA0Ny4yOTMgNTlIMTEuNzA3YTMuNyAzLjcgMCAwIDEtMi42MjMtMS4wNzhBMy42NyAzLjY3IDAgMCAxIDggNTUuMzEyVjMuNjg4YTMuNjcgMy42NyAwIDAgMSAxLjA4NC0yLjYxQTMuNyAzLjcgMCAwIDEgMTEuNzA3IDB6Ii8+PHBhdGggZmlsbD0iIzZBQ0U3QyIgZD0iTTM0LjY5IDAgNTEgMTYuMjI1SDM4LjM5N2MtMi4wNTQgMC0zLjcwNy0xLjgyOS0zLjcwNy0zLjg3MnoiLz48cGF0aCBmaWxsPSIjMjE5QjM4IiBkPSJNMzguMjExIDE2LjIyNSA1MSAyMS40OHYtNS4yNTV6Ii8+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTE5LjEyIDMwLjk3NWMwLS44MTcuNjYyLTEuNDc1IDEuNDgzLTEuNDc1aDE3Ljc5NGMuODIxIDAgMS40ODIuNjU4IDEuNDgyIDEuNDc1djE1LjQ4N2MwIC44MTgtLjY2MSAxLjQ3NS0xLjQ4MiAxLjQ3NUgyMC42MDNhMS40NzYgMS40NzYgMCAwIDEtMS40ODItMS40NzRWMzAuOTc0em0yLjIyNSAxLjQ3NWg2LjY3MnYyLjIxMmgtNi42NzJ6bTAgNS4xNjJoNi42NzJ2Mi4yMTNoLTYuNjcyem0wIDUuMTYzaDYuNjcydjIuMjEyaC02LjY3MnptOS42MzgtMTAuMzI1aDYuNjcydjIuMjEyaC02LjY3MnptMCA1LjE2Mmg2LjY3MnYyLjIxM2gtNi42NzJ6bTAgNS4xNjNoNi42NzJ2Mi4yMTJoLTYuNjcyeiIvPjwvZz48L3N2Zz4="},"displayName":"Google Sheets","typeVersion":5,"nodeCategories":[{"id":3,"name":"Data & Storage"},{"id":4,"name":"Productivity"}]},{"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":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":1123,"icon":"fa:link","name":"@n8n/n8n-nodes-langchain.chainLlm","codex":{"data":{"alias":["LangChain"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.chainllm/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Chains","Root Nodes"]}}},"group":"[\"transform\"]","defaults":{"name":"Basic LLM Chain","color":"#909298"},"iconData":{"icon":"link","type":"icon"},"displayName":"Basic LLM Chain","typeVersion":2,"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":1281,"icon":"file:openrouter.svg","name":"@n8n/n8n-nodes-langchain.lmChatOpenRouter","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenrouter/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Language Models","Root Nodes"],"Language Models":["Chat Models (Recommended)"]}}},"group":"[\"transform\"]","defaults":{"name":"OpenRouter Chat Model"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjOTRBM0I4IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgdmlld0JveD0iMCAwIDI0IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjx0aXRsZT5PcGVuUm91dGVyPC90aXRsZT48cGF0aCBkPSJNMTYuODA0IDEuOTU3bDcuMjIgNC4xMDV2LjA4N0wxNi43MyAxMC4yMWwuMDE3LTIuMTE3LS44MjEtLjAzYy0xLjA1OS0uMDI4LTEuNjExLjAwMi0yLjI2OC4xMS0xLjA2NC4xNzUtMi4wMzguNTc3LTMuMTQ3IDEuMzUyTDguMzQ1IDExLjAzYy0uMjg0LjE5NS0uNDk1LjMzNi0uNjguNDU1bC0uNTE1LjMyMi0uMzk3LjIzNC4zODUuMjMuNTMuMzM4Yy40NzYuMzE0IDEuMTcuNzk2IDIuNzAxIDEuODY2IDEuMTEuNzc1IDIuMDgzIDEuMTc3IDMuMTQ3IDEuMzUybC4zLjA0NWMuNjk0LjA5MSAxLjM3NS4wOTQgMi44MjUuMDMzbC4wMjItMi4xNTkgNy4yMiA0LjEwNXYuMDg3TDE2LjU4OSAyMmwuMDE0LTEuODYyLS42MzUuMDIyYy0xLjM4Ni4wNDItMi4xMzcuMDAyLTMuMTM4LS4xNjItMS42OTQtLjI4LTMuMjYtLjkyNi00Ljg4MS0yLjA1OWwtMi4xNTgtMS41YTIxLjk5NyAyMS45OTcgMCAwMC0uNzU1LS40OThsLS40NjctLjI4YTU1LjkyNyA1NS45MjcgMCAwMC0uNzYtLjQzQzIuOTA4IDE0LjczLjU2MyAxNC4xMTYgMCAxNC4xMTZWOS44ODhsLjE0LjAwNGMuNTY0LS4wMDcgMi45MS0uNjIyIDMuODA5LTEuMTI0bDEuMDE2LS41OC40MzgtLjI3NGMuNDI4LS4yOCAxLjA3Mi0uNzI2IDIuNjg2LTEuODUzIDEuNjIxLTEuMTMzIDMuMTg2LTEuNzggNC44ODEtMi4wNTkgMS4xNTItLjE5IDEuOTc0LS4yMTMgMy44MTQtLjEzOGwuMDItMS45MDd6Ij48L3BhdGg+PC9zdmc+Cg=="},"displayName":"OpenRouter Chat Model","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]}],"categories":[{"id":43,"name":"Personal Productivity"},{"id":47,"name":"AI Chatbot"}],"image":[]}}