{"workflow":{"id":12965,"name":"Score and download top YouTube videos to Google Sheets with FetchMedia.io","views":126,"recentViews":0,"totalViews":126,"createdAt":"2026-01-24T10:12:37.280Z","description":"# Find, score, and download the best YouTube videos to Google Sheets\n\nThis workflow provides an end-to-end automation for discovering, evaluating, and optionally downloading high-quality educational YouTube videos.\n\nIt searches YouTube using configurable queries, applies multiple relevance and quality filters, scores the remaining videos, stores the best results in Google Sheets, and optionally downloads selected videos asynchronously using FetchMedia.io.\n\nThe workflow is designed to be modular, transparent, and easy to customize for different content curation, research, or archival use cases.\n\n---\n\n## How the workflow works\n\n### 1. Search YouTube\nThe workflow uses the YouTube Data API to search for videos based on predefined queries.\n\n### 2. Filter by relevance and quality\nVideos are filtered using multiple criteria, including:\n- Title keywords\n- Publish date\n- View count\n- Like count\n- Video duration\n\nYouTube returns video duration in ISO-8601 format (for example, `PT1M30S`).  \nThe workflow converts this value to seconds to enable reliable numeric filtering (for example, Shorts vs long-form videos).\n\n### 3. Deduplicate and score videos\n- Duplicate videos are removed using `videoId` as a unique identifier.\n- A relevance score is generated based on engagement metrics and metadata.\n- Videos are sorted by score and limited to the top candidates.\n\n### 4. Store results in Google Sheets\nSelected video metadata is written to a Google Sheet.\nThe `videoId` is used as a stable identifier so rows can be updated later in the workflow.\n\n### 5. Optional: Download videos asynchronously\nSelected videos can be submitted to FetchMedia.io for download.\nBecause downloads are asynchronous:\n- The workflow polls the FetchMedia API at regular intervals\n- Download status is checked (`pending`, `running`, `success`, `failed`)\n- Retry attempts are capped to prevent infinite loops\n\nWhen a download completes, the final download URL (or error information) is written back to the corresponding row in Google Sheets.\n\n---\n\n## Who this workflow is for\n\n- Content curators and educators  \n- Researchers and analysts  \n- Marketing and growth teams  \n- AI and machine learning practitioners collecting video datasets  \n\n---\n\n## Requirements\n\nTo use this workflow, you need:\n\n- **YouTube Data API v3** enabled with OAuth credentials\n- **Google Sheets OAuth credentials**\n- **FetchMedia.io API key** (optional, required only for the download step)\n\n&gt; **Note:** FetchMedia.io is a third-party service and may require a paid account - free tier is available.  \n&gt; The workflow can still be used without the download branch if desired.\n\n---\n\n## Configuration notes\n\n- The FetchMedia API key is expected to be provided via an environment variable: FETCHMEDIA_API_KEY\n- API quotas and limits depend on your YouTube and FetchMedia accounts.\n- Retry limits and wait intervals are capped to avoid infinite loops.\n- The workflow uses batch processing internally; the loop completion branch is intentionally unused, as all processing occurs within the loop itself.\n\n---\n\n## Customization ideas\n\n- Adjust the relevance scoring logic to prioritize different engagement signals.\n- Modify duration thresholds to focus on Shorts or long-form videos.\n- Add notifications (Slack, email) when downloads complete.\n- Extend the workflow to additional video platforms.\n\n---\n\n## Notes\n\nThis template demonstrates a complete content-curation pipeline:\nfrom discovery, through quality control and scoring, to optional asynchronous media downloading.\n\nIt is intended as a practical, production-ready example that can be easily adapted to different workflows.","workflow":{"id":"hhiseK9fck5oYA2w","meta":{"instanceId":"06dd8d98e2c191f45688601e8c95c27ad0a7ce28525ba5119fe9a1164cd17fe5"},"name":"Download and organize high-quality YouTube videos","tags":[],"nodes":[{"id":"940b8146-9e24-491d-afa3-cc8947287d70","name":"When clicking ‘Execute workflow’","type":"n8n-nodes-base.manualTrigger","position":[-3536,320],"parameters":{},"typeVersion":1},{"id":"cf2e59f7-1a5d-4042-a525-87a87a309ab9","name":"Set Query","type":"n8n-nodes-base.set","position":[-3264,816],"parameters":{"options":{},"assignments":{"assignments":[{"id":"58609f1a-03c7-4e5a-8199-2fcdaf495325","name":"query","type":"array","value":"={{[\n\"n8n agents tutorial step by step\",\n\"AI tools tutorial for beginners\",\n\"Best AI agent building tutorial\",\n\"AI prompt engineering techniques\",\n\"Quick AI tools training\",\n\"llm prompt engineering best practices\"]}}"}]}},"typeVersion":3.4},{"id":"77b7b60e-d8c6-431b-86e8-9ca1fc0bf8f3","name":"Search YouTube","type":"n8n-nodes-base.httpRequest","position":[-2704,816],"parameters":{"url":"https://www.googleapis.com/youtube/v3/search","options":{},"sendQuery":true,"authentication":"predefinedCredentialType","queryParameters":{"parameters":[{"name":"part","value":"id,snippet"},{"name":"q","value":"={{ $json.query }}"},{"name":"type","value":"video"},{"name":"maxResults","value":"50"},{"name":"order","value":"relevance"},{"name":"videoCategoryId","value":"27"},{"name":"videoDuration","value":"short"}]},"nodeCredentialType":"youTubeOAuth2Api"},"credentials":{"youTubeOAuth2Api":{"id":"Lfemt3uYHxqdzpXT","name":"YouTube account"}},"typeVersion":4.2},{"id":"1d033bf5-0de6-4462-9b59-58a3ccba1ee0","name":"Filter for Quality","type":"n8n-nodes-base.filter","position":[-1344,1008],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"loose"},"combinator":"and","conditions":[{"id":"0fe9a82c-6c5c-44c1-8da7-24e2f8783a0e","operator":{"type":"number","operation":"gt"},"leftValue":"={{ $json.statistics.viewCount }}","rightValue":10000},{"id":"7eae8c9b-c85d-4f0f-92bd-01b047e05d0e","operator":{"type":"number","operation":"gt"},"leftValue":"={{ $json.statistics.likeCount }}","rightValue":100},{"id":"51d609d3-0b04-476e-9abd-a68a1f9c095c","operator":{"type":"dateTime","operation":"after"},"leftValue":"={{ $json.snippet.publishedAt }}","rightValue":"2023-12-01T00:00:00"},{"id":"8f67a03c-b596-459f-82ec-0f1dd9fa8009","operator":{"type":"number","operation":"lt"},"leftValue":"={{ $json.DurationSeconds }}","rightValue":61}]},"looseTypeValidation":true},"typeVersion":2.2},{"id":"c4fc8a8a-2658-490e-b0da-c3c7ac67fa07","name":"Filter for Relevance","type":"n8n-nodes-base.filter","position":[-2256,816],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"051c8268-ace1-4d87-a57e-798ed9992331","operator":{"type":"string","operation":"regex"},"leftValue":"={{ $json.snippet.title.toLowerCase() }}","rightValue":"tutorial|course|guide|training|learn|education|explained|masterclass|complete.*guide|step.*by.*step|beginners.*guide|how.*to.*build|fundamentals"},{"id":"3bb11116-7ac6-4aa1-b1ac-3ebd1a6ceb82","operator":{"type":"string","operation":"notRegex"},"leftValue":"={{ $json.snippet.title.toLowerCase() }}","rightValue":"money|rich|profit|earn|cash|income|\\$|💰|sell|agency|business|client|freelance|side.*hustle|make.*money"},{"id":"5edc6bdd-514c-4cbd-bbbc-51da2f87c41e","operator":{"type":"string","operation":"notRegex"},"leftValue":"={{ $json.snippet.title.toLowerCase() }}","rightValue":"autopilot|passive.*income|[\\d]+k.*subs|faceless.*videos|youtube.*automation.*money|100%.*automated.*money"},{"id":"320ed472-8b8d-49bc-b830-e95c39017397","operator":{"type":"string","operation":"notRegex"},"leftValue":"={{ $json.snippet.title.toLowerCase() }}","rightValue":"insane|crazy|ultimate.*secret|hack|trick|must.*do|steal.*these|best.*way.*to.*make|ways.*to.*make|you.*need.*to|[\\d]+.*ways|[\\d]+.*insane"}]}},"typeVersion":2.2},{"id":"6d357a9a-642a-4c5d-9309-e9ffa416ec70","name":"Get Video Metadata","type":"n8n-nodes-base.httpRequest","position":[-1760,1008],"parameters":{"url":"https://www.googleapis.com/youtube/v3/videos","options":{},"sendQuery":true,"authentication":"predefinedCredentialType","queryParameters":{"parameters":[{"name":"part","value":"snippet,statistics,contentDetails"},{"name":"id","value":"={{ $json.id.videoId }}"}]},"nodeCredentialType":"youTubeOAuth2Api"},"credentials":{"youTubeOAuth2Api":{"id":"Lfemt3uYHxqdzpXT","name":"YouTube account"}},"typeVersion":4.2},{"id":"347c1038-c088-4a9a-9e21-d0224482b066","name":"Remove Unnecessary Fields","type":"n8n-nodes-base.set","position":[-1152,1008],"parameters":{"options":{},"assignments":{"assignments":[{"id":"bd1dfa28-997f-45e7-983f-06b4afdf2224","name":"Title","type":"string","value":"={{ $json.snippet.title }}"},{"id":"9921ef02-a86d-42ae-a4df-9c2dd674505c","name":"Channel","type":"string","value":"={{ $json.snippet.channelTitle }}"},{"id":"ec38edef-66e2-480f-9617-66123decfcef","name":"Published At","type":"string","value":"={{ $json.snippet.publishedAt }}"},{"id":"9bb69372-553a-4c8d-8286-00f41c90a78c","name":"Views","type":"string","value":"={{ $json.statistics.viewCount }}"},{"id":"80edec74-08c1-4d68-82f7-ba061cb2173e","name":"Likes","type":"string","value":"={{ $json.statistics.likeCount }}"},{"id":"9700bbee-7f25-43fe-a653-42a7c8fade77","name":"Description","type":"string","value":"={{ $json.snippet.description }}"},{"id":"9afaaa69-1afd-4f45-bfe6-24671651ac82","name":"URL","type":"string","value":"=https://www.youtube.com/watch?v={{ $json.id }}"},{"id":"da4e4ed8-b6b6-4e79-b7a5-655b5c3894e8","name":"Duration","type":"number","value":"={{ $json.DurationSeconds }}"}]}},"typeVersion":3.4},{"id":"96084e37-0f63-4a3a-a831-867c55aa0cfd","name":"Remove Duplicate Videos","type":"n8n-nodes-base.removeDuplicates","position":[-1104,800],"parameters":{"compare":"selectedFields","options":{},"fieldsToCompare":"id.videoId"},"typeVersion":2},{"id":"fd0f3127-76ad-4bd9-ae8e-51183858a8bc","name":"Generate Relevance Score","type":"n8n-nodes-base.set","position":[-848,800],"parameters":{"options":{},"assignments":{"assignments":[{"id":"e752a5e1-8485-4ef6-a717-d52234f3fb8c","name":"video_id","type":"string","value":"={{ $('Get Video Metadata').item.json.items[0].id }}"},{"id":"06fdbb84-7a8f-4ef7-b972-a480c528146e","name":"DownloadURL","type":"string","value":""},{"id":"d691e3bf-9fc4-406f-b6e7-d62487820ea1","name":"RelevanceScore","type":"number","value":"={{\n  // Educational keywords (higher scores)\n  (($json.Title.toLowerCase().includes('tutorial')) ? 15 : 0) +\n  (($json.Title.toLowerCase().includes('course')) ? 15 : 0) +\n  (($json.Title.toLowerCase().includes('guide')) ? 12 : 0) +\n  (($json.Title.toLowerCase().includes('explained')) ? 12 : 0) +\n  (($json.Title.toLowerCase().includes('beginner')) ? 10 : 0) +\n  (($json.Title.toLowerCase().includes('step by step')) ? 15 : 0) +\n  (($json.Title.toLowerCase().includes('complete')) ? 10 : 0) +\n  \n  // AI-specific terms\n  (($json.Title.toLowerCase().includes('prompt engineering')) ? 20 : 0) +\n  (($json.Title.toLowerCase().includes('ai agent')) ? 18 : 0) +\n  (($json.Title.toLowerCase().includes('ai tools')) ? 15 : 0) +\n  (($json.Title.toLowerCase().includes('prompting')) ? 15 : 0) +\n  \n  // Quality indicators\n  ((parseInt($json.Views) > 100000) ? 10 : 0) +\n  ((parseInt($json.Views) > 50000) ? 5 : 0) +\n  ((parseInt($json.Likes) > 1000) ? 8 : 0) +\n  \n  // Penalty for monetization indicators\n  (($json.Title.toLowerCase().includes('money') || \n    $json.Title.toLowerCase().includes('rich') || \n    $json.Title.toLowerCase().includes('earn')) ? -20 : 0)\n}}"},{"id":"a9e446de-dc9c-4dba-ab0b-d5647a24ba39","name":"Title","type":"string","value":"={{ $json.Title }}"},{"id":"1669b129-9e9a-45e6-925f-c5e41e6de692","name":"Channel","type":"string","value":"={{ $json.Channel }}"},{"id":"3d45d0ce-3068-424c-80a3-06c11785846d","name":"Published at","type":"string","value":"={{ $json['Published At'] }}"},{"id":"d778036c-17fb-475b-a304-9e92e37bdce7","name":"Duration","type":"number","value":"={{ $json.Duration }}"},{"id":"16e45f2b-1d0b-48e4-b86c-7e8ba82c5aef","name":"Views","type":"string","value":"={{ $json.Views }}"},{"id":"86f2af64-27f9-4e3c-9883-c279edc938c6","name":"Likes","type":"string","value":"={{ $json.Likes }}"},{"id":"d967b6c4-ab40-4f87-a84e-e0cb1bbb51d6","name":"Description","type":"string","value":"={{ $json.Description }}"},{"id":"e0af7129-2215-4583-b236-63587a4974b6","name":"URL","type":"string","value":"={{ $json.URL }}"},{"id":"99e55d4e-0841-4cb2-ae15-ee183c1f55e7","name":"fetch_id","type":"string","value":""},{"id":"c0bb50f5-d231-42fb-b37d-5065934130f9","name":"fetch_status","type":"string","value":""},{"id":"c726e06e-6dd8-4fda-9dc9-f43519fe671b","name":"fetch_error","type":"string","value":""}]}},"typeVersion":3.4},{"id":"d663a0ea-4b03-40ef-bbbf-82ea08016d22","name":"Send to Google Sheets","type":"n8n-nodes-base.googleSheets","position":[-192,448],"parameters":{"columns":{"value":{},"schema":[{"id":"RelevanceScore","type":"string","display":true,"removed":false,"required":false,"displayName":"RelevanceScore","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Title","type":"string","display":true,"required":false,"displayName":"Title","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Channel","type":"string","display":true,"required":false,"displayName":"Channel","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Published at","type":"string","display":true,"removed":false,"required":false,"displayName":"Published at","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Duration","type":"string","display":true,"removed":false,"required":false,"displayName":"Duration","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Views","type":"string","display":true,"required":false,"displayName":"Views","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Likes","type":"string","display":true,"required":false,"displayName":"Likes","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Description","type":"string","display":true,"removed":false,"required":false,"displayName":"Description","defaultMatch":false,"canBeUsedToMatch":true},{"id":"URL","type":"string","display":true,"required":false,"displayName":"URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"video_id","type":"string","display":true,"removed":false,"required":false,"displayName":"video_id","defaultMatch":false,"canBeUsedToMatch":true},{"id":"DownloadURL","type":"string","display":true,"removed":false,"required":false,"displayName":"DownloadURL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"fetch_id","type":"string","display":true,"removed":false,"required":false,"displayName":"fetch_id","defaultMatch":false,"canBeUsedToMatch":true},{"id":"fetch_status","type":"string","display":true,"removed":false,"required":false,"displayName":"fetch_status","defaultMatch":false,"canBeUsedToMatch":true},{"id":"fetch_error","type":"string","display":true,"removed":false,"required":false,"displayName":"fetch_error","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"autoMapInputData","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"append","sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit#gid=0","cachedResultName":"YouTube AI Resources"},"documentId":{"__rl":true,"mode":"list","value":"1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit?usp=drivesdk","cachedResultName":"Eli_YouTube AI Resources"}},"credentials":{"googleSheetsOAuth2Api":{"id":"j0u6p2nyjo7aHG38","name":"Google Sheets account"}},"typeVersion":4.6},{"id":"761eda1b-8403-4e22-a1a2-61a1977f13cd","name":"Add Duration Seconds","type":"n8n-nodes-base.code","position":[-1552,1008],"parameters":{"mode":"runOnceForEachItem","jsCode":"const video = $json.items?.[0];           // <-- THIS is the real video object\nconst isoRaw = video?.contentDetails?.duration;\n\nconst iso = String(isoRaw ?? \"PT0S\").trim();\n\nconst re = /^PT(?:(\\d+)H)?(?:(\\d+)M)?(?:(\\d+)S)?$/;\nconst m = re.exec(iso);\n\nconst hours = m?.[1] ? parseInt(m[1], 10) : 0;\nconst minutes = m?.[2] ? parseInt(m[2], 10) : 0;\nconst seconds = m?.[3] ? parseInt(m[3], 10) : 0;\n\nreturn {\n  // Flatten the video fields so the next nodes are easy:\n  ...video,\n\n  DurationSeconds: hours * 3600 + minutes * 60 + seconds\n};"},"typeVersion":2},{"id":"d25bdfd7-16d8-4b49-93e1-98008763613a","name":"Start Fetch (FetchMedia) (HTTP Request)","type":"n8n-nodes-base.httpRequest","position":[16,448],"parameters":{"url":"https://api.fetchmedia.io/v1/fetch","method":"POST","options":{},"sendBody":true,"sendHeaders":true,"bodyParameters":{"parameters":[{"name":"url","value":"={{ $json.URL }}"}]},"headerParameters":{"parameters":[{"name":"X-API-KEY","value":"{{$env.FETCHMEDIA_API_KEY}}"}]}},"typeVersion":4.2},{"id":"34ae2f83-aa8a-4359-bc72-c1b992d9fb3c","name":"Init Polling State (Set)","type":"n8n-nodes-base.set","position":[224,448],"parameters":{"options":{},"assignments":{"assignments":[{"id":"8c29eddd-6e12-424a-8350-c2f71c978cd4","name":"fetch_id","type":"string","value":"={{ $json.fetch_id }}"},{"id":"c1785622-f22d-415b-9cec-cbb3e99b0cd2","name":"attempt","type":"number","value":0},{"id":"d0636c5b-03f1-45e6-86ef-e1e659ac0770","name":"video_id","type":"string","value":"={{ $('Take only the amount of top videos').item.json.video_id }}"},{"id":"ebb66bb0-0bc0-4d67-9665-0d3f0796a11b","name":"fetch_status","type":"string","value":"pending"}]}},"typeVersion":3.4},{"id":"839f4997-97c0-4d0d-b500-18d56ebb9e25","name":"Poll loop (Wait → GET status → check → loop)","type":"n8n-nodes-base.wait","position":[448,448],"webhookId":"a743f132-903f-4e96-8d5b-e3fc3a050ee7","parameters":{"amount":15},"typeVersion":1.1},{"id":"3541fdc9-a262-47d1-bc69-8e364a2ad58b","name":"Check Fetch Status (HTTP Request)","type":"n8n-nodes-base.httpRequest","position":[656,448],"parameters":{"url":"=https://api.fetchmedia.io/v1/fetch/{{ $('Init Polling State (Set)').item.json.fetch_id }}","options":{},"sendHeaders":true,"headerParameters":{"parameters":[{"name":"X-API-KEY","value":"{{$env.FETCHMEDIA_API_KEY}}"},{"name":"Content-Type","value":"application/json; charset=utf-8"},{"name":"Accept","value":"*/*"},{}]}},"typeVersion":4.2},{"id":"e3bc6de3-75bd-4c5c-aef8-0c6edf7e6c96","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-2976,448],"parameters":{"width":736,"height":304,"content":"### YouTube Discovery & Initial Filtering\n\n\nThis section searches YouTube using the YouTube Data API\nand applies initial relevance and quality filters.\n\nVideos are filtered by:\n- Title keywords\n- Publish date\n- Engagement signals (views and likes)\n\nOnly videos that pass these checks continue downstream."},"typeVersion":1},{"id":"386d1600-7d71-4b22-94a4-6ba524da2d54","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[-1648,1232],"parameters":{"width":480,"height":272,"content":"### Duration & Quality Validation\n\nYouTube returns video duration in ISO-8601 format (PT#M#S).\n\nThis step:\n- Converts duration to seconds\n- Enables numeric filtering (e.g. Shorts vs long-form)\n- Ensures only videos within the desired length range pass\n\nThis avoids unreliable string-based comparisons.\n"},"typeVersion":1},{"id":"fbd55eda-7596-409f-ab0b-cf52bba5614c","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[-1024,480],"parameters":{"width":608,"height":240,"content":"### Deduplication & Relevance Scoring\n\n\nThis section removes duplicate videos using videoId\nand assigns a relevance score based on engagement\nand metadata signals.\n\nVideos are then sorted by score and limited\nto the top results.\n\nDuplicates can happen since we're running multiple queries against YouTube search api\n"},"typeVersion":1},{"id":"13881be5-3f6d-478e-b686-3aa60da933f6","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[0,-224],"parameters":{"width":1088,"height":400,"content":"## Asynchronous Download & Status Polling (FetchMedia)\n\nSelected videos are submitted to FetchMedia.io for download.\n\nBecause downloads are asynchronous:\n- The workflow polls the API at intervals\n- Status is checked (pending / running / success / failed)\n- Retries are capped to avoid infinite loops\n\nFinal download URLs or errors are written back to Google Sheets.\n\n**This workflow expects FETCHMEDIA_API_KEY to be set as an environment variable.\nIf not set, the download step will be skipped or fail gracefully.**\n\n\nhttps://docs.fetchmedia.io/api-introduction"},"typeVersion":1},{"id":"647e12dc-66a6-49a8-9def-c6126a5ed423","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[-1968,560],"parameters":{"width":336,"height":240,"content":"## Batch Processing Note\n\nThe Done branch of this loop is intentionally unused.\n\nAll processing occurs inside the batch loop\nto preserve item context and enable controlled retries."},"typeVersion":1},{"id":"e9d70b17-aabc-44a1-8075-313563ceeed5","name":"Loop over YouTube Results","type":"n8n-nodes-base.splitInBatches","position":[-2048,816],"parameters":{"options":{},"batchSize":5},"executeOnce":false,"typeVersion":3,"alwaysOutputData":false},{"id":"86d6ef5c-81f2-4f97-9cac-a66ff0c83049","name":"Split search queries","type":"n8n-nodes-base.splitOut","position":[-2992,816],"parameters":{"options":{},"fieldToSplitOut":"query"},"typeVersion":1},{"id":"c2dd49f2-7507-4d87-a2b2-bc93f99c9f87","name":"Split YouTube Results","type":"n8n-nodes-base.splitOut","position":[-2464,816],"parameters":{"options":{},"fieldToSplitOut":"items"},"typeVersion":1},{"id":"da59ced5-3853-49b8-9d27-836c2e2a0c6d","name":"Take only the amount of top videos","type":"n8n-nodes-base.limit","position":[-416,800],"parameters":{"maxItems":5},"typeVersion":1},{"id":"e45fddc2-32ea-4806-a13a-1bce27b89da7","name":"Sort by Relevance (Our score)","type":"n8n-nodes-base.sort","position":[-624,800],"parameters":{"options":{"disableDotNotation":false},"sortFieldsUi":{"sortField":[{"order":"descending","fieldName":"RelevanceScore"}]}},"typeVersion":1},{"id":"1a1664ba-0c66-4bcf-af3a-e87daaefdbe4","name":"Check max attempts","type":"n8n-nodes-base.if","position":[480,912],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"7e2888de-8186-4b07-93df-ab1e296413ee","operator":{"type":"number","operation":"lt"},"leftValue":"={{ $json.attempt }}","rightValue":31}]}},"typeVersion":2.2},{"id":"03e48bda-9ca9-48f8-9884-b11966b75319","name":"Increase attempt counter","type":"n8n-nodes-base.code","position":[1184,1056],"parameters":{"mode":"runOnceForEachItem","jsCode":"return {\n  ...$json,\n  attempt: ($json.attempt ?? 0) + 1\n};"},"typeVersion":2},{"id":"0c7a3b89-3ea0-4430-a7d6-b32f16555864","name":"Search for the relevant video","type":"n8n-nodes-base.googleSheets","position":[688,912],"parameters":{"options":{},"filtersUI":{"values":[{"lookupValue":"={{ $json.url }}","lookupColumn":"URL"}]},"sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit#gid=0","cachedResultName":"YouTube AI Resources"},"documentId":{"__rl":true,"mode":"list","value":"1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit?usp=drivesdk","cachedResultName":"Eli_YouTube AI Resources"}},"credentials":{"googleSheetsOAuth2Api":{"id":"j0u6p2nyjo7aHG38","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"53226a86-cb8a-492a-9903-4a5c135c3c32","name":"Update the status of the download","type":"n8n-nodes-base.googleSheets","position":[896,912],"parameters":{"columns":{"value":{"video_id":"={{ $json.url }}","row_number":0,"DownloadURL":"=Issue with the download :-( "},"schema":[{"id":"RelevanceScore","type":"string","display":true,"removed":true,"required":false,"displayName":"RelevanceScore","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Title","type":"string","display":true,"removed":true,"required":false,"displayName":"Title","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Channel","type":"string","display":true,"removed":true,"required":false,"displayName":"Channel","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Published at","type":"string","display":true,"removed":true,"required":false,"displayName":"Published at","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Duration","type":"string","display":true,"removed":true,"required":false,"displayName":"Duration","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Views","type":"string","display":true,"removed":true,"required":false,"displayName":"Views","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Likes","type":"string","display":true,"removed":true,"required":false,"displayName":"Likes","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Description","type":"string","display":true,"removed":true,"required":false,"displayName":"Description","defaultMatch":false,"canBeUsedToMatch":true},{"id":"URL","type":"string","display":true,"removed":false,"required":false,"displayName":"URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"video_id","type":"string","display":true,"removed":false,"required":false,"displayName":"video_id","defaultMatch":false,"canBeUsedToMatch":true},{"id":"DownloadURL","type":"string","display":true,"removed":false,"required":false,"displayName":"DownloadURL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"row_number","type":"number","display":true,"removed":false,"readOnly":true,"required":false,"displayName":"row_number","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":["URL"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit#gid=0","cachedResultName":"YouTube AI Resources"},"documentId":{"__rl":true,"mode":"list","value":"1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit?usp=drivesdk","cachedResultName":"Eli_YouTube AI Resources"}},"credentials":{"googleSheetsOAuth2Api":{"id":"j0u6p2nyjo7aHG38","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"8f76971a-92f0-42fd-828a-2507c8000df0","name":"Search for the relevant video1","type":"n8n-nodes-base.googleSheets","position":[1056,432],"parameters":{"options":{},"filtersUI":{"values":[{"lookupValue":"={{ $json.url }}","lookupColumn":"URL"}]},"sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit#gid=0","cachedResultName":"YouTube AI Resources"},"documentId":{"__rl":true,"mode":"list","value":"1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit?usp=drivesdk","cachedResultName":"Eli_YouTube AI Resources"}},"credentials":{"googleSheetsOAuth2Api":{"id":"j0u6p2nyjo7aHG38","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"da150c72-b361-4189-8ef4-45dea4ced79d","name":"Update the status and the download URL","type":"n8n-nodes-base.googleSheets","position":[1232,432],"parameters":{"columns":{"value":{"URL":"={{ $json.URL }}","fetch_id":"={{ $('Check if download is complete').item.json.id }}","DownloadURL":"={{ $('Check if download is complete').item.json.download_url }}","fetch_error":"={{ $('Check if download is complete').item.json.error }}","fetch_status":"={{ $('Check if download is complete').item.json.status }}"},"schema":[{"id":"RelevanceScore","type":"string","display":true,"removed":true,"required":false,"displayName":"RelevanceScore","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Title","type":"string","display":true,"removed":true,"required":false,"displayName":"Title","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Channel","type":"string","display":true,"removed":true,"required":false,"displayName":"Channel","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Published at","type":"string","display":true,"removed":true,"required":false,"displayName":"Published at","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Duration","type":"string","display":true,"removed":true,"required":false,"displayName":"Duration","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Views","type":"string","display":true,"removed":true,"required":false,"displayName":"Views","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Likes","type":"string","display":true,"removed":true,"required":false,"displayName":"Likes","defaultMatch":false,"canBeUsedToMatch":true},{"id":"Description","type":"string","display":true,"removed":true,"required":false,"displayName":"Description","defaultMatch":false,"canBeUsedToMatch":true},{"id":"URL","type":"string","display":true,"removed":false,"required":false,"displayName":"URL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"video_id","type":"string","display":true,"removed":true,"required":false,"displayName":"video_id","defaultMatch":false,"canBeUsedToMatch":true},{"id":"DownloadURL","type":"string","display":true,"removed":false,"required":false,"displayName":"DownloadURL","defaultMatch":false,"canBeUsedToMatch":true},{"id":"fetch_id","type":"string","display":true,"removed":false,"required":false,"displayName":"fetch_id","defaultMatch":false,"canBeUsedToMatch":true},{"id":"fetch_status","type":"string","display":true,"removed":false,"required":false,"displayName":"fetch_status","defaultMatch":false,"canBeUsedToMatch":true},{"id":"fetch_error","type":"string","display":true,"removed":false,"required":false,"displayName":"fetch_error","defaultMatch":false,"canBeUsedToMatch":true},{"id":"row_number","type":"number","display":true,"removed":true,"readOnly":true,"required":false,"displayName":"row_number","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":["URL"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit#gid=0","cachedResultName":"YouTube AI Resources"},"documentId":{"__rl":true,"mode":"list","value":"1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1YxDDQ2-TH-Vw6KgG3kxwn1L4Fyttm8lFf200JGFl6-s/edit?usp=drivesdk","cachedResultName":"Eli_YouTube AI Resources"}},"credentials":{"googleSheetsOAuth2Api":{"id":"j0u6p2nyjo7aHG38","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"6e4fca81-19fc-4e96-9c90-c30a02cf747c","name":"Sticky Note5","type":"n8n-nodes-base.stickyNote","position":[-1792,-432],"parameters":{"width":800,"height":608,"content":"## How it works\n\nThis workflow searches YouTube for educational videos using a predefined list of queries. It filters out low-quality or irrelevant results and enriches the remaining videos with additional metadata, including view count, like count, publish date, and video duration (converted to seconds).\n\nNext, the workflow scores and sorts the videos based on relevance and quality, keeps only the top results, and writes them to a Google Sheet. Optionally, the best videos are submitted to FetchMedia.io for downloading. The workflow continuously polls FetchMedia until each download is completed and then updates the same Google Sheet row using the YouTube video ID as the unique identifier.\n\n## Setup steps\n\n1. Connect **YouTube Data API** OAuth credentials and ensure the *YouTube Data API v3* is enabled in Google Cloud.\n2. Connect **Google Sheets** OAuth credentials and select the target spreadsheet and sheet.\n3. *(Optional)* Add your **FetchMedia.io API key** (recommended via environment variables) and verify the FetchMedia API endpoints.\n4. Update the search queries and filtering thresholds (duration, views, likes, publish date) to match your requirements.\n5. Run the workflow once and verify that rows are appended to Google Sheets and that download URLs are written back after completion."},"typeVersion":1},{"id":"e37e00be-3c8d-4396-951a-bf6855120ad7","name":"Sticky Note6","type":"n8n-nodes-base.stickyNote","position":[-3312,768],"parameters":{"color":3,"width":992,"height":192,"content":"### Search YouTube + split results"},"typeVersion":1},{"id":"79b62512-61b7-404e-bf60-a1240ef3cf54","name":"Sticky Note7","type":"n8n-nodes-base.stickyNote","position":[-2304,768],"parameters":{"color":4,"height":192,"content":"### Filter for relevance (title keywords / exclude spam)"},"typeVersion":1},{"id":"0e827385-25d0-4159-bd26-aa245d7ab6b8","name":"Sticky Note8","type":"n8n-nodes-base.stickyNote","position":[-1872,960],"parameters":{"color":5,"width":480,"height":208,"content":"### Fetch video metadata + convert duration to seconds"},"typeVersion":1},{"id":"1d1fb890-746f-4cae-b3fe-545dc523ca40","name":"Sticky Note9","type":"n8n-nodes-base.stickyNote","position":[-1376,960],"parameters":{"color":2,"width":400,"height":208,"content":"### Quality filter (views/likes/date/duration)"},"typeVersion":1},{"id":"eb1fcafe-8efd-4ab1-b39d-632f6a04f961","name":"Sticky Note10","type":"n8n-nodes-base.stickyNote","position":[-928,752],"parameters":{"color":6,"width":704,"height":224,"content":"### Score + sort + limit top results"},"typeVersion":1},{"id":"9bed9cdd-44be-4cbd-94e6-3e1df2e7181f","name":"Sticky Note11","type":"n8n-nodes-base.stickyNote","position":[-256,368],"parameters":{"color":7,"width":1712,"height":256,"content":"### Write to Sheets + download + poll status + update row"},"typeVersion":1},{"id":"e9d2c28a-4bff-49b2-9e8b-fecdf6e70cf3","name":"Sticky Note12","type":"n8n-nodes-base.stickyNote","position":[240,800],"parameters":{"width":1216,"height":464,"content":"### If the FetchMedia service is unresponsive, we limit the number of retry attempts to 30.\nAfter reaching this threshold, the process will stop and the corresponding row in the Google Sheet will be updated with a “Failed” status."},"typeVersion":1},{"id":"627cf3d4-2e18-4a95-b3fc-14dd8a78e039","name":"Check if download is complete","type":"n8n-nodes-base.if","position":[848,448],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"b91739ff-bac6-492e-b282-e52ef1faac9e","operator":{"name":"filter.operator.equals","type":"string","operation":"equals"},"leftValue":"={{ $json.status }}","rightValue":"success"}]}},"typeVersion":2.2}],"active":false,"pinData":{},"settings":{"executionOrder":"v1"},"versionId":"789b3114-237a-4321-b783-969835216f53","connections":{"Set Query":{"main":[[{"node":"Split search queries","type":"main","index":0}]]},"Search YouTube":{"main":[[{"node":"Split YouTube Results","type":"main","index":0}]]},"Check max attempts":{"main":[[{"node":"Poll loop (Wait → GET status → check → loop)","type":"main","index":0}],[{"node":"Search for the relevant video","type":"main","index":0}]]},"Filter for Quality":{"main":[[{"node":"Remove Unnecessary Fields","type":"main","index":0}]]},"Get Video Metadata":{"main":[[{"node":"Add Duration Seconds","type":"main","index":0}]]},"Add Duration Seconds":{"main":[[{"node":"Filter for Quality","type":"main","index":0}]]},"Filter for Relevance":{"main":[[{"node":"Loop over YouTube Results","type":"main","index":0}]]},"Split search queries":{"main":[[{"node":"Search YouTube","type":"main","index":0}]]},"Send to Google Sheets":{"main":[[{"node":"Start Fetch (FetchMedia) (HTTP Request)","type":"main","index":0}]]},"Split YouTube Results":{"main":[[{"node":"Filter for Relevance","type":"main","index":0}]]},"Remove Duplicate Videos":{"main":[[{"node":"Generate Relevance Score","type":"main","index":0}]]},"Generate Relevance Score":{"main":[[{"node":"Sort by Relevance (Our score)","type":"main","index":0}]]},"Increase attempt counter":{"main":[[{"node":"Check max attempts","type":"main","index":0}]]},"Init Polling State (Set)":{"main":[[{"node":"Poll loop (Wait → GET status → check → loop)","type":"main","index":0}]]},"Loop over YouTube Results":{"main":[[{"node":"Remove Duplicate Videos","type":"main","index":0}],[{"node":"Get Video Metadata","type":"main","index":0}]]},"Remove Unnecessary Fields":{"main":[[{"node":"Loop over YouTube Results","type":"main","index":0}]]},"Check if download is complete":{"main":[[{"node":"Search for the relevant video1","type":"main","index":0}],[{"node":"Increase attempt counter","type":"main","index":0}]]},"Search for the relevant video":{"main":[[{"node":"Update the status of the download","type":"main","index":0}]]},"Sort by Relevance (Our score)":{"main":[[{"node":"Take only the amount of top videos","type":"main","index":0}]]},"Search for the relevant video1":{"main":[[{"node":"Update the status and the download URL","type":"main","index":0}]]},"Check Fetch Status (HTTP Request)":{"main":[[{"node":"Check if download is complete","type":"main","index":0}]]},"Take only the amount of top videos":{"main":[[{"node":"Send to Google Sheets","type":"main","index":0}]]},"When clicking ‘Execute workflow’":{"main":[[{"node":"Set Query","type":"main","index":0}]]},"Start Fetch (FetchMedia) (HTTP Request)":{"main":[[{"node":"Init Polling State (Set)","type":"main","index":0}]]},"Poll loop (Wait → GET status → check → loop)":{"main":[[{"node":"Check Fetch Status (HTTP Request)","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":40,"nodeTypes":{"n8n-nodes-base.if":{"count":2},"n8n-nodes-base.set":{"count":4},"n8n-nodes-base.code":{"count":2},"n8n-nodes-base.sort":{"count":1},"n8n-nodes-base.wait":{"count":1},"n8n-nodes-base.limit":{"count":1},"n8n-nodes-base.filter":{"count":2},"n8n-nodes-base.splitOut":{"count":2},"n8n-nodes-base.stickyNote":{"count":13},"n8n-nodes-base.httpRequest":{"count":4},"n8n-nodes-base.googleSheets":{"count":5},"n8n-nodes-base.manualTrigger":{"count":1},"n8n-nodes-base.splitInBatches":{"count":1},"n8n-nodes-base.removeDuplicates":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"FetchMedia","username":"fetchmedia","bio":"FetchMedia, an API platform that simplifies fetching and processing videos from social media sources like TikTok, Instagram, and YouTube, or any public link, and offers managed FFmpeg processing for automated editing and repurposing","verified":false,"links":["https://fetchmedia.io"],"avatar":"https://gravatar.com/avatar/6e780bb4aeb96359224c1a0b753d38ea5b82b8e92fcb4a38622af9d288046ca7?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":38,"icon":"fa:pen","name":"n8n-nodes-base.set","codex":{"data":{"alias":["Set","JS","JSON","Filter","Transform","Map"],"resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/","icon":"📈","label":"Automatically pulling and visualizing data with n8n"},{"url":"https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/","icon":"📡","label":"Database Monitoring and Alerting with n8n"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/","icon":"📱","label":"Building an expense tracking app in 10 minutes"},{"url":"https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/","icon":"📹","label":"The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/","icon":"🧰","label":"Learn to Build Powerful API Endpoints Using Webhooks"},{"url":"https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/","icon":"📈","label":"How a Membership Development Manager automates his work and investments"},{"url":"https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/","icon":"📈","label":"A low-code bitcoin ticker built with QuestDB and n8n.io"},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.set/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"input\"]","defaults":{"name":"Edit Fields"},"iconData":{"icon":"pen","type":"icon"},"displayName":"Edit Fields (Set)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":39,"icon":"fa:sync","name":"n8n-nodes-base.splitInBatches","codex":{"data":{"alias":["Loop","Concatenate","Batch","Split","Split In Batches"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Loop Over Items","color":"#007755"},"iconData":{"icon":"sync","type":"icon"},"displayName":"Loop Over Items (Split in Batches)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":514,"icon":"fa:pause-circle","name":"n8n-nodes-base.wait","codex":{"data":{"alias":["pause","sleep","delay","timeout"],"resources":{"generic":[{"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/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.wait/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Wait","color":"#804050"},"iconData":{"icon":"pause-circle","type":"icon"},"displayName":"Wait","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":565,"icon":"fa:sticky-note","name":"n8n-nodes-base.stickyNote","codex":{"data":{"alias":["Comments","Notes","Sticky"],"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"Sticky Note","color":"#FFD233"},"iconData":{"icon":"sticky-note","type":"icon"},"displayName":"Sticky Note","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":834,"icon":"file:code.svg","name":"n8n-nodes-base.code","codex":{"data":{"alias":["cpde","Javascript","JS","Python","Script","Custom Code","Function"],"details":"The Code node allows you to execute JavaScript in your workflow.","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Code"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Code","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":838,"icon":"fa:mouse-pointer","name":"n8n-nodes-base.manualTrigger","codex":{"data":{"resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.manualworkflowtrigger/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\"]","defaults":{"name":"When clicking ‘Execute workflow’","color":"#909298"},"iconData":{"icon":"mouse-pointer","type":"icon"},"displayName":"Manual Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":844,"icon":"fa:filter","name":"n8n-nodes-base.filter","codex":{"data":{"alias":["Router","Filter","Condition","Logic","Boolean","Branch"],"details":"The Filter node can be used to filter items based on a condition. If the condition is met, the item will be passed on to the next node. If the condition is not met, the item will be omitted. Conditions can be combined together by AND(meet all conditions), or OR(meet at least one condition).","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.filter/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Filter","color":"#229eff"},"iconData":{"icon":"filter","type":"icon"},"displayName":"Filter","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1237,"icon":"file:limit.svg","name":"n8n-nodes-base.limit","codex":{"data":{"alias":["Limit","Remove","Slice","Transform","Array","List","Item"],"details":"","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.limit/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Limit"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48ZyBmaWxsPSIjMkZCNjdDIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcGF0aD0idXJsKCNhKSIgY2xpcC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNNTEyIDQ1OGMwLTYuNjI3LTUuMzczLTEyLTEyLTEyaC02OGMtNi42MjcgMC0xMiA1LjM3My0xMiAxMnYyNGMwIDYuNjI3IDUuMzczIDEyIDEyIDEyaDY4YzYuNjI3IDAgMTItNS4zNzMgMTItMTJ6bS0xNDAgMGMwLTYuNjI3LTUuMzczLTEyLTEyLTEyaC02OGMtNi42MjcgMC0xMiA1LjM3My0xMiAxMnYyNGMwIDYuNjI3IDUuMzczIDEyIDEyIDEyaDY4YzYuNjI3IDAgMTItNS4zNzMgMTItMTJ6bS0xNDAgMGMwLTYuNjI3LTUuMzczLTEyLTEyLTEyaC02OGMtNi42MjcgMC0xMiA1LjM3My0xMiAxMnYyNGMwIDYuNjI3IDUuMzczIDEyIDEyIDEyaDY4YzYuNjI3IDAgMTItNS4zNzMgMTItMTJ6bS0xNDAgMGMwLTYuNjI3LTUuMzczLTEyLTEyLTEySDEyYy02LjYyNyAwLTEyIDUuMzczLTEyIDEydjI0YzAgNi42MjcgNS4zNzMgMTIgMTIgMTJoNjhjNi42MjcgMCAxMi01LjM3MyAxMi0xMnptMTUyLTIyMmMtNi42MjcgMC0xMi01LjM3My0xMi0xMlYzMGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDI0YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MTk0YzAgNi42MjctNS4zNzMgMTItMTIgMTJ6Ii8+PHBhdGggZD0iTTE0OS41NzcgMTQ2Ljk4MmM5LjM5OC05LjM0NiAyNC41OTQtOS4zMDQgMzMuOTQxLjA5NUwyNTYgMjE5Ljk2NGw3Mi40ODItNzIuODg3YzkuMzQ3LTkuMzk5IDI0LjU0My05LjQ0MSAzMy45NDEtLjA5NXM5LjQ0MSAyNC41NDMuMDk1IDMzLjk0MWwtODkuNSA5MGEyNCAyNCAwIDAgMS0zNC4wMzYgMGwtODkuNS05MGMtOS4zNDYtOS4zOTgtOS4zMDQtMjQuNTk0LjA5NS0zMy45NDFNMCAzNTBjMC02LjYyNyA1LjM3My0xMiAxMi0xMmg0ODhjNi42MjcgMCAxMiA1LjM3MyAxMiAxMnYyNGMwIDYuNjI3LTUuMzczIDEyLTEyIDEySDEyYy02LjYyNyAwLTEyLTUuMzczLTEyLTEyeiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImEiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0wIDBoNTEydjUxMkgweiIvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPg=="},"displayName":"Limit","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1238,"icon":"file:removeDuplicates.svg","name":"n8n-nodes-base.removeDuplicates","codex":{"data":{"alias":["Dedupe","Deduplicate","Duplicates","Remove","Unique","Transform","Array","List","Item"],"details":"","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.removeduplicates/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Remove Duplicates"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48ZyBmaWxsPSIjNTRCOEM5IiBjbGlwLXBhdGg9InVybCgjYSkiPjxwYXRoIGQ9Ik0xMzQuMDk3IDExMWgzOC44Mjl2MzIuNTA4SDEzOC4xNnYzNC42MzVoLTMyLjUwOHYtMzguNjk5YzAtMTUuNzA5IDEyLjczNS0yOC40NDQgMjguNDQ1LTI4LjQ0NG03Ny42NTggMzIuNTA4VjExMWg3Ny42NTd2MzIuNTA4em0xMTYuNDg2IDBWMTExaDc3LjY1OHYzMi41MDh6bTExNi40ODcgMFYxMTFoMzguODI5YzE1LjcxIDAgMjguNDQ1IDEyLjczNSAyOC40NDUgMjguNDQ0djM4LjY5OWgtMzIuNTA4di0zNC42MzV6bTM0Ljc2NiA3My4yMzhoMzIuNTA4djM4LjY5OGMwIDE1LjcxLTEyLjczNSAyOC40NDUtMjguNDQ1IDI4LjQ0NWgtMzguODI5di0zMi41MDhoMzQuNzY2ek0wIDI0NC41MzdDMCAyMjkuMzI5IDEyLjczNSAyMTcgMjguNDQ0IDIxN2gzNDkuNDYxYzE1LjcwOSAwIDI4LjQ0NCAxMi4zMjkgMjguNDQ0IDI3LjUzN3YxMjkuODE1YzAgMTUuMjA4LTEyLjczNSAyNy41MzctMjguNDQ0IDI3LjUzN0gyOC40NDVDMTIuNzM0IDQwMS44ODkgMCAzODkuNTYgMCAzNzQuMzUyeiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImEiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0wIDBoNTEydjUxMkgweiIvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPg=="},"displayName":"Remove Duplicates","typeVersion":2,"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"}]},{"id":1240,"icon":"file:sort.svg","name":"n8n-nodes-base.sort","codex":{"data":{"alias":["Sort","Order","Transform","Array","List","Item","Random"],"details":"","resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.sort/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Sort"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjODI4N0VCIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMzAuNSA0MjIuNWMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMzUxYzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMjRjNi42MjcgMCAxMiA1LjM3MyAxMiAxMnYzNTFjMCA2LjYyNy01LjM3MyAxMi0xMiAxMnoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjxwYXRoIGZpbGw9IiM4Mjg3RUIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTM2LjA3NyAzMzMuNDgyYzkuMzk4LTkuMzQ2IDI0LjU5NC05LjMwNCAzMy45NC4wOTVsNzIuNDgzIDcyLjg4NyA3Mi40ODItNzIuODg3YzkuMzQ3LTkuMzk5IDI0LjU0My05LjQ0MSAzMy45NDEtLjA5NXM5LjQ0MSAyNC41NDMuMDk1IDMzLjk0MWwtODkuNSA5MGEyNCAyNCAwIDAgMS0zNC4wMzYgMGwtODkuNS05MGMtOS4zNDYtOS4zOTgtOS4zMDQtMjQuNTk0LjA5NS0zMy45NDFNMzgxLjUgODkuNWM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjM1MWMwIDYuNjI3LTUuMzczIDEyLTEyIDEyaC0yNGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMzUxYzAtNi42MjcgNS4zNzMtMTIgMTItMTJ6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48cGF0aCBmaWxsPSIjODI4N0VCIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00NzUuOTIzIDE3OC41MThjLTkuMzk4IDkuMzQ2LTI0LjU5NCA5LjMwNC0zMy45NDEtLjA5NUwzNjkuNSAxMDUuNTM2bC03Mi40ODIgNzIuODg3Yy05LjM0NyA5LjM5OS0yNC41NDMgOS40NDEtMzMuOTQxLjA5NXMtOS40NDEtMjQuNTQzLS4wOTUtMzMuOTQxbDg5LjUtOTBhMjQgMjQgMCAwIDEgMzQuMDM2IDBsODkuNSA5MGM5LjM0NiA5LjM5OCA5LjMwNCAyNC41OTQtLjA5NSAzMy45NDEiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg=="},"displayName":"Sort","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]}],"categories":[{"id":32,"name":"Market Research"},{"id":49,"name":"AI Summarization"}],"image":[]}}