{"workflow":{"id":13552,"name":"Send weekly GitHub digest with releases, commits and trending repos via Gmail","views":51,"recentViews":0,"totalViews":51,"createdAt":"2026-02-20T14:50:46.969Z","description":"# Send Weekly GitHub Digest with Releases, Commits, and Trending Repos                                    \n                                                       \n  \nStay on top of the GitHub ecosystem with a single automated weekly email covering it all.  \n                                                       \n## How it works    \n\n1. A schedule trigger fires every Monday at 9am and reads your config variables. Feel free to modify schedule.\n\n2. Three branches run in parallel:\n- Releases: fetches the latest release from each watched repo via the GitHub API\n- Commits: fetches recent commits or public events for each tracked repo or username\n- Trending: scrapes github.com/trending for that day's actual trending repositories\n\n3. All three branches merge into a single Code node that builds one HTML email with three labeled sections.\n\n4. If any content was found, the email is sent via Gmail. Otherwise the workflow exits silently.\n\n## Setup steps\n\n1. Connect your Gmail account.\n2. Open Set Variables and configure:\n- recipient_email — where to send the digest\n- release_repos — list of repos to watch for releases (e.g. n8n-io/n8n)\n- tracked_entities — GitHub usernames or owner/repo paths to track commits- days_back — lookback window in days (default: 7)\n3. Activate.","workflow":{"meta":{"instanceId":"506e1eb999b7a8cf86103921b3e1b94e371534d9bae39d44754933678dc6697d","templateCredsSetupCompleted":true},"nodes":[{"id":"5a3638b4-dd45-477c-82c8-24b33e8334c1","name":"Overview","type":"n8n-nodes-base.stickyNote","position":[-224,80],"parameters":{"width":360,"height":952,"content":"## 🤖 Weekly GitHub Digest\n\nSends **one combined weekly email** with 3 sections:\n- 🚀 **Releases** — new releases from your watched repos\n- 👥 **Commits** — recent activity from tracked users or repos\n- 🔥 **Trending** — GitHub trending repos for the day\n\nOnly sends if at least one section has content.\n\n### How it works\n1. 3 parallel branches run at 9am Monday\n2. **Releases**: checks each watched repo for new releases this week\n3. **Commits**: fetches activity from tracked users OR repos. Accepts both user (e.g.`torvalds`)  and repo (e.g`huggingface/transformers`) \n4. **Trending**: scrapes GitHub trending page for today’s top repos\n5. All data merges into one HTML email\n\n### Setup steps\n1. Open **Set Variables** and set:\n   - `recipient_email` → your email\n   - `days_back` → lookback window (default: 7)\n   - `release_repos` → e.g. `[\"n8n-io/n8n\",\"facebook/react\"]`\n   - `tracked_entities` → e.g. `[\"torvalds\",\"huggingface/transformers\"]`\n2. Connect your **Gmail credential** in the Send node\n3. Activate\n\n### Tips\n- Add a GitHub token header for 5000 req/hr limit\n- `tracked_entities` accepts usernames AND repo paths"},"typeVersion":1},{"id":"15d8a903-54f0-4291-966a-0a84692a5197","name":"Every Monday at 9am","type":"n8n-nodes-base.scheduleTrigger","position":[240,384],"parameters":{"rule":{"interval":[{"field":"weeks","triggerAtDay":[1],"triggerAtHour":9}]}},"typeVersion":1.2},{"id":"7f6e199c-657e-4869-9d37-f8312a2c54dc","name":"Releases Section","type":"n8n-nodes-base.stickyNote","position":[688,-160],"parameters":{"color":7,"width":664,"height":356,"content":"## Releases\nFetches the latest release per watched repo and collects those published within the lookback window."},"typeVersion":1},{"id":"166f731a-f1b5-47ec-8536-2aaea728ad19","name":"Split Watched Repos","type":"n8n-nodes-base.splitOut","position":[704,-48],"parameters":{"options":{},"fieldToSplitOut":"release_repos"},"typeVersion":1},{"id":"940a1583-8ad8-40b5-8323-92f7b9c900a9","name":"Aggregate Releases","type":"n8n-nodes-base.code","position":[1136,-48],"parameters":{"jsCode":"const allItems = $input.all();\nconst config = $('Set Variables').first().json;\nconst cutoff = new Date(Date.now() - config.days_back * 24 * 60 * 60 * 1000);\n\nconst releases = [];\n\nfor (const item of allItems) {\n  // /releases?per_page=1 returns an array — take the first (most recent)\n  const releaseList = Array.isArray(item.json) ? item.json : [item.json];\n\n  for (const r of releaseList) {\n    if (!r.published_at || !r.html_url) continue;\n    if (r.draft) continue; // skip drafts only; pre-releases are included (n8n marks stable releases as pre-release on GitHub)\n    if (new Date(r.published_at) < cutoff) continue;\n\n    const repo = r.html_url.split('/releases/')[0].replace('https://github.com/', '');\n    const body = r.body\n      ? r.body.replace(/#{1,6}\\s/g, '').replace(/<!--[\\s\\S]*?-->/g, '').trim().substring(0, 280) + '...'\n      : 'No release notes.';\n\n    releases.push({\n      repo,\n      tag: r.tag_name,\n      name: r.name || r.tag_name,\n      url: r.html_url,\n      published_at: r.published_at,\n      body,\n      prerelease: r.prerelease\n    });\n    break; // only take the most recent per repo\n  }\n}\n\nreturn [{ json: { releases, release_count: releases.length } }];"},"typeVersion":2},{"id":"4b4091a3-440c-433f-8905-bae1e382ca32","name":"Commits Section","type":"n8n-nodes-base.stickyNote","position":[688,400],"parameters":{"color":7,"width":632,"height":260,"content":"##  Commits\nSupports both GitHub users (`torvalds`) and repos (`huggingface/transformers`). "},"typeVersion":1},{"id":"1161e57c-c587-462e-b87c-a9a1b893b026","name":"Extract Commits","type":"n8n-nodes-base.code","position":[1040,496],"parameters":{"jsCode":"const allItems = $input.all();\nconst config = $('Set Variables').first().json;\nconst cutoff = new Date(Date.now() - config.days_back * 24 * 60 * 60 * 1000);\nconst commits = [];\n\nfor (const item of allItems) {\n  const data = item.json;\n  if (!data || data.message === 'Not Found') continue;\n\n  // User/Org events format\n  if (data.type) {\n    if (data.type !== 'PushEvent') continue;\n    if (new Date(data.created_at) < cutoff) continue;\n    const actor = data.actor?.login || 'unknown';\n    const repoName = data.repo?.name || 'unknown';\n    for (const commit of (data.payload?.commits || []).slice(0,3)) {\n      commits.push({ author: actor, author_url: `https://github.com/${actor}`, repo: repoName, repo_url: `https://github.com/${repoName}`, message: (commit.message||'').split('\\n')[0].substring(0,100), sha: (commit.sha||'').substring(0,7), url: `https://github.com/${repoName}/commit/${commit.sha}`, date: data.created_at });\n    }\n  }\n  // Repo commits format\n  else if (data.sha && data.commit) {\n    const commitDate = data.commit.author?.date || data.commit.committer?.date;\n    if (commitDate && new Date(commitDate) < cutoff) continue;\n    const repoBase = (data.html_url||'').split('/commit/')[0];\n    const repoPath = repoBase.replace('https://github.com/','');\n    commits.push({ author: data.author?.login || data.commit.author?.name || 'unknown', author_url: data.author ? `https://github.com/${data.author.login}` : '#', repo: repoPath, repo_url: repoBase, message: (data.commit.message||'').split('\\n')[0].substring(0,100), sha: (data.sha||'').substring(0,7), url: data.html_url||'', date: commitDate||'' });\n  }\n}\n\nconst seen = new Set();\nconst unique = commits.filter(c => { if(seen.has(c.sha)) return false; seen.add(c.sha); return true; }).slice(0,40);\nreturn [{ json: { commits: unique, commit_count: unique.length } }];"},"typeVersion":2},{"id":"24e7ab70-e28e-41c9-a14d-669ce9c76746","name":"Trending Section","type":"n8n-nodes-base.stickyNote","position":[704,832],"parameters":{"color":7,"width":512,"height":292,"content":"## GitHub Trending Today\nScrapes the GitHub trending page for the day the workflow runs."},"typeVersion":1},{"id":"0416371c-2248-442f-8ee9-27a3425f2fc9","name":"Fetch GitHub Trending Page","type":"n8n-nodes-base.httpRequest","onError":"continueRegularOutput","position":[736,928],"parameters":{"url":"https://github.com/trending?since=daily","options":{},"sendHeaders":true,"headerParameters":{"parameters":[{"name":"User-Agent","value":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"},{"name":"Accept","value":"text/html,application/xhtml+xml"}]}},"typeVersion":4.2},{"id":"31861753-3d34-41fc-aac1-813efcee001f","name":"Parse Trending HTML","type":"n8n-nodes-base.code","position":[928,928],"parameters":{"jsCode":"const rawData = $input.first().json;\nconst html = rawData.data || rawData.body || '';\n\nconst repos = [];\nlet pos = 0;\n\nwhile (repos.length < 10) {\n  const start = html.indexOf('class=\"Box-row\"', pos);\n  if (start === -1) break;\n  const end = html.indexOf('</article>', start);\n  if (end === -1) break;\n  pos = end + 10;\n  const block = html.substring(start, end);\n\n  const linkMatch = block.match(/href=\"\\/(([\\w][\\w.-]+)\\/([\\w][\\w.-]+))\"/);\n  if (!linkMatch) continue;\n  const repoPath = linkMatch[1];\n  if (['trending','explore','settings','login','signup'].some(s => repoPath.startsWith(s))) continue;\n\n  const descMatch = block.match(/col-9[^\"]*\"[^>]*>\\s*([^<]{3,})/);\n  const description = descMatch ? descMatch[1].trim().replace(/\\s+/g,' ').substring(0,120) : '';\n\n  const langMatch = block.match(/programmingLanguage\"[^>]*>([^<]+)</);\n  const language = langMatch ? langMatch[1].trim() : '';\n\n  const starsMatch = block.match(/([\\d,]+)\\s+stars?\\s+today/i);\n  const starsToday = starsMatch ? starsMatch[1] : '';\n\n  repos.push({ name: repoPath, url: `https://github.com/${repoPath}`, description, language, stars_today: starsToday });\n}\n\nreturn [{ json: { trending_repos: repos, trending_count: repos.length } }];"},"typeVersion":2},{"id":"5132a98d-3f32-496e-9905-8bec7dc28643","name":"Merge Releases + Commits","type":"n8n-nodes-base.merge","position":[1728,288],"parameters":{},"typeVersion":3.2},{"id":"753b0c40-c481-4e5c-8bff-9a5ac49b6aa4","name":"Merge All Data","type":"n8n-nodes-base.merge","position":[1888,496],"parameters":{},"typeVersion":3.2},{"id":"16f88f96-e5eb-4898-a4b1-ac1501e780d2","name":"Has Any Content?","type":"n8n-nodes-base.if","position":[2080,496],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"or","conditions":[{"id":"c1","operator":{"type":"number","operation":"gt"},"leftValue":"={{ $json.release_count }}","rightValue":0},{"id":"c2","operator":{"type":"number","operation":"gt"},"leftValue":"={{ $json.commit_count }}","rightValue":0},{"id":"c3","operator":{"type":"number","operation":"gt"},"leftValue":"={{ $json.trending_count }}","rightValue":0}]}},"typeVersion":2.2},{"id":"63f1d1c8-1e1b-414f-8a32-9bcfb4523b41","name":"Build Combined Email","type":"n8n-nodes-base.code","position":[2288,416],"parameters":{"jsCode":"const items = $input.all();\n\nconst relData = (items.find(i => i.json.releases) || { json: { releases: [], release_count: 0 } }).json;\nconst cmData = (items.find(i => i.json.commits) || { json: { commits: [], commit_count: 0 } }).json;\nconst trData = (items.find(i => i.json.trending_repos) || { json: { trending_repos: [], trending_count: 0 } }).json;\n\nconst releases = relData.releases || [];\nconst commits = cmData.commits || [];\nconst trending = trData.trending_repos || [];\n\nconst today = new Date().toLocaleDateString('en-US', { month: 'long', day: 'numeric', year: 'numeric' });\nconst subject = `\\uD83E\\uDD16 Weekly GitHub Digest \\u2014 ${today}`;\n\nconst releasesHtml = releases.length === 0\n  ? `<p style='color:#999;font-style:italic'>No new releases this week.</p>`\n  : releases.map(r => `<div style='margin-bottom:16px;padding:12px;background:#fafafa;border-left:3px solid #ff6d5a;border-radius:4px'><a href='${r.url}' style='font-weight:600;color:#ff6d5a;text-decoration:none'>${r.repo} ${r.tag}</a><span style='color:#999;font-size:12px;margin-left:8px'>${new Date(r.published_at).toLocaleDateString()}</span><p style='margin:6px 0 0;font-size:13px;color:#555'>${r.body}</p></div>`).join('');\n\nconst commitsHtml = commits.length === 0\n  ? `<p style='color:#999;font-style:italic'>No recent commits found.</p>`\n  : commits.slice(0, 15).map(c => `<div style='margin-bottom:10px;padding:8px 12px;background:#fafafa;border-left:3px solid #6366f1;border-radius:4px'><a href='${c.url}' style='font-size:13px;color:#6366f1;text-decoration:none;font-weight:500'>${c.message}</a><br><span style='font-size:11px;color:#999'>${c.repo} \\u00b7 ${c.sha} \\u00b7 ${c.author} \\u00b7 ${c.date ? new Date(c.date).toLocaleDateString() : ''}</span></div>`).join('');\n\nconst trendingHtml = trending.length === 0\n  ? `<p style='color:#999;font-style:italic'>Could not load trending repos today.</p>`\n  : trending.map((r, i) => `<div style='margin-bottom:10px;padding:8px 12px;background:#fafafa;border-left:3px solid #10b981;border-radius:4px'><span style='color:#999;font-size:11px;margin-right:8px'>#${i+1}</span><a href='${r.url}' style='font-weight:600;color:#10b981;text-decoration:none'>${r.name}</a>${r.language ? `<span style='font-size:11px;color:#999;margin-left:8px'>${r.language}</span>` : ''}${r.stars_today ? `<span style='font-size:11px;color:#f59e0b;margin-left:8px'>\\u2605 ${r.stars_today} today</span>` : ''}<br><span style='font-size:12px;color:#666;margin-top:2px'>${r.description || ''}</span></div>`).join('');\n\nconst html = `<div style='font-family:sans-serif;max-width:620px;margin:0 auto;padding:24px;color:#333'><h2 style='margin-bottom:4px'>\\uD83E\\uDD16 Weekly GitHub Digest</h2><p style='color:#aaa;font-size:13px;margin-top:0;margin-bottom:28px'>${today}</p><h3 style='color:#ff6d5a;margin-bottom:14px;padding-bottom:6px;border-bottom:2px solid #ff6d5a'>\\uD83D\\uDE80 New Releases (${releases.length})</h3>${releasesHtml}<h3 style='color:#6366f1;margin-bottom:14px;padding-bottom:6px;border-bottom:2px solid #6366f1;margin-top:32px'>\\uD83D\\uDC65 Developer Commits (${commits.length})</h3>${commitsHtml}<h3 style='color:#10b981;margin-bottom:14px;padding-bottom:6px;border-bottom:2px solid #10b981;margin-top:32px'>\\uD83D\\uDD25 Trending Today (${trending.length})</h3>${trendingHtml}<hr style='border:none;border-top:1px solid #eee;margin:32px 0'><p style='font-size:12px;color:#bbb'>Weekly digest created by Dahiana Porto via N8N</p></div>`;\n\nreturn [{ json: { html, subject, release_count: releases.length, commit_count: commits.length, trending_count: trending.length } }];"},"typeVersion":2},{"id":"8c203c76-5a0c-4ec7-a265-8f706d1f4340","name":"Send Weekly Digest","type":"n8n-nodes-base.gmail","position":[2512,416],"webhookId":"6bb0b6af-ada3-41d8-a8e8-3ee1d67c41fd","parameters":{"sendTo":"={{ $('Set Variables').first().json.recipient_email }}","message":"={{ $json.html }}","options":{"appendAttribution":false},"subject":"={{ $json.subject }}"},"credentials":{"gmailOAuth2":{"id":"credential-id","name":"Gmail (Dummy Account)"}},"typeVersion":2.2},{"id":"cbcc5fae-b715-47b6-8bab-3ecaf0c335f6","name":"Fetch Latest Release","type":"n8n-nodes-base.httpRequest","onError":"continueRegularOutput","position":[912,-48],"parameters":{"url":"=https://api.github.com/repos/{{ $json.release_repos }}/releases?per_page=1","options":{},"sendHeaders":true,"headerParameters":{"parameters":[{"name":"Accept","value":"application/vnd.github+json"},{"name":"X-GitHub-Api-Version","value":"2022-11-28"}]}},"typeVersion":4.4},{"id":"0c910eda-7a6f-4641-826c-7e886178116e","name":"Fetch Entity Data","type":"n8n-nodes-base.httpRequest","onError":"continueRegularOutput","position":[880,496],"parameters":{"url":"={{ $json.tracked_entities.includes('/') ? 'https://api.github.com/repos/' + $json.tracked_entities + '/commits?per_page=20&since=' + $now.minus({days: $('Set Variables').first().json.days_back}).toISO() : 'https://api.github.com/users/' + $json.tracked_entities + '/events/public?per_page=30' }}","options":{},"sendHeaders":true,"headerParameters":{"parameters":[{"name":"Accept","value":"application/vnd.github+json"},{"name":"X-GitHub-Api-Version","value":"2022-11-28"}]}},"typeVersion":4.4},{"id":"a1472e9e-8c29-4dcd-95d4-6a3787da7288","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[832,-48],"parameters":{"color":3,"width":272,"height":352,"content":"\n\n\n\n\n\n\n\n\n\n\n\n#### Important\nGitHub's /releases/latest endpoint skips anything flagged as prerelease.\nIf you only want to fetch usual releases, use \n´https://api.github.com/repos/repo-name/releases/latest´"},"typeVersion":1},{"id":"1373c533-c8cb-43ea-a2a7-2f492fcab55e","name":"Split Tracked Entities","type":"n8n-nodes-base.splitOut","position":[720,496],"parameters":{"options":{},"fieldToSplitOut":"tracked_entities"},"typeVersion":1},{"id":"9b9f4c5d-daaf-4901-8604-c993b13d7ca0","name":"Do Nothing","type":"n8n-nodes-base.noOp","position":[2288,608],"parameters":{},"typeVersion":1},{"id":"2aa3eb79-1f86-4c68-a48f-159cb59c5f7f","name":"Set Variables","type":"n8n-nodes-base.set","position":[464,384],"parameters":{"options":{},"assignments":{"assignments":[{"id":"cfg-1","name":"recipient_email","type":"string","value":"user@example.com"},{"id":"cfg-2","name":"days_back","type":"number","value":7},{"id":"cfg-3","name":"release_repos","type":"array","value":"={{ ['n8n-io/n8n'] }}"},{"id":"cfg-4","name":"tracked_entities","type":"array","value":"={{ ['anthropics/claude', 'huggingface/transformers'] }}"}]}},"typeVersion":3.4},{"id":"3083f525-fbff-4ac7-aa0b-6b904a67978e","name":"Commits Section1","type":"n8n-nodes-base.stickyNote","position":[2224,160],"parameters":{"color":7,"width":264,"height":388,"content":"##  Email Template\n\nAggregates output from all three branches into a single HTML email.   \n\nOutput fields: `html`, `subject`, `release_count`,`commit_count`, `trending_count`.\n\nFeel free to modify this template."},"typeVersion":1}],"pinData":{},"connections":{"Set Variables":{"main":[[{"node":"Split Watched Repos","type":"main","index":0},{"node":"Fetch GitHub Trending Page","type":"main","index":0},{"node":"Split Tracked Entities","type":"main","index":0}]]},"Merge All Data":{"main":[[{"node":"Has Any Content?","type":"main","index":0}]]},"Extract Commits":{"main":[[{"node":"Merge Releases + Commits","type":"main","index":1}]]},"Has Any Content?":{"main":[[{"node":"Build Combined Email","type":"main","index":0}],[{"node":"Do Nothing","type":"main","index":0}]]},"Fetch Entity Data":{"main":[[{"node":"Extract Commits","type":"main","index":0}]]},"Aggregate Releases":{"main":[[{"node":"Merge Releases + Commits","type":"main","index":0}]]},"Every Monday at 9am":{"main":[[{"node":"Set Variables","type":"main","index":0}]]},"Parse Trending HTML":{"main":[[{"node":"Merge All Data","type":"main","index":1}]]},"Split Watched Repos":{"main":[[{"node":"Fetch Latest Release","type":"main","index":0}]]},"Build Combined Email":{"main":[[{"node":"Send Weekly Digest","type":"main","index":0}]]},"Fetch Latest Release":{"main":[[{"node":"Aggregate Releases","type":"main","index":0}]]},"Split Tracked Entities":{"main":[[{"node":"Fetch Entity Data","type":"main","index":0}]]},"Merge Releases + Commits":{"main":[[{"node":"Merge All Data","type":"main","index":0}]]},"Fetch GitHub Trending Page":{"main":[[{"node":"Parse Trending HTML","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":22,"nodeTypes":{"n8n-nodes-base.if":{"count":1},"n8n-nodes-base.set":{"count":1},"n8n-nodes-base.code":{"count":4},"n8n-nodes-base.noOp":{"count":1},"n8n-nodes-base.gmail":{"count":1},"n8n-nodes-base.merge":{"count":2},"n8n-nodes-base.splitOut":{"count":2},"n8n-nodes-base.stickyNote":{"count":6},"n8n-nodes-base.httpRequest":{"count":3},"n8n-nodes-base.scheduleTrigger":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"Dahiana","username":"mssporto","bio":"No-Code Specialist with more than 10 years of experience in Digital Marketing. Currently working with Bubble. Webflow, AI, Agents and N8N.","verified":true,"links":["https://dahiana.work/"],"avatar":"https://gravatar.com/avatar/cbb2c52ceb5284c7d5f2ce1a4911a94bfecc760e73490fd6bd15d3f2f6db6988?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":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":26,"icon":"fa:arrow-right","name":"n8n-nodes-base.noOp","codex":{"data":{"alias":["nothing"],"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/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/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/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/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.noop/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"organization\"]","defaults":{"name":"No Operation, do nothing","color":"#b0b0b0"},"iconData":{"icon":"arrow-right","type":"icon"},"displayName":"No Operation, do nothing","typeVersion":1,"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":356,"icon":"file:gmail.svg","name":"n8n-nodes-base.gmail","codex":{"data":{"alias":["email","human","form","wait","hitl","approval"],"resources":{"generic":[{"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/supercharging-your-conference-registration-process-with-n8n/","icon":"🎫","label":"Supercharging your conference registration process with 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-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/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/using-automation-to-boost-productivity-in-the-workplace/","icon":"💪","label":"Using Automation to Boost Productivity in the Workplace"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.gmail/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"}]},"categories":["Communication","HITL"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"HITL":["Human in the Loop"]}}},"group":"[\"transform\"]","defaults":{"name":"Gmail"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYiIGhlaWdodD0iMTkzIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCI+PHBhdGggZmlsbD0iIzQyODVGNCIgZD0iTTU4LjE4MiAxOTIuMDVWOTMuMTRMMjcuNTA3IDY1LjA3NyAwIDQ5LjUwNHYxMjUuMDkxYzAgOS42NTggNy44MjUgMTcuNDU1IDE3LjQ1NSAxNy40NTV6Ii8+PHBhdGggZmlsbD0iIzM0QTg1MyIgZD0iTTE5Ny44MTggMTkyLjA1aDQwLjcyN2M5LjY1OSAwIDE3LjQ1NS03LjgyNiAxNy40NTUtMTcuNDU1VjQ5LjUwNWwtMzEuMTU2IDE3LjgzNy0yNy4wMjYgMjUuNzk4eiIvPjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Im01OC4xODIgOTMuMTQtNC4xNzQtMzguNjQ3IDQuMTc0LTM2Ljk4OUwxMjggNjkuODY4bDY5LjgxOC01Mi4zNjQgNC42NyAzNC45OTItNC42NyA0MC42NDRMMTI4IDE0NS41MDR6Ii8+PHBhdGggZmlsbD0iI0ZCQkMwNCIgZD0iTTE5Ny44MTggMTcuNTA0VjkzLjE0TDI1NiA0OS41MDRWMjYuMjMxYzAtMjEuNTg1LTI0LjY0LTMzLjg5LTQxLjg5LTIwLjk0NXoiLz48cGF0aCBmaWxsPSIjQzUyMjFGIiBkPSJtMCA0OS41MDQgMjYuNzU5IDIwLjA3TDU4LjE4MiA5My4xNFYxNy41MDRMNDEuODkgNS4yODZDMjQuNjEtNy42NiAwIDQuNjQ2IDAgMjYuMjN6Ii8+PC9zdmc+"},"displayName":"Gmail","typeVersion":2,"nodeCategories":[{"id":6,"name":"Communication"},{"id":28,"name":"HITL"}]},{"id":565,"icon":"fa:sticky-note","name":"n8n-nodes-base.stickyNote","codex":{"data":{"alias":["Comments","Notes","Sticky"],"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"Sticky Note","color":"#FFD233"},"iconData":{"icon":"sticky-note","type":"icon"},"displayName":"Sticky Note","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":834,"icon":"file:code.svg","name":"n8n-nodes-base.code","codex":{"data":{"alias":["cpde","Javascript","JS","Python","Script","Custom Code","Function"],"details":"The Code node allows you to execute JavaScript in your workflow.","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Code"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Code","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":839,"icon":"fa:clock","name":"n8n-nodes-base.scheduleTrigger","codex":{"data":{"alias":["Time","Scheduler","Polling","Cron","Interval"],"resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\",\"schedule\"]","defaults":{"name":"Schedule Trigger","color":"#31C49F"},"iconData":{"icon":"clock","type":"icon"},"displayName":"Schedule Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1239,"icon":"file:splitOut.svg","name":"n8n-nodes-base.splitOut","codex":{"data":{"alias":["Split","Nested","Transform","Array","List","Item"],"details":"","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitout/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Split Out"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48ZyBmaWxsPSIjOUI2REQ1IiBjbGlwLXBhdGg9InVybCgjYSkiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTQ4MCAxNDhjMC02LjYyNy01LjM3My0xMi0xMi0xMkgzMjJjLTYuNjI3IDAtMTIgNS4zNzMtMTIgMTJ2MjRjMCA2LjYyNyA1LjM3MyAxMiAxMiAxMmgxNDZjNi42MjcgMCAxMi01LjM3MyAxMi0xMnptMCA5NmMwLTYuNjI3LTUuMzczLTEyLTEyLTEySDMyMmMtNi42MjcgMC0xMiA1LjM3My0xMiAxMnYyNGMwIDYuNjI3IDUuMzczIDEyIDEyIDEyaDE0NmM2LjYyNyAwIDEyLTUuMzczIDEyLTEyem0wIDk2YzAtNi42MjctNS4zNzMtMTItMTItMTJIMzIyYy02LjYyNyAwLTEyIDUuMzczLTEyIDEydjI0YzAgNi42MjcgNS4zNzMgMTIgMTIgMTJoMTQ2YzYuNjI3IDAgMTItNS4zNzMgMTItMTJ6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48cGF0aCBkPSJNNDM4IDc2YzAgNi42MjctNS4zNzMgMTItMTIgMTJIMzA5Ljc4M2MtMTcuNjczIDAtMzIgMTQuMzI3LTMyIDMydjU2YzAgMjYuOTc4LTEwLjI3MiA1MS41NTctMjcuMTE5IDcwLjAzOS01LjA1NSA1LjU0NS01LjA1NSAxNC4zNzcgMCAxOS45MjIgMTYuODQ3IDE4LjQ4MiAyNy4xMTkgNDMuMDYxIDI3LjExOSA3MC4wMzl2NTZjMCAxNy42NzMgMTQuMzI3IDMyIDMyIDMySDQyNmM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjI0YzAgNi42MjctNS4zNzMgMTItMTIgMTJIMzA5Ljc4M2MtNDQuMTgzIDAtODAtMzUuODE3LTgwLTgwdi01NmMwLTMwLjkyOC0yNS4wNzItNTYtNTYtNTZhNS43ODMgNS43ODMgMCAwIDEtNS43ODMtNS43ODN2LTM2LjQzNGE1Ljc4MyA1Ljc4MyAwIDAgMSA1Ljc4My01Ljc4M2MzMC45MjggMCA1Ni0yNS4wNzIgNTYtNTZ2LTU2YzAtNDQuMTgzIDM1LjgxNy04MCA4MC04MEg0MjZjNi42MjcgMCAxMiA1LjM3MyAxMiAxMnoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMzYgMjQ0YzAtNi42MjctNS4zNzMtMTItMTItMTJIMTJjLTYuNjI3IDAtMTIgNS4zNzMtMTIgMTJ2MjRjMCA2LjYyNyA1LjM3MyAxMiAxMiAxMmgxMTJjNi42MjcgMCAxMi01LjM3MyAxMi0xMnoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImEiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik01MTIgMEgwdjUxMmg1MTJ6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+"},"displayName":"Split Out","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]}],"categories":[{"id":32,"name":"Market Research"}],"image":[]}}