{"workflow":{"id":13464,"name":"Scrape RSS job posts, deduplicate with Google Sheets, and send Telegram alerts","views":157,"recentViews":1,"totalViews":157,"createdAt":"2026-02-17T11:23:13.846Z","description":"## **Who is this for**\n\n\nThis workflow is perfect for job seekers, recruiters, freelancers, and anyone actively monitoring job boards who wants to automate their search — getting instant Telegram alerts for new matching jobs without manually refreshing pages or missing time-sensitive postings.\n\n## **What this workflow does**\nIt automatically scrapes job posts from RSS feeds or job board APIs on a schedule, filters them by your target roles, locations, and keywords, deduplicates results against previously seen jobs stored in Google Sheets, and sends formatted Telegram alerts with job details and direct apply links for every new matching position.\n\n## **How it works**\n\n\n- Schedule Trigger runs every 6 hours (configurable) to check for new job posts.\n- HTTP Request fetches job data from an RSS feed or job board API (default: RemoteOK).\n- Parse & Extract normalizes raw data into clean job objects with title, company, location, URL, salary, tags, and posting date.\n- Keyword Filter matches jobs against your configurable target roles, locations, and exclude terms — only relevant jobs pass through.\n- Deduplication checks each job against a Google Sheet of previously seen jobs. Only truly new jobs continue.\n- Log to Sheet saves every new job to Google Sheets for tracking and history.\n- Telegram Alert sends a formatted message with job details, tags, salary, and a direct apply link.\n\n## **Setup steps**\n\n- Schedule — Adjust the interval in the Schedule Trigger node (default: every 6 hours). Set to every 1 hour for active searches.\n- Job Source URL — Replace the URL in the HTTP Request node with your target job board RSS feed or API endpoint. Examples: RemoteOK (https://remoteok.com/api), Arbeitnow (https://www.arbeitnow.com/api/job-board-api), or any RSS feed from LinkedIn, Indeed, etc.\n- Keywords — Edit the arrays in the Keyword Filter node: targetRoles, targetLocations, and excludeTerms.\n- Google Sheets — Connect your Google Sheets OAuth credential. Create a spreadsheet with columns: Title, Company name, Location, Url, Description, Posted date, Salary, Matched Role, Scraped date. Set the spreadsheet ID in both Sheet nodes.\n- Telegram — Create a bot via @BotFather, get your Chat ID, connect the Telegram credential, and set your Chat ID in the alert node.\n- Test — Run the workflow manually once to verify jobs flow through correctly.\n\n## **Requirements**\n\n\n- Google Sheets account with OAuth credentials\n- Telegram bot (created via @BotFather) with bot token and chat ID\n- n8n instance (cloud or self-hosted)\n- A job board with an RSS feed or public API\n\n## **How to customize**\n\n- Add multiple HTTP Request nodes for different job boards and merge results with a Merge node.\n- Change the cron to every 1 hour for high-priority searches.\n- Add salary range filtering in the keyword filter code.\n- Replace Telegram with Slack, Discord, WhatsApp, or email alerts.\n- Add an AI node (Ollama, OpenAI) to score and rank jobs by relevance before alerting.\n- Adjust the Parse & Extract node field mappings when switching to a different job board API.","workflow":{"id":"RWmeaIdV3KulXhPd","meta":{"instanceId":"8f8ee4eb853c20789e317beb113798e3d078c0c7ef754b4b9fad98c2eee7e79d"},"name":"Scrape job posts from RSS feeds and get instant Telegram alerts with deduplication","tags":[],"nodes":[{"id":"cc5c0284-423f-4a98-a717-0cff4d5d8f79","name":"Sticky Note - Main Overview","type":"n8n-nodes-base.stickyNote","position":[0,0],"parameters":{"width":720,"height":940,"content":"## Scrape job posts from RSS feeds and get instant Telegram alerts\n\nAutomatically monitor job boards and RSS feeds on a schedule, filter by your criteria, deduplicate results, and get instant Telegram alerts when new matching jobs are found.\n\n### How it works\n1. **Schedule Trigger** runs every 6 hours (configurable) to check for new job posts.\n2. **HTTP Request** fetches job data from an RSS feed or job board API.\n3. **Parse & Extract** normalizes raw data into clean job objects with title, company, location, URL, salary, tags, and posting date.\n4. **Keyword Filter** matches jobs against your target roles, locations, and exclude terms — only relevant jobs pass through.\n5. **Deduplication** checks each job URL against a Google Sheet of previously seen jobs. Only truly new jobs continue.\n6. **Log to Sheet** saves every new job to Google Sheets for tracking and history.\n7. **Telegram Alert** sends a formatted message with job details and a direct apply link.\n\n### Setup steps\n1. **Schedule** — Adjust the interval in the Schedule Trigger (default: every 6 hours).\n2. **Job Source URL** — Replace the URL in the HTTP Request node with your target RSS feed or API. Examples:\n   - RemoteOK: `https://remoteok.com/api`\n   - Arbeitnow: `https://www.arbeitnow.com/api/job-board-api`\n   - Any RSS feed from LinkedIn, Indeed, etc.\n3. **Keywords** — Edit `targetRoles`, `targetLocations`, and `excludeTerms` arrays in the Keyword Filter node.\n4. **Google Sheets** — Connect your credential and set the spreadsheet ID in both Sheet nodes. Create columns: Title, Company name, Location, Url, Description, Posted date, Salary, Matched Role, Scraped date.\n5. **Telegram** — Create a bot via @BotFather, get your Chat ID, and connect the Telegram credential.\n6. **Test** — Run manually once to verify jobs flow through correctly.\n\n### Customization\n- Add multiple HTTP Request nodes for different job boards and merge results.\n- Change cron to every 1 hour for high-priority searches.\n- Add salary range filtering in the keyword filter.\n- Replace Telegram with Slack, Discord, WhatsApp, or email.\n- Add an AI node to score/rank jobs by relevance before alerting."},"typeVersion":1},{"id":"a5815a2d-045f-4106-813d-d08f04d6febb","name":"Sticky Note - Data Source","type":"n8n-nodes-base.stickyNote","position":[928,912],"parameters":{"color":6,"width":520,"height":240,"content":"## 📥 Data Source\nSchedule trigger + HTTP request to fetch job posts from RSS/API"},"typeVersion":1},{"id":"a8dcbb02-4ccb-4669-8b9e-d8352a2636ff","name":"Sticky Note - Parse Filter","type":"n8n-nodes-base.stickyNote","position":[1472,912],"parameters":{"color":6,"width":540,"height":240,"content":"## 🔍 Parse & Filter\nExtract job fields, then filter by keywords, location, and role"},"typeVersion":1},{"id":"badff48d-3b8b-44fe-8d77-4637020a7c33","name":"Sticky Note - Deduplicate","type":"n8n-nodes-base.stickyNote","position":[2176,832],"parameters":{"color":6,"width":464,"height":240,"content":"## 🧹 Deduplicate & Log\nCheck against previously seen jobs, save new ones to Google Sheets"},"typeVersion":1},{"id":"25c2ccb0-d793-4486-8e9f-e770362be22e","name":"Sticky Note - Alerts","type":"n8n-nodes-base.stickyNote","position":[2864,784],"parameters":{"color":6,"width":540,"height":240,"content":"## 📣 Alerts\nSend formatted job notifications to Telegram with apply links"},"typeVersion":1},{"id":"27446981-2b9f-4c8f-a45a-8fd035d3c4d7","name":"Sticky Note - Warning URL","type":"n8n-nodes-base.stickyNote","position":[1504,1200],"parameters":{"color":3,"width":280,"height":156,"content":"## ⚠️ Replace with your job board URL\nUpdate the HTTP Request URL to your target RSS feed or API. See the main overview sticky for example URLs."},"typeVersion":1},{"id":"2cf9c4aa-e123-4a01-ba20-4c02aae83bf6","name":"Sticky Note - Warning Keywords","type":"n8n-nodes-base.stickyNote","position":[1824,1200],"parameters":{"color":3,"width":280,"height":140,"content":"## ⚠️ Edit your keywords\nUpdate `targetRoles`, `targetLocations`, and `excludeTerms` arrays to match your job search criteria."},"typeVersion":1},{"id":"203cb7b5-3baf-48f1-a236-6587b1afd850","name":"⏰ Every 6 Hours","type":"n8n-nodes-base.scheduleTrigger","position":[752,1024],"parameters":{"rule":{"interval":[{"field":"hours","hoursInterval":6}]}},"typeVersion":1.2},{"id":"ced7e0fd-640c-4466-974f-cf18b5b734b6","name":"🌐 Fetch Job Posts","type":"n8n-nodes-base.httpRequest","position":[1152,1008],"parameters":{"url":"https://remoteok.com/api","options":{"response":{"response":{"responseFormat":"json"}}}},"typeVersion":4.2},{"id":"8d5a015a-facd-4209-bdc4-1014bbd9d34a","name":"🔧 Parse & Extract Jobs","type":"n8n-nodes-base.code","position":[1568,992],"parameters":{"jsCode":"// Parse and normalize job data from various sources\n// Adjust field mappings based on your job board's API response\n\nconst items = $input.all();\nconst jobs = [];\n\nfor (const item of items) {\n  const data = item.json;\n  \n  // Skip non-job entries (e.g., RemoteOK's first item is metadata)\n  if (!data.position && !data.title && !data.job_title) continue;\n  \n  const job = {\n    title: data.position || data.title || data.job_title || 'Unknown Title',\n    company: data.company || data.company_name || data.organization || 'Unknown Company',\n    location: data.location || data.candidate_required_location || data.job_location || 'Remote',\n    url: data.url || data.apply_url || data.link || '',\n    description: (data.description || data.summary || data.job_description || '').substring(0, 500),\n    tags: data.tags || data.categories || data.keywords || [],\n    salary: data.salary || data.salary_range || data.compensation || 'Not specified',\n    postedDate: data.date || data.publication_date || data.created_at || new Date().toISOString(),\n    source: 'RemoteOK',\n    scrapedAt: new Date().toISOString(),\n    // Create a unique ID from URL or title+company combo\n    uniqueId: (data.url || data.apply_url || data.link || `${data.position}-${data.company}`).toLowerCase().trim()\n  };\n  \n  // Only add if we have minimum required fields\n  if (job.title !== 'Unknown Title' && job.url) {\n    jobs.push({ json: job });\n  }\n}\n\n// If no jobs parsed, return empty with a flag\nif (jobs.length === 0) {\n  return [{ json: { noJobs: true, message: 'No jobs found in this batch' } }];\n}\n\nreturn jobs;"},"typeVersion":2},{"id":"95a79ff1-580b-4ee3-9956-d263f03653ae","name":"🎯 Keyword Filter","type":"n8n-nodes-base.code","position":[1792,992],"parameters":{"jsCode":"// ============================================\n// KEYWORD FILTER - Customize these arrays!\n// ============================================\n\nconst targetRoles = [\n  // Add your target job titles/keywords here\n  \"automation engineer\", \"workflow automation\",\n  \"data engineer\", \"integration engineer\",\n  \"marketing automation\", \"sales automation\",\n  \"ai engineer\", \"machine learning\",\n  \"devops\", \"backend engineer\"\n];\n\nconst targetLocations = [\n  \"remote\", \"fully remote\", \"work from anywhere\", \"work from home\",\n  \"wfh\", \"worldwide\", \"global\", \"100% remote\", \"distributed\"\n];\n\nconst excludeTerms = [\n  \"director\", \"vp \", \"vice president\", \"head of\", \"chief\", \"c-level\",\n  \"senior manager\", \"principal\", \"architect\"\n];\n\n\n\n\n// ============================================\n// FILTER LOGIC (no changes needed below)\n// ============================================\n\nconst items = $input.all();\nconst matchedJobs = [];\n\nfor (const item of items) {\n  const job = item.json;\n  \n  // Skip if it's the \"no jobs\" flag\n  if (job.noJobs) continue;\n  \n  const titleLower = (job.title || '').toLowerCase();\n  const locationLower = (job.location || '').toLowerCase();\n  const descLower = (job.description || '').toLowerCase();\n  const tagsLower = Array.isArray(job.tags) \n    ? job.tags.map(t => (typeof t === 'string' ? t : t.name || t.label || String(t)).toLowerCase()).join(' ')\n    : '';\n  \n  const searchText = `${titleLower} ${descLower} ${tagsLower}`;\n  \n  // Check role match (title or tags)\n  const roleMatch = targetRoles.some(role => \n    titleLower.includes(role) || tagsLower.includes(role)\n  );\n  \n  // Check location match\n  const locationMatch = targetLocations.some(loc => \n    locationLower.includes(loc)\n  );\n  \n  // Check exclusions\n  const isExcluded = excludeTerms.some(term => \n    titleLower.includes(term)\n  );\n  \n  // Must match role AND location, and NOT be excluded\n  if (roleMatch && locationMatch && !isExcluded) {\n    matchedJobs.push({\n      json: {\n        ...job,\n        matchedRole: targetRoles.find(r => titleLower.includes(r) || tagsLower.includes(r)),\n        matchedLocation: targetLocations.find(l => locationLower.includes(l)),\n        filterPassedAt: new Date().toISOString()\n      }\n    });\n  }\n}\n\nif (matchedJobs.length === 0) {\n  return [{ json: { noMatches: true, message: `No jobs matched filters. Checked ${items.length} jobs.`, checkedAt: new Date().toISOString() } }];\n}\n\nreturn matchedJobs;"},"typeVersion":2},{"id":"44558676-f7f6-451c-9cbf-4e9605dd48a5","name":"✅ Has Valid Jobs?","type":"n8n-nodes-base.if","position":[2016,992],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"or","conditions":[{"id":"has-url","operator":{"type":"string","operation":"notEmpty"},"leftValue":"={{ $json.url }}","rightValue":""},{"id":"not-no-matches","operator":{"type":"boolean","operation":"notTrue"},"leftValue":"={{ $json.noMatches }}","rightValue":true}]}},"typeVersion":2.2},{"id":"9c139a23-f8ab-4233-b258-36bd1390558f","name":"📋 Read Seen Jobs","type":"n8n-nodes-base.googleSheets","position":[2240,912],"parameters":{"options":{},"filtersUI":{"values":[{"lookupValue":"={{ $json.title }}","lookupColumn":"title"}]},"sheetName":{"__rl":true,"mode":"list","value":1313119612,"cachedResultUrl":"https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit#gid=1313119612","cachedResultName":"jobs"},"documentId":{"__rl":true,"mode":"list","value":"YOUR_GOOGLE_SHEET_ID","cachedResultUrl":"https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit","cachedResultName":"Job Tracker"}},"typeVersion":4.6,"alwaysOutputData":true},{"id":"0a30c12a-902e-4044-b598-456ffd4b1340","name":"🧹 Deduplicate","type":"n8n-nodes-base.code","position":[2464,912],"parameters":{"jsCode":"// Deduplicate: compare current jobs against previously seen URLs\n\nconst currentJobs = $('✅ Has Valid Jobs?').all();\nconst seenJobsRaw = $('📋 Read Seen Jobs').all();\n\n// Build a Set of previously seen URLs for O(1) lookup\nconst seenUrls = new Set();\nfor (const item of seenJobsRaw) {\n  const url = (item.json.URL || item.json.url || item.json.uniqueId || '').toLowerCase().trim();\n  if (url) seenUrls.add(url);\n}\n\nconst newJobs = [];\n\nfor (const item of currentJobs) {\n  const job = item.json;\n  const jobUrl = (job.url || job.uniqueId || '').toLowerCase().trim();\n  \n  if (jobUrl && !seenUrls.has(jobUrl)) {\n    newJobs.push({\n      json: {\n        ...job,\n        isNew: true,\n        deduplicatedAt: new Date().toISOString()\n      }\n    });\n  }\n}\n\nif (newJobs.length === 0) {\n  return [{ json: { noNewJobs: true, message: `All ${currentJobs.length} matched jobs were already seen.`, checkedAt: new Date().toISOString() } }];\n}\n\nreturn newJobs;"},"typeVersion":2},{"id":"cb5c3ec1-0760-464c-befa-b8145e491d9f","name":"🆕 New Jobs Only?","type":"n8n-nodes-base.if","position":[2688,912],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"is-new-job","operator":{"type":"boolean","operation":"true"},"leftValue":"={{ $json.isNew }}","rightValue":true}]}},"typeVersion":2.2},{"id":"6fa826da-9cb3-42cb-8d1f-021a4c0920e9","name":"📊 Log New Jobs","type":"n8n-nodes-base.googleSheets","position":[2912,864],"parameters":{"columns":{"value":{"Salary":"={{ $json.salary }}","Location":"={{ $json.location }}","Matched Role":"={{ $json.matchedRole }}"},"schema":[{"id":"Title ","type":"string","display":true,"removed":false,"required":false,"displayName":"Title ","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Company name","type":"string","display":true,"removed":false,"required":false,"displayName":"Company name","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Location","type":"string","display":true,"required":false,"displayName":"Location","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Url","type":"string","display":true,"removed":false,"required":false,"displayName":"Url","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Description","type":"string","display":true,"removed":false,"required":false,"displayName":"Description","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Posted date","type":"string","display":true,"removed":false,"required":false,"displayName":"Posted date","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Salary","type":"string","display":true,"required":false,"displayName":"Salary","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Matched Role","type":"string","display":true,"required":false,"displayName":"Matched Role","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Scraped date","type":"string","display":true,"removed":false,"required":false,"displayName":"Scraped date","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"autoMapInputData","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":true},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"list","value":1313119612,"cachedResultUrl":"https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit#gid=1313119612","cachedResultName":"jobs"},"documentId":{"__rl":true,"mode":"list","value":"YOUR_GOOGLE_SHEET_ID","cachedResultUrl":"https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEET_ID/edit","cachedResultName":"Job Tracker"}},"typeVersion":4.6},{"id":"499d208e-c88a-422e-af12-b3d78f9b6429","name":"📲 Telegram Alert","type":"n8n-nodes-base.telegram","position":[3136,864],"webhookId":"00000000-0000-0000-0000-000000000001","parameters":{"text":"=🚀 *New Job Alert!*\n\n💼 *{{ $json.title }}*\n🏢 {{ $json.company }}\n📍 {{ $json.location }}\n💰 {{ $json.salary }}\n\n🏷️ _{{ Array.isArray($json.tags) ? $json.tags.slice(0, 5).join(', ') : $json.tags }}_\n\n🔗 [Apply Now]({{ $json.url }})\n\n📅 Posted: {{ $json.postedDate }}\n🎯 Matched: {{ $json.matchedRole }} · {{ $json.matchedLocation }}","chatId":"YOUR_TELEGRAM_CHAT_ID","additionalFields":{"parse_mode":"Markdown","appendAttribution":false,"disable_web_page_preview":true}},"typeVersion":1.2},{"id":"0bd964ca-0a8b-41a2-8c3e-50d9bdd880cc","name":"💤 No New Jobs","type":"n8n-nodes-base.code","position":[2912,1088],"parameters":{"jsCode":"// Summary when no new jobs found\nconst message = $json.message || 'No new matching jobs found this cycle.';\nconst timestamp = new Date().toISOString();\n\nreturn {\n  json: {\n    status: 'no_new_jobs',\n    message: message,\n    checkedAt: timestamp,\n    nextCheck: 'In 6 hours'\n  }\n};"},"typeVersion":2}],"active":false,"pinData":{},"settings":{"binaryMode":"separate","availableInMCP":false,"executionOrder":"v1"},"versionId":"0859e4ce-1fbd-484a-8d63-2c4d59d965f4","connections":{"🧹 Deduplicate":{"main":[[{"node":"🆕 New Jobs Only?","type":"main","index":0}]]},"⏰ Every 6 Hours":{"main":[[{"node":"🌐 Fetch Job Posts","type":"main","index":0}]]},"📊 Log New Jobs":{"main":[[{"node":"📲 Telegram Alert","type":"main","index":0}]]},"✅ Has Valid Jobs?":{"main":[[{"node":"📋 Read Seen Jobs","type":"main","index":0}],[{"node":"💤 No New Jobs","type":"main","index":0}]]},"🆕 New Jobs Only?":{"main":[[{"node":"📊 Log New Jobs","type":"main","index":0}],[{"node":"💤 No New Jobs","type":"main","index":0}]]},"🎯 Keyword Filter":{"main":[[{"node":"✅ Has Valid Jobs?","type":"main","index":0}]]},"📋 Read Seen Jobs":{"main":[[{"node":"🧹 Deduplicate","type":"main","index":0}]]},"🌐 Fetch Job Posts":{"main":[[{"node":"🔧 Parse & Extract Jobs","type":"main","index":0}]]},"🔧 Parse & Extract Jobs":{"main":[[{"node":"🎯 Keyword Filter","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":18,"nodeTypes":{"n8n-nodes-base.if":{"count":2},"n8n-nodes-base.code":{"count":4},"n8n-nodes-base.telegram":{"count":1},"n8n-nodes-base.stickyNote":{"count":7},"n8n-nodes-base.httpRequest":{"count":1},"n8n-nodes-base.googleSheets":{"count":2},"n8n-nodes-base.scheduleTrigger":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"Tony Adijah","username":"togo","bio":"Automating the boring stuff so you don’t have to. 🤖 📐 n8n Workflows & Templates 🚀 Helping you save 10+ hours a week. 👇 Grab free workflows below.","verified":true,"links":["https://www.linkedin.com/in/tony-adijah-965903131/"],"avatar":"https://gravatar.com/avatar/e2635712dd01a1dae354636c1a925735948ada9697e9d55824f24558a3eab732?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":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":49,"icon":"file:telegram.svg","name":"n8n-nodes-base.telegram","codex":{"data":{"alias":["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/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"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/world-poetry-day-workflow/","icon":"📜","label":"Celebrating World Poetry Day with a daily poem in Telegram"},{"url":"https://n8n.io/blog/using-automation-to-boost-productivity-in-the-workplace/","icon":"💪","label":"Using Automation to Boost Productivity in the Workplace"},{"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/creating-scheduled-text-affirmations-with-n8n/","icon":"🤟","label":"Creating scheduled text affirmations with n8n"},{"url":"https://n8n.io/blog/creating-telegram-bots-with-n8n-a-no-code-platform/","icon":"💬","label":"Creating Telegram Bots with n8n, a No-Code Platform"},{"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.telegram/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/telegram/"}]},"categories":["Communication","HITL"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"HITL":["Human in the Loop"]}}},"group":"[\"output\"]","defaults":{"name":"Telegram"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgNjYgNjYiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9ImEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSI+PHBhdGggZmlsbD0iIzM3YWVlMiIgZD0iTTAgMzJjMCAxNy42NzMgMTQuMzI3IDMyIDMyIDMyczMyLTE0LjMyNyAzMi0zMlM0OS42NzMgMCAzMiAwIDAgMTQuMzI3IDAgMzIiLz48cGF0aCBmaWxsPSIjYzhkYWVhIiBkPSJtMjEuNjYxIDM0LjMzOCAzLjc5NyAxMC41MDhzLjQ3NS45ODMuOTgzLjk4MyA4LjA2OC03Ljg2NCA4LjA2OC03Ljg2NGw4LjQwNy0xNi4yMzctMjEuMTE5IDkuODk4eiIvPjxwYXRoIGZpbGw9IiNhOWM2ZDgiIGQ9Im0yNi42OTUgMzcuMDM0LS43MjkgNy43NDZzLS4zMDUgMi4zNzMgMi4wNjggMGw0LjY0NC00LjIwMyIvPjxwYXRoIGQ9Im0yMS43MyAzNC43MTItNy44MDktMi41NDVzLS45MzItLjM3OC0uNjMzLTEuMjM3Yy4wNjItLjE3Ny4xODYtLjMyOC41NTktLjU4OCAxLjczMS0xLjIwNiAzMi4wMjgtMTIuMDk2IDMyLjAyOC0xMi4wOTZzLjg1Ni0uMjg4IDEuMzYxLS4wOTdjLjIzMS4wODguMzc4LjE4Ny41MDMuNTQ4LjA0NS4xMzIuMDcxLjQxMS4wNjguNjg5LS4wMDMuMjAxLS4wMjcuMzg2LS4wNDUuNjc4LS4xODQgMi45NzgtNS43MDYgMjUuMTk4LTUuNzA2IDI1LjE5OHMtLjMzIDEuMy0xLjUxNCAxLjM0NWMtLjQzMi4wMTYtLjk1Ni0uMDcxLTEuNTgyLS42MS0yLjMyMy0xLjk5OC0xMC4zNTItNy4zOTQtMTIuMTI2LTguNThhLjM0LjM0IDAgMCAxLS4xNDYtLjIzOWMtLjAyNS0uMTI1LjEwOC0uMjguMTA4LS4yOHMxMy45OC0xMi40MjcgMTQuMzUyLTEzLjczMWMuMDI5LS4xMDEtLjA3OS0uMTUxLS4yMjYtLjEwNy0uOTI5LjM0Mi0xNy4wMjUgMTAuNTA2LTE4LjgwMSAxMS42MjktLjEwNC4wNjYtLjM5NS4wMjMtLjM5NS4wMjMiLz48L2c+PC9zeW1ib2w+PC9zdmc+"},"displayName":"Telegram","typeVersion":1,"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"}]}],"categories":[{"id":37,"name":"Lead Generation"}],"image":[]}}