{"workflow":{"id":13497,"name":"Sync Toggl Track time entries with Google Sheets detail and summary tabs","views":2,"recentViews":0,"totalViews":2,"createdAt":"2026-02-18T17:51:47.850Z","description":"## How it works\n\nThis workflow syncs Toggl Track time entries to Google Sheets and creates monthly tabs automatically.\n\nIt fetches:\n- time entries from Toggl\n- project metadata from Toggl\n\nThen it:\n- filters entries by your selected project name\n- writes detailed rows to a **Detail Sheet**\n- writes daily aggregated rows to a **Summary Sheet**\n- creates/removes monthly tabs to keep both sheets clean and aligned\n\n## Set up steps\n\nEstimated setup time: 10–15 minutes.\n\n1. Configure **HTTP Basic Auth** for Toggl:\n   - Username: your Toggl API token\n   - Password: `api_token`\n2. Configure **Google Sheets OAuth2** credentials.\n3. In **Set Date Range**, set `start_date`.\n4. In **Process Data**, set:\n   - `PROJECT_NAME`\n   - `TIMEZONE`\n5. Replace placeholders in workflow nodes:\n   - `YOUR_DETAIL_SPREADSHEET_ID`\n   - `YOUR_SUMMARY_SPREADSHEET_ID`\n\nDetailed node-by-node guidance is included in sticky notes inside the workflow.","workflow":{"id":"nQrZgOOKkRdMkFsl","meta":{"instanceId":"6a21a99d0a76c0160d347b1d33dc734fd146b5c100733abe9983f051cd2b04bb"},"name":"Sync Toggl Track time entries with Google Sheets monthly tabs","tags":[],"nodes":[{"id":"manual-trigger","name":"Start","type":"n8n-nodes-base.manualTrigger","position":[0,-136],"parameters":{},"typeVersion":1},{"id":"set-dates","name":"Set Date Range","type":"n8n-nodes-base.set","position":[224,-136],"parameters":{"options":{},"assignments":{"assignments":[{"id":"start_date","name":"start_date","type":"string","value":"=2025-01-01"},{"id":"end_date","name":"end_date","type":"string","value":"={{ $now.toFormat('yyyy-MM-dd') }}"}]}},"typeVersion":3.4},{"id":"http-time-entries","name":"Fetch Time Entries","type":"n8n-nodes-base.httpRequest","maxTries":3,"position":[448,-256],"parameters":{"url":"https://api.track.toggl.com/api/v9/me/time_entries","options":{"response":{"response":{"responseFormat":"json"}}},"sendQuery":true,"authentication":"genericCredentialType","genericAuthType":"httpBasicAuth","queryParameters":{"parameters":[{"name":"start_date","value":"={{ $json.start_date }}"},{"name":"end_date","value":"={{ $json.end_date }}"}]}},"credentials":{"httpBasicAuth":{"id":"","name":""}},"retryOnFail":true,"typeVersion":4.3,"waitBetweenTries":1000},{"id":"http-projects","name":"Fetch Projects","type":"n8n-nodes-base.httpRequest","maxTries":3,"position":[448,-64],"parameters":{"url":"https://api.track.toggl.com/api/v9/me/projects","options":{"response":{"response":{"responseFormat":"json"}}},"authentication":"genericCredentialType","genericAuthType":"httpBasicAuth"},"credentials":{"httpBasicAuth":{"id":"","name":""}},"retryOnFail":true,"typeVersion":4.3,"waitBetweenTries":1000},{"id":"merge-data","name":"Merge With Projects","type":"n8n-nodes-base.merge","position":[672,-136],"parameters":{"mode":"combine","options":{"fuzzyCompare":true,"clashHandling":{"values":{"mergeMode":"shallowMerge","resolveClash":"preferInput1"}}},"advanced":true,"joinMode":"enrichInput1","mergeByFields":{"values":[{"field1":"project_id","field2":"id"}]}},"typeVersion":3.2},{"id":"code-process","name":"Process Data","type":"n8n-nodes-base.code","position":[896,-136],"parameters":{"jsCode":"// ===== CONFIGURATION =====\nconst PROJECT_NAME = 'YOUR_PROJECT_NAME';\nconst TIMEZONE = 'Europe/Warsaw';\n// =========================\n\nconst items = $input.all();\nconst allEntries = [];\nconst dailyGroups = {};\nconst monthsSet = new Set();\n\nfor (const item of items) {\n  const d = item.json;\n  if (d.name !== PROJECT_NAME) continue;\n  if (!d.start || !d.stop || d.duration < 0) continue;\n  const startDt = DateTime.fromISO(d.start).setZone(TIMEZONE);\n  const stopDt = DateTime.fromISO(d.stop).setZone(TIMEZONE);\n  const month = startDt.toFormat('yyyy-MM');\n  const dateStr = startDt.toFormat('yyyy-MM-dd');\n  const duration = d.duration;\n  const hours = Math.floor(duration / 3600);\n  const minutes = Math.floor((duration % 3600) / 60);\n\n  const entry = {\n    description: d.description || '',\n    project: d.name || 'No project',\n    start_date: dateStr,\n    start_time: startDt.toFormat('HH:mm'),\n    start_decimal_hour: Math.round((startDt.hour + startDt.minute / 60) * 100) / 100,\n    stop_date: stopDt.toFormat('yyyy-MM-dd'),\n    stop_time: stopDt.toFormat('HH:mm'),\n    stop_decimal_hour: Math.round((stopDt.hour + stopDt.minute / 60) * 100) / 100,\n    duration_hhmm: String(hours).padStart(2, '0') + ':' + String(minutes).padStart(2, '0'),\n    duration_hours: Math.round((duration / 3600) * 100) / 100,\n    tags: (d.tags || []).join(', '),\n    month,\n  };\n\n  allEntries.push(entry);\n  monthsSet.add(month);\n\n  if (!dailyGroups[dateStr]) {\n    dailyGroups[dateStr] = {\n      date: dateStr,\n      project: d.name || 'No project',\n      descriptions: [],\n      duration_total: 0,\n      tags_set: [],\n      month,\n    };\n  }\n\n  if (d.description && !dailyGroups[dateStr].descriptions.includes(d.description)) {\n    dailyGroups[dateStr].descriptions.push(d.description);\n  }\n  dailyGroups[dateStr].duration_total += duration;\n\n  for (const tag of d.tags || []) {\n    if (!dailyGroups[dateStr].tags_set.includes(tag)) dailyGroups[dateStr].tags_set.push(tag);\n  }\n}\n\nallEntries.sort((a, b) => a.start_date.localeCompare(b.start_date) || a.start_time.localeCompare(b.start_time));\n\nconst dailySummaries = Object.values(dailyGroups).map((group) => {\n  const h = Math.floor(group.duration_total / 3600);\n  const m = Math.floor((group.duration_total % 3600) / 60);\n  return {\n    date: group.date,\n    project: group.project,\n    description: group.descriptions.join('; '),\n    duration_hhmm: String(h).padStart(2, '0') + ':' + String(m).padStart(2, '0'),\n    duration_hours: Math.round((group.duration_total / 3600) * 100) / 100,\n    tags: group.tags_set.join(', '),\n    month: group.month,\n  };\n});\n\ndailySummaries.sort((a, b) => a.date.localeCompare(b.date));\n\nconst months = [...monthsSet].sort();\nconst staticData = $getWorkflowStaticData('global');\nstaticData.entries = JSON.stringify(allEntries);\nstaticData.summaries = JSON.stringify(dailySummaries);\nstaticData.months = JSON.stringify(months);\n\nreturn [{ json: { ready: true, months } }];"},"typeVersion":2},{"id":"http-get-sheets","name":"Get Sheet Info 1","type":"n8n-nodes-base.httpRequest","position":[1120,-136],"parameters":{"url":"https://sheets.googleapis.com/v4/spreadsheets/YOUR_DETAIL_SPREADSHEET_ID","options":{"response":{"response":{"responseFormat":"json"}}},"sendQuery":true,"authentication":"predefinedCredentialType","queryParameters":{"parameters":[{"name":"fields","value":"sheets.properties"}]},"nodeCredentialType":"googleSheetsOAuth2Api"},"credentials":{"googleSheetsOAuth2Api":{"id":"","name":""}},"typeVersion":4.3},{"id":"code-batch","name":"Build Sheet Ops 1","type":"n8n-nodes-base.code","position":[1344,-136],"parameters":{"jsCode":"const sd=$getWorkflowStaticData('global'),months=JSON.parse(sd.months||'[]');\nconst sheets=($input.first().json.sheets||[]).map(s=>({title:s.properties.title,sheetId:s.properties.sheetId}));\nconst names=sheets.map(s=>s.title),req=[];\nfor(const m of months){if(!names.includes(m))req.push({addSheet:{properties:{title:m}}});}\nfor(const s of sheets){if(months.includes(s.title))req.push({updateCells:{range:{sheetId:s.sheetId},fields:'userEnteredValue'}});}\nif(months.length>0){for(const s of sheets){if(!months.includes(s.title))req.push({deleteSheet:{sheetId:s.sheetId}});}}\nreturn [{json:{requests:req}}];"},"typeVersion":2},{"id":"http-batch-update","name":"Apply Sheet Ops 1","type":"n8n-nodes-base.httpRequest","position":[1568,-136],"parameters":{"url":"https://sheets.googleapis.com/v4/spreadsheets/YOUR_DETAIL_SPREADSHEET_ID:batchUpdate","method":"POST","options":{},"jsonBody":"={{ JSON.stringify({requests:$json.requests}) }}","sendBody":true,"specifyBody":"json","authentication":"predefinedCredentialType","nodeCredentialType":"googleSheetsOAuth2Api"},"credentials":{"googleSheetsOAuth2Api":{"id":"","name":""}},"typeVersion":4.3},{"id":"http-get-sheets-2","name":"Get Sheet Info 2","type":"n8n-nodes-base.httpRequest","position":[1792,-136],"parameters":{"url":"https://sheets.googleapis.com/v4/spreadsheets/YOUR_SUMMARY_SPREADSHEET_ID","options":{"response":{"response":{"responseFormat":"json"}}},"sendQuery":true,"authentication":"predefinedCredentialType","queryParameters":{"parameters":[{"name":"fields","value":"sheets.properties"}]},"nodeCredentialType":"googleSheetsOAuth2Api"},"credentials":{"googleSheetsOAuth2Api":{"id":"","name":""}},"typeVersion":4.3},{"id":"code-batch-2","name":"Build Sheet Ops 2","type":"n8n-nodes-base.code","position":[2016,-136],"parameters":{"jsCode":"const sd=$getWorkflowStaticData('global'),months=JSON.parse(sd.months||'[]');\nconst sheets=($input.first().json.sheets||[]).map(s=>({title:s.properties.title,sheetId:s.properties.sheetId}));\nconst names=sheets.map(s=>s.title),req=[];\nfor(const m of months){if(!names.includes(m))req.push({addSheet:{properties:{title:m}}});}\nfor(const s of sheets){if(months.includes(s.title))req.push({updateCells:{range:{sheetId:s.sheetId},fields:'userEnteredValue'}});}\nif(months.length>0){for(const s of sheets){if(!months.includes(s.title))req.push({deleteSheet:{sheetId:s.sheetId}});}}\nreturn [{json:{requests:req}}];"},"typeVersion":2},{"id":"http-batch-update-2","name":"Apply Sheet Ops 2","type":"n8n-nodes-base.httpRequest","position":[2240,-136],"parameters":{"url":"https://sheets.googleapis.com/v4/spreadsheets/YOUR_SUMMARY_SPREADSHEET_ID:batchUpdate","method":"POST","options":{},"jsonBody":"={{ JSON.stringify({requests:$json.requests}) }}","sendBody":true,"specifyBody":"json","authentication":"predefinedCredentialType","nodeCredentialType":"googleSheetsOAuth2Api"},"credentials":{"googleSheetsOAuth2Api":{"id":"","name":""}},"typeVersion":4.3},{"id":"code-read-data","name":"Read Detail Data","type":"n8n-nodes-base.code","position":[2464,-136],"parameters":{"jsCode":"const sd = $getWorkflowStaticData('global');\nconst entries = JSON.parse(sd.entries || '[]');\ndelete sd.entries;\n\nif (!entries.length) return [{ json: { info: 'No data', entries: [] } }];\n\nconst grouped = {};\nfor (const item of entries) {\n  if (!grouped[item.month]) grouped[item.month] = [];\n  grouped[item.month].push(item);\n}\n\nreturn Object.keys(grouped)\n  .sort()\n  .map((month) => ({ json: { month, entries: grouped[month] } }));"},"typeVersion":2},{"id":"loop-write","name":"Detail Write Loop","type":"n8n-nodes-base.splitInBatches","position":[2688,-136],"parameters":{"options":{}},"typeVersion":3},{"id":"code-expand","name":"Expand Entries","type":"n8n-nodes-base.code","position":[2912,-112],"parameters":{"jsCode":"const b=$input.first().json;\nreturn b.entries.map(e=>({json:e}));"},"typeVersion":2},{"id":"gs-append","name":"Write Details","type":"n8n-nodes-base.googleSheets","position":[3136,-112],"parameters":{"columns":{"value":{},"schema":[],"mappingMode":"autoMapInputData","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"name","value":"={{ $json.month }}"},"documentId":{"__rl":true,"mode":"url","value":"https://docs.google.com/spreadsheets/d/YOUR_DETAIL_SPREADSHEET_ID/edit"}},"credentials":{"googleSheetsOAuth2Api":{"id":"","name":""}},"typeVersion":4.7},{"id":"code-read-summaries","name":"Read Summary Data","type":"n8n-nodes-base.code","position":[2912,-328],"parameters":{"jsCode":"const sd = $getWorkflowStaticData('global');\nconst summaries = JSON.parse(sd.summaries || '[]');\ndelete sd.summaries;\ndelete sd.months;\n\nif (!summaries.length) return [{ json: { info: 'No summaries', entries: [] } }];\n\nconst grouped = {};\nfor (const item of summaries) {\n  if (!grouped[item.month]) grouped[item.month] = [];\n  grouped[item.month].push(item);\n}\n\nreturn Object.keys(grouped)\n  .sort()\n  .map((month) => ({ json: { month, entries: grouped[month] } }));"},"typeVersion":2},{"id":"loop-summaries","name":"Summary Write Loop","type":"n8n-nodes-base.splitInBatches","position":[3136,-328],"parameters":{"options":{}},"typeVersion":3},{"id":"code-expand-summaries","name":"Expand Summaries","type":"n8n-nodes-base.code","position":[3376,-320],"parameters":{"jsCode":"const b=$input.first().json;\nreturn b.entries.map(e=>({json:e}));"},"typeVersion":2},{"id":"gs-append-summaries","name":"Write Summaries","type":"n8n-nodes-base.googleSheets","position":[3584,-320],"parameters":{"columns":{"value":{},"schema":[{"id":"date","type":"string","display":true,"removed":false,"required":false,"displayName":"date","defaultMatch":false,"canBeUsedToMatch":true},{"id":"project","type":"string","display":true,"removed":false,"required":false,"displayName":"project","defaultMatch":false,"canBeUsedToMatch":true},{"id":"description","type":"string","display":true,"removed":false,"required":false,"displayName":"description","defaultMatch":false,"canBeUsedToMatch":true},{"id":"duration_hhmm","type":"string","display":true,"removed":false,"required":false,"displayName":"duration_hhmm","defaultMatch":false,"canBeUsedToMatch":true},{"id":"duration_hours","type":"string","display":true,"removed":false,"required":false,"displayName":"duration_hours","defaultMatch":false,"canBeUsedToMatch":true},{"id":"tags","type":"string","display":true,"removed":false,"required":false,"displayName":"tags","defaultMatch":false,"canBeUsedToMatch":true},{"id":"month","type":"string","display":true,"removed":false,"required":false,"displayName":"month","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"autoMapInputData","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"name","value":"={{ $json.month }}"},"documentId":{"__rl":true,"mode":"url","value":"https://docs.google.com/spreadsheets/d/YOUR_SUMMARY_SPREADSHEET_ID/edit"}},"credentials":{"googleSheetsOAuth2Api":{"id":"","name":""}},"typeVersion":4.7},{"id":"sticky-note-1","name":"Instructions","type":"n8n-nodes-base.stickyNote","position":[-656,-512],"parameters":{"width":460,"height":840,"content":"## Sync Toggl Track time entries with Google Sheets monthly tabs\n\nThis workflow fetches Toggl time entries, filters by project, and writes:\n- **Detail Sheet**: individual entries\n- **Summary Sheet**: daily totals\n\nData is organized into monthly tabs (YYYY-MM).\n\n### Setup after import\n1. Set your Toggl HTTP Basic Auth credential.\n2. Set your Google Sheets OAuth2 credential.\n3. Set `start_date` in **Set Date Range**.\n4. In **Process Data**, set `PROJECT_NAME` and `TIMEZONE`.\n5. Replace placeholders:\n   - `YOUR_DETAIL_SPREADSHEET_ID`\n   - `YOUR_SUMMARY_SPREADSHEET_ID`\n\n### Detail columns\n`description | project | start_date | start_time | start_decimal_hour | stop_date | stop_time | stop_decimal_hour | duration_hhmm | duration_hours | tags | month`\n\n### Summary columns\n`date | project | description | duration_hhmm | duration_hours | tags | month`"},"typeVersion":1},{"id":"sticky-section-1","name":"Section: Trigger Date","type":"n8n-nodes-base.stickyNote","position":[16,-480],"parameters":{"color":7,"width":300,"height":170,"content":"## Trigger & Date Range\nStarts the workflow and builds dynamic `start_date` / `end_date` values for API queries."},"typeVersion":1},{"id":"sticky-section-2","name":"Section: Toggl Fetch","type":"n8n-nodes-base.stickyNote","position":[384,-480],"parameters":{"color":7,"width":320,"height":170,"content":"## Toggl Data Fetch\nRequests time entries and projects from Toggl Track API using HTTP Basic Auth credentials."},"typeVersion":1},{"id":"sticky-section-3","name":"Section: Merge Transform","type":"n8n-nodes-base.stickyNote","position":[752,-480],"parameters":{"color":7,"width":340,"height":190,"content":"## Merge & Transform\nMerges entries with project metadata, filters by project name, and prepares detail + summary datasets grouped by month."},"typeVersion":1},{"id":"sticky-section-4","name":"Section: Detail Prep","type":"n8n-nodes-base.stickyNote","position":[1136,-480],"parameters":{"color":7,"width":350,"height":180,"content":"## Detail Sheet Preparation\nEnsures monthly tabs exist in the detail spreadsheet and clears previous monthly tab values before writing."},"typeVersion":1},{"id":"sticky-section-5","name":"Section: Detail Loop","type":"n8n-nodes-base.stickyNote","position":[2624,96],"parameters":{"color":7,"width":350,"height":180,"content":"## Detail Sheet Write Loop\nSplits detail data by month, expands entries, and appends rows to each monthly tab in the detail spreadsheet."},"typeVersion":1},{"id":"sticky-section-6","name":"Section: Summary Prep","type":"n8n-nodes-base.stickyNote","position":[2784,-544],"parameters":{"color":7,"width":350,"height":180,"content":"## Summary Sheet Preparation\nEnsures monthly tabs exist in the summary spreadsheet and clears previous monthly tab values before writing."},"typeVersion":1},{"id":"sticky-section-7","name":"Section: Summary Loop","type":"n8n-nodes-base.stickyNote","position":[3328,-528],"parameters":{"color":7,"width":350,"height":180,"content":"## Summary Sheet Write Loop\nSplits summary data by month, expands entries, and appends rows to each monthly tab in the summary spreadsheet."},"typeVersion":1}],"active":false,"pinData":{},"settings":{"callerPolicy":"workflowsFromSameOwner","availableInMCP":false,"executionOrder":"v1"},"versionId":"c8b707c0-e3cb-494e-b6e5-c0a59e96b893","connections":{"Start":{"main":[[{"node":"Set Date Range","type":"main","index":0}]]},"Process Data":{"main":[[{"node":"Get Sheet Info 1","type":"main","index":0}]]},"Write Details":{"main":[[{"node":"Detail Write Loop","type":"main","index":0}]]},"Expand Entries":{"main":[[{"node":"Write Details","type":"main","index":0}]]},"Fetch Projects":{"main":[[{"node":"Merge With Projects","type":"main","index":1}]]},"Set Date Range":{"main":[[{"node":"Fetch Time Entries","type":"main","index":0},{"node":"Fetch Projects","type":"main","index":0}]]},"Write Summaries":{"main":[[{"node":"Summary Write Loop","type":"main","index":0}]]},"Expand Summaries":{"main":[[{"node":"Write Summaries","type":"main","index":0}]]},"Get Sheet Info 1":{"main":[[{"node":"Build Sheet Ops 1","type":"main","index":0}]]},"Get Sheet Info 2":{"main":[[{"node":"Build Sheet Ops 2","type":"main","index":0}]]},"Read Detail Data":{"main":[[{"node":"Detail Write Loop","type":"main","index":0}]]},"Apply Sheet Ops 1":{"main":[[{"node":"Get Sheet Info 2","type":"main","index":0}]]},"Apply Sheet Ops 2":{"main":[[{"node":"Read Detail Data","type":"main","index":0}]]},"Build Sheet Ops 1":{"main":[[{"node":"Apply Sheet Ops 1","type":"main","index":0}]]},"Build Sheet Ops 2":{"main":[[{"node":"Apply Sheet Ops 2","type":"main","index":0}]]},"Detail Write Loop":{"main":[[{"node":"Read Summary Data","type":"main","index":0}],[{"node":"Expand Entries","type":"main","index":0}]]},"Read Summary Data":{"main":[[{"node":"Summary Write Loop","type":"main","index":0}]]},"Fetch Time Entries":{"main":[[{"node":"Merge With Projects","type":"main","index":0}]]},"Summary Write Loop":{"main":[[],[{"node":"Expand Summaries","type":"main","index":0}]]},"Merge With Projects":{"main":[[{"node":"Process Data","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":28,"nodeTypes":{"n8n-nodes-base.set":{"count":1},"n8n-nodes-base.code":{"count":7},"n8n-nodes-base.merge":{"count":1},"n8n-nodes-base.stickyNote":{"count":8},"n8n-nodes-base.httpRequest":{"count":6},"n8n-nodes-base.googleSheets":{"count":2},"n8n-nodes-base.manualTrigger":{"count":1},"n8n-nodes-base.splitInBatches":{"count":2}}},"status":"published","readyToDemo":null,"user":{"name":"banan","username":"banan","bio":"","verified":false,"links":[],"avatar":"https://gravatar.com/avatar/3515b3ed1823a180319d9916b916a9820fee78e5c760816d7f3c56827241a073?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":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":24,"icon":"file:merge.svg","name":"n8n-nodes-base.merge","codex":{"data":{"alias":["Join","Concatenate","Wait"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-to-sync-data-between-two-systems/","icon":"🏬","label":"How to synchronize data between two systems (one-way vs. two-way sync"},{"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/migrating-community-metrics-to-orbit-using-n8n/","icon":"📈","label":"Migrating Community Metrics to Orbit using n8n"},{"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/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/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.merge/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Merge"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTc3XzUxOCkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDhDMCAyMS40OTAzIDIxLjQ5MDMgMCA0OCAwSDExMkMxMzguNTEgMCAxNjAgMjEuNDkwMyAxNjAgNDhWNTZIMTk2LjI1MkMyNDAuNDM1IDU2IDI3Ni4yNTIgOTEuODE3MiAyNzYuMjUyIDEzNlYxOTJDMjc2LjI1MiAyMTQuMDkxIDI5NC4xNjEgMjMyIDMxNi4yNTIgMjMySDM1MlYyMjRDMzUyIDE5Ny40OSAzNzMuNDkgMTc2IDQwMCAxNzZINDY0QzQ5MC41MSAxNzYgNTEyIDE5Ny40OSA1MTIgMjI0VjI4OEM1MTIgMzE0LjUxIDQ5MC41MSAzMzYgNDY0IDMzNkg0MDBDMzczLjQ5IDMzNiAzNTIgMzE0LjUxIDM1MiAyODhWMjgwSDMxNi4yNTJDMjk0LjE2MSAyODAgMjc2LjI1MiAyOTcuOTA5IDI3Ni4yNTIgMzIwVjM3NkMyNzYuMjUyIDQyMC4xODMgMjQwLjQzNSA0NTYgMTk2LjI1MiA0NTZIMTYwVjQ2NEMxNjAgNDkwLjUxIDEzOC41MSA1MTIgMTEyIDUxMkg0OEMyMS40OTAzIDUxMiAwIDQ5MC41MSAwIDQ2NFY0MDBDMCAzNzMuNDkgMjEuNDkwMyAzNTIgNDggMzUySDExMkMxMzguNTEgMzUyIDE2MCAzNzMuNDkgMTYwIDQwMFY0MDhIMTk2LjI1MkMyMTMuOTI1IDQwOCAyMjguMjUyIDM5My42NzMgMjI4LjI1MiAzNzZWMzIwQzIyOC4yNTIgMjk0Ljc4NCAyMzguODU5IDI3Mi4wNDQgMjU1Ljg1MyAyNTZDMjM4Ljg1OSAyMzkuOTU2IDIyOC4yNTIgMjE3LjIxNiAyMjguMjUyIDE5MlYxMzZDMjI4LjI1MiAxMTguMzI3IDIxMy45MjUgMTA0IDE5Ni4yNTIgMTA0SDE2MFYxMTJDMTYwIDEzOC41MSAxMzguNTEgMTYwIDExMiAxNjBINDhDMjEuNDkwMyAxNjAgMCAxMzguNTEgMCAxMTJWNDhaTTEwNCA0OEMxMDguNDE4IDQ4IDExMiA1MS41ODE3IDExMiA1NlYxMDRDMTEyIDEwOC40MTggMTA4LjQxOCAxMTIgMTA0IDExMkg1NkM1MS41ODE3IDExMiA0OCAxMDguNDE4IDQ4IDEwNFY1NkM0OCA1MS41ODE3IDUxLjU4MTcgNDggNTYgNDhIMTA0Wk00NTYgMjI0QzQ2MC40MTggMjI0IDQ2NCAyMjcuNTgyIDQ2NCAyMzJWMjgwQzQ2NCAyODQuNDE4IDQ2MC40MTggMjg4IDQ1NiAyODhINDA4QzQwMy41ODIgMjg4IDQwMCAyODQuNDE4IDQwMCAyODBWMjMyQzQwMCAyMjcuNTgyIDQwMy41ODIgMjI0IDQwOCAyMjRINDU2Wk0xMTIgNDA4QzExMiA0MDMuNTgyIDEwOC40MTggNDAwIDEwNCA0MDBINTZDNTEuNTgxNyA0MDAgNDggNDAzLjU4MiA0OCA0MDhWNDU2QzQ4IDQ2MC40MTggNTEuNTgxNyA0NjQgNTYgNDY0SDEwNEMxMDguNDE4IDQ2NCAxMTIgNDYwLjQxOCAxMTIgNDU2VjQwOFoiIGZpbGw9IiM1NEI4QzkiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTc3XzUxOCI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Merge","typeVersion":3,"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":39,"icon":"fa:sync","name":"n8n-nodes-base.splitInBatches","codex":{"data":{"alias":["Loop","Concatenate","Batch","Split","Split In Batches"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Loop Over Items","color":"#007755"},"iconData":{"icon":"sync","type":"icon"},"displayName":"Loop Over Items (Split in Batches)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":565,"icon":"fa:sticky-note","name":"n8n-nodes-base.stickyNote","codex":{"data":{"alias":["Comments","Notes","Sticky"],"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"Sticky Note","color":"#FFD233"},"iconData":{"icon":"sticky-note","type":"icon"},"displayName":"Sticky Note","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":834,"icon":"file:code.svg","name":"n8n-nodes-base.code","codex":{"data":{"alias":["cpde","Javascript","JS","Python","Script","Custom Code","Function"],"details":"The Code node allows you to execute JavaScript in your workflow.","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Code"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Code","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":838,"icon":"fa:mouse-pointer","name":"n8n-nodes-base.manualTrigger","codex":{"data":{"resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.manualworkflowtrigger/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\"]","defaults":{"name":"When clicking ‘Execute workflow’","color":"#909298"},"iconData":{"icon":"mouse-pointer","type":"icon"},"displayName":"Manual Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]}],"categories":[{"id":36,"name":"File Management"}],"image":[]}}