{"workflow":{"id":13752,"name":"Generate cinematic videos with OpenAI Sora and uploadtourl hosting","views":59,"recentViews":1,"totalViews":59,"createdAt":"2026-02-27T11:07:37.834Z","description":"# 🎬 WhatsApp Cinematic Video Automation with OpenAI Sora\n\nElevate your digital presence with high-fidelity cinematic video automation. This workflow orchestrates the complex, asynchronous rendering process of OpenAI Sora—transforming static product images or creative concepts into hosted MP4 assets ready for immediate deployment to your storefront or social channels.\n\n---\n\n## 🎯 What This Workflow Does\n\nThis template manages two distinct cinematic video pipelines through a specialized polling and hosting architecture:\n\n### 🛍️ Pipeline 1: Cinematic E-commerce Walkthroughs\nTurn a single product photo into a premium commercial asset. This path generates 10–20 second videos featuring dramatic reveals, 360° rotations, and professional studio lighting effects. The resulting video URL can be embedded directly into Shopify, Meesho, or other e-commerce platforms.\n\n### 📱 Pipeline 2: Dynamic Social Media Remixes\nOptimized for TikTok, Reels, and Stories, this path \"remixes\" source images into specific artistic styles (like cyberpunk or anime) with vertical aspect ratios (9:16). It applies cinematic camera movements and dramatic transitions to create viral-ready short-form content.\n\n---\n\n## ✨ Key Features\n\n- **Asynchronous Loop Management:** Features a built-in Wait → Poll → IF logic that checks Sora's status every 20 seconds, ensuring the workflow only proceeds once the heavy rendering is complete.\n- **Automated Media Hosting:** Uses the `uploadtourl` node to automatically transfer completed MP4 binaries from OpenAI's temporary storage to your permanent CDN via presigned PUT URLs.\n- **Adaptive Prompt Engineering:** Code nodes dynamically inject user parameters (product name, duration, style) into complex Sora prompts to guarantee a premium \"commercial aesthetic\".\n- **Webhook-Driven Scalability:** Centralizes all video generation requests into a single endpoint that routes tasks based on the `jobType` payload.\n\n---\n\n## 💼 Perfect For\n\n- **E-commerce Brands:** Creating thousands of unique product walkthroughs without a video crew.\n- **Social Media Content Creators:** Rapidly testing different visual aesthetics for short-form video ads.\n- **Marketing Agencies:** Scaling personalized video ad campaigns across different global markets and platforms.\n- **App Developers:** Automating the creation of dynamic background videos for mobile or web interfaces.\n\n---\n\n## 🔧 What You'll Need\n\n### Required Integrations\n\n- **OpenAI Sora API Access:** Requires a Tier 4/5 or Enterprise OpenAI platform account with Sora permissions.\n- **CDN/Cloud Storage:** A hosting provider (like S3 or GCS) that supports presigned PUT URLs for uploading files via `uploadtourl`.\n\n---\n\n## ⚙️ Configuration Steps\n\n1. **API Setup:** Create an HTTP Header Auth credential named `OpenAI Header Auth` with your Bearer token.\n2. **Domain Mapping:** Replace `YOUR_CDN_DOMAIN` in the response nodes with your actual public asset URL structure.\n3. **Wait Tuning:** Adjust the 20-second wait node if your generation durations frequently exceed Sora's standard render times.\n\n---\n\nBring your assets to life! Import this template and connect your OpenAI API key to start generating and hosting cinematic videos automatically!","workflow":{"meta":{"instanceId":"277842713620d9f5554de3b1518b865a152c8c4db680008bd8aec536fc18b4a8","templateCredsSetupCompleted":true},"nodes":[{"id":"a05ea6b6-03cd-4915-b716-2dd0b0b54e95","name":"📋 Flow Overview","type":"n8n-nodes-base.stickyNote","position":[-672,-416],"parameters":{"width":740,"height":580,"content":"## 🎬 OpenAI Sora – Video Generation → Upload to URL\n\n**How it works:**\n1. Webhook receives a POST with `jobType`: **ecommerce** or **remix**\n2. **Route by Job Type** switch sends it down the correct pipeline\n3. A code node crafts the **Sora prompt** and submits the job via `POST /v1/video/generations`\n4. Sora is **async** — a **Wait → Poll → IF** loop checks status every 20 seconds\n5. When `status = succeeded`, an HTTP GET node **downloads the MP4 as binary**\n6. The binary is passed to the **n8n Upload to URL node** which PUTs the MP4 to your CDN\n7. A code node builds the **JSON response** with the public CDN URL\n\n**Credential needed:**\n`OpenAI Header Auth` — HTTP Header Auth\nHeader name: `Authorization`  ·  Value: `Bearer YOUR_OPENAI_KEY`\nSora access required: platform.openai.com (Tier 4/5 or enterprise)\n\n**Sora API endpoints used:**\n- Submit:  `POST https://api.openai.com/v1/video/generations`\n- Poll:    `GET  https://api.openai.com/v1/video/generations/{id}`\n- Download: video URL from completed response\n\n"},"typeVersion":1},{"id":"d3d90ba8-0ba0-41d0-941b-379b5034f085","name":"Sticky – Entry & Routing","type":"n8n-nodes-base.stickyNote","position":[-32,192],"parameters":{"color":7,"width":560,"height":924,"content":"### 1️⃣ Webhook Entry & Job Router\n**Webhook – Receive Video Job** accepts a POST at `/sora-video-job` with `jobType` and generation parameters in the request body.\n**Route by Job Type Switch** reads `$json.body.jobType` and routes:\n- Output 0 `ecommerce` → Cinematic E-commerce pipeline\n- Output 1 `remix` → Social Media Remix pipeline\n- Fallback → **Respond – Error** returns a 400 JSON error"},"typeVersion":1},{"id":"e1b88a43-f58c-4dfb-acf0-6355204a40b3","name":"Sticky – E-commerce Pipeline","type":"n8n-nodes-base.stickyNote","position":[592,176],"parameters":{"color":7,"width":2480,"height":500,"content":"### 2️⃣ Cinematic E-commerce Walkthrough\n**Build E-commerce Prompt** constructs the Sora prompt: cinematic product reveal, 360° rotation, studio lighting, close-ups on key features, premium brand aesthetic. Injects `productName`, `duration` (10–20 s), `style`, and stamps a `jobId`.\n**Sora – Submit E-commerce Job** POSTs to `/v1/video/generations` with the prompt, `input_image` URL, duration and resolution `1080p`. Returns a `generation_id` immediately — Sora renders async.\n**Store E-commerce Job ID** code node carries `generationId` and all metadata forward.\n**Wait 20s** pauses execution while Sora renders.\n**Sora – Poll E-commerce Status** GETs `/v1/video/generations/{generationId}` to read the current status.\n**Check E-commerce Done IF** evaluates `$json.status`: `succeeded` → true branch (continue); anything else → false branch (loop back to Wait 20s).\n**Fetch E-commerce Video** HTTP GET downloads the MP4 binary from `$json.video_url`.\n**Upload to URL – E-commerce** is the **n8n built-in Upload to URL node** — PUTs the MP4 binary to your CDN presigned URL.\n**Build E-commerce Response** returns `{ publicUrl, productName, duration, jobId, generatedAt }`.\n**Respond to Webhook – E-commerce** sends JSON to caller."},"typeVersion":1},{"id":"3daf779d-1dd3-430c-b015-b361b60d3fbd","name":"Sticky – Remix Pipeline","type":"n8n-nodes-base.stickyNote","position":[592,704],"parameters":{"color":7,"width":2480,"height":480,"content":"### 3️⃣ Dynamic Social Media Remix\n**Build Remix Prompt** constructs the Sora prompt: transforms the source image into a `remixStyle` visual (e.g. cyberpunk, anime, golden hour), adds cinematic camera movement and `addEffect`. Sets `aspectRatio: 9:16` for Reels/TikTok, `1:1` for Feed. Duration fixed at 8 s. Stamps a `jobId`.\n**Sora – Submit Remix Job** POSTs to `/v1/video/generations` with `input_image`, prompt, duration 8 and platform-appropriate aspect ratio.\n**Store Remix Job ID** carries `generationId` and metadata forward.\n**Wait 20s** pauses while Sora renders.\n**Sora – Poll Remix Status** GETs the generation status endpoint.\n**Check Remix Done IF** evaluates status: `succeeded` → true; else → false loops back to Wait 20s.\n**Fetch Remix Video** downloads the MP4 binary from the completed response.\n**Upload to URL – Remix** is the **n8n built-in Upload to URL node** — PUTs the MP4 to your CDN.\n**Build Remix Response** returns `{ publicUrl, remixStyle, platform, aspectRatio, jobId, generatedAt }`.\n**Respond to Webhook – Remix** sends JSON to caller."},"typeVersion":1},{"id":"19282007-01ef-4021-9702-4a6f521ea0da","name":"Webhook – Receive Video Job","type":"n8n-nodes-base.webhook","position":[0,608],"webhookId":"ff4f69df-7b44-47ed-b35e-fec4a7f23e03","parameters":{"path":"sora-video-job","options":{},"httpMethod":"POST","responseMode":"responseNode"},"typeVersion":2},{"id":"aa7080f8-4aae-4f67-ba08-562f3d7e4180","name":"Route by Job Type","type":"n8n-nodes-base.switch","position":[320,608],"parameters":{"rules":{"values":[{"outputKey":"E-commerce","conditions":{"options":{"caseSensitive":false,"typeValidation":"strict"},"combinator":"and","conditions":[{"operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.body.jobType.toLowerCase() }}","rightValue":"ecommerce"}]},"renameOutput":true},{"outputKey":"Remix","conditions":{"options":{"caseSensitive":false,"typeValidation":"strict"},"combinator":"and","conditions":[{"operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.body.jobType.toLowerCase() }}","rightValue":"remix"}]},"renameOutput":true}]},"options":{"fallbackOutput":"extra"}},"typeVersion":3},{"id":"a66d6c39-f952-4303-b966-a7e7627e4a97","name":"Respond – Error","type":"n8n-nodes-base.respondToWebhook","position":[336,928],"parameters":{"options":{},"respondWith":"json","responseBody":"={{ JSON.stringify($json) }}"},"typeVersion":1},{"id":"d1aaf53c-fa42-4eb4-bb77-42d3612824da","name":"Build E-commerce Prompt","type":"n8n-nodes-base.code","position":[624,448],"parameters":{"jsCode":"const b       = $json.body;\nconst product = b.productName     || 'Product';\nconst dur     = parseInt(b.duration || 15);\nconst style   = b.style           || 'premium product reveal';\nconst imgUrl  = b.productImageUrl || '';\nconst jobId   = `ECOM-${Date.now()}`;\nconst prompt  = `Cinematic ${dur}-second product video for ${product}. ` +\n  `Style: ${style}. Start with a dramatic reveal from black, ` +\n  `smoothly rotate the product 360 degrees under professional studio lighting, ` +\n  `close-up on key features with shallow depth of field, ` +\n  `end with the product centred on a clean white background. ` +\n  `4K quality, no text, premium commercial aesthetic.`;\nreturn [{ json: { prompt, product, duration: dur, style, productImageUrl: imgUrl, jobId } }];\n"},"typeVersion":2},{"id":"70b20b5c-dd27-44e7-92ae-278c26bd2553","name":"Sora – Submit E-commerce Job","type":"n8n-nodes-base.httpRequest","position":[880,448],"parameters":{"url":"https://api.openai.com/v1/video/generations","method":"POST","options":{},"sendHeaders":true,"authentication":"genericCredentialType","genericAuthType":"httpHeaderAuth","headerParameters":{"parameters":[{"name":"Content-Type","value":"application/json"}]}},"typeVersion":4.2},{"id":"e305f297-4187-4df1-a6c7-85f8d60e01a5","name":"Store E-commerce Job ID","type":"n8n-nodes-base.code","position":[1152,448],"parameters":{"jsCode":"const prev = $('Build E-commerce Prompt').item.json;\nconst genId = $json.id || $json.generation_id;\nif (!genId) throw new Error('No generation_id returned from Sora');\nreturn [{ json: { ...prev, generationId: genId } }];\n"},"typeVersion":2},{"id":"a7a3bb94-30d6-4da2-932e-0f7c96f990cc","name":"Wait 20s – E-commerce","type":"n8n-nodes-base.wait","position":[1392,448],"webhookId":"b6b93967-0377-47f6-a0a4-622486d4949a","parameters":{"amount":20},"typeVersion":1.1},{"id":"6e696d0f-5dba-4c9d-ba98-7a0bb6ed5eea","name":"Sora – Poll E-commerce Status","type":"n8n-nodes-base.httpRequest","position":[1632,448],"parameters":{"url":"=https://api.openai.com/v1/video/generations/{{ $json.generationId }}","options":{}},"typeVersion":4.2},{"id":"e13f76b5-6b3b-4386-b6cc-13c7bebeb947","name":"Check E-commerce Done","type":"n8n-nodes-base.if","position":[1872,448],"parameters":{"options":{},"conditions":{"options":{"caseSensitive":false,"typeValidation":"strict"},"combinator":"and","conditions":[{"operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.status }}","rightValue":"succeeded"}]}},"typeVersion":2.1},{"id":"afab4d94-8cc3-479c-8ff8-1f3ff6263bf6","name":"Fetch E-commerce Video","type":"n8n-nodes-base.httpRequest","position":[2112,368],"parameters":{"url":"={{ $json.video_url || $json.output?.url || $json.generations?.[0]?.url }}","options":{}},"typeVersion":4.2},{"id":"1ba3c0f3-a981-4bec-b377-5b4af8a1a192","name":"Build E-commerce Response","type":"n8n-nodes-base.code","position":[2608,368],"parameters":{"jsCode":"const p = $('Build E-commerce Prompt').item.json;\nreturn [{ json: {\n  success: true, jobId: p.jobId, jobType: 'ecommerce',\n  productName: p.product, duration: p.duration, style: p.style,\n  publicUrl: `https://YOUR_CDN_DOMAIN/${p.jobId}.mp4`,\n  generatedAt: new Date().toISOString(),\n  note: 'Embed this MP4 URL directly in your Shopify/Meesho product listing.'\n}}];\n"},"typeVersion":2},{"id":"ce0c666a-fde5-4e5a-b65f-b3932eb9e564","name":"Respond to Webhook – E-commerce","type":"n8n-nodes-base.respondToWebhook","position":[2848,368],"parameters":{"options":{},"respondWith":"json","responseBody":"={{ JSON.stringify($json) }}"},"typeVersion":1},{"id":"f371d4b1-a647-42b6-a007-756f60c4ca30","name":"Build Remix Prompt","type":"n8n-nodes-base.code","position":[624,960],"parameters":{"jsCode":"const b        = $json.body;\nconst style    = b.remixStyle     || 'cyberpunk';\nconst effect   = b.addEffect      || 'golden hour lighting';\nconst platform = (b.platform || 'reels').toLowerCase();\nconst srcImg   = b.sourceImageUrl || '';\nconst jobId    = `REMIX-${Date.now()}`;\nconst aspect   = ['reels','tiktok','story'].includes(platform) ? '9:16' : '1:1';\nconst dur      = 8;\nconst prompt   = `Transform this image into a ${dur}-second cinematic ${style} style video. ` +\n  `Apply ${effect} with smooth cinematic camera movement and dramatic transitions. ` +\n  `Vibrant colour grading, professional motion blur on cuts, ` +\n  `optimised for ${platform} vertical short-form format. No text overlays.`;\nreturn [{ json: { prompt, style, effect, platform, aspect, duration: dur, sourceImageUrl: srcImg, jobId } }];\n"},"typeVersion":2},{"id":"2549243b-f77b-4f20-bc13-8cffa7c586d5","name":"Sora – Submit Remix Job","type":"n8n-nodes-base.httpRequest","position":[848,960],"parameters":{"url":"https://api.openai.com/v1/video/generations","method":"POST","options":{},"sendHeaders":true,"authentication":"genericCredentialType","genericAuthType":"httpHeaderAuth","headerParameters":{"parameters":[{"name":"Content-Type","value":"application/json"}]}},"typeVersion":4.2},{"id":"434029b0-9ca9-4081-9760-5929a899632e","name":"Store Remix Job ID","type":"n8n-nodes-base.code","position":[1152,960],"parameters":{"jsCode":"const prev = $('Build Remix Prompt').item.json;\nconst genId = $json.id || $json.generation_id;\nif (!genId) throw new Error('No generation_id returned from Sora');\nreturn [{ json: { ...prev, generationId: genId } }];\n"},"typeVersion":2},{"id":"6cea91b0-5583-4062-8e74-e0de974d57af","name":"Wait 20s – Remix","type":"n8n-nodes-base.wait","position":[1376,960],"webhookId":"e789a7a3-9db0-46c8-9e59-3ea88451799d","parameters":{"amount":20},"typeVersion":1.1},{"id":"ccc8ec96-c821-46e7-a38e-58b2f4585e40","name":"Sora – Poll Remix Status","type":"n8n-nodes-base.httpRequest","position":[1648,960],"parameters":{"url":"=https://api.openai.com/v1/video/generations/{{ $json.generationId }}","options":{}},"typeVersion":4.2},{"id":"7665ced7-b14a-4e64-a607-31b48ae3ab92","name":"Check Remix Done","type":"n8n-nodes-base.if","position":[1888,960],"parameters":{"options":{},"conditions":{"options":{"caseSensitive":false,"typeValidation":"strict"},"combinator":"and","conditions":[{"operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.status }}","rightValue":"succeeded"}]}},"typeVersion":2.1},{"id":"7beeb3d4-c4d7-474f-bfbc-5123c3d66cc7","name":"Fetch Remix Video","type":"n8n-nodes-base.httpRequest","position":[2128,944],"parameters":{"url":"={{ $json.video_url || $json.output?.url || $json.generations?.[0]?.url }}","options":{}},"typeVersion":4.2},{"id":"9bddd891-bcc3-4321-8f84-43c087f514fc","name":"Build Remix Response","type":"n8n-nodes-base.code","position":[2576,944],"parameters":{"jsCode":"const p = $('Build Remix Prompt').item.json;\nreturn [{ json: {\n  success: true, jobId: p.jobId, jobType: 'remix',\n  remixStyle: p.style, effect: p.effect,\n  platform: p.platform, aspectRatio: p.aspect,\n  publicUrl: `https://YOUR_CDN_DOMAIN/${p.jobId}.mp4`,\n  generatedAt: new Date().toISOString(),\n  note: 'Post this URL directly to TikTok/Reels via their upload API.'\n}}];\n"},"typeVersion":2},{"id":"a8fcc0ba-1093-4fe8-8718-98947247d385","name":"Respond to Webhook – Remix","type":"n8n-nodes-base.respondToWebhook","position":[2832,944],"parameters":{"options":{},"respondWith":"json","responseBody":"={{ JSON.stringify($json) }}"},"typeVersion":1},{"id":"23ee271e-8b4f-46a1-875a-81d18e259f21","name":"Upload to URL","type":"n8n-nodes-uploadtourl.uploadToUrl","position":[2368,368],"parameters":{},"credentials":{"uploadToUrlApi":{"id":"NFDYkIVrmT40WVK4","name":"Upload to URL account 4"}},"typeVersion":1},{"id":"41c3168b-2bb4-4e41-a8d2-bb7fce5f45b0","name":"Upload to URL1","type":"n8n-nodes-uploadtourl.uploadToUrl","position":[2352,944],"parameters":{},"credentials":{"uploadToUrlApi":{"id":"NFDYkIVrmT40WVK4","name":"Upload to URL account 4"}},"typeVersion":1}],"pinData":{},"connections":{"Upload to URL":{"main":[[{"node":"Build E-commerce Response","type":"main","index":0}]]},"Upload to URL1":{"main":[[{"node":"Build Remix Response","type":"main","index":0}]]},"Check Remix Done":{"main":[[{"node":"Fetch Remix Video","type":"main","index":0}],[{"node":"Wait 20s – Remix","type":"main","index":0}]]},"Fetch Remix Video":{"main":[[{"node":"Upload to URL1","type":"main","index":0}]]},"Route by Job Type":{"main":[[{"node":"Build E-commerce Prompt","type":"main","index":0}],[{"node":"Build Remix Prompt","type":"main","index":0}],[{"node":"Respond – Error","type":"main","index":0}]]},"Build Remix Prompt":{"main":[[{"node":"Sora – Submit Remix Job","type":"main","index":0}]]},"Store Remix Job ID":{"main":[[{"node":"Wait 20s – Remix","type":"main","index":0}]]},"Wait 20s – Remix":{"main":[[{"node":"Sora – Poll Remix Status","type":"main","index":0}]]},"Build Remix Response":{"main":[[{"node":"Respond to Webhook – Remix","type":"main","index":0}]]},"Check E-commerce Done":{"main":[[{"node":"Fetch E-commerce Video","type":"main","index":0}],[{"node":"Wait 20s – E-commerce","type":"main","index":0}]]},"Fetch E-commerce Video":{"main":[[{"node":"Upload to URL","type":"main","index":0}]]},"Build E-commerce Prompt":{"main":[[{"node":"Sora – Submit E-commerce Job","type":"main","index":0}]]},"Store E-commerce Job ID":{"main":[[{"node":"Wait 20s – E-commerce","type":"main","index":0}]]},"Wait 20s – E-commerce":{"main":[[{"node":"Sora – Poll E-commerce Status","type":"main","index":0}]]},"Build E-commerce Response":{"main":[[{"node":"Respond to Webhook – E-commerce","type":"main","index":0}]]},"Sora – Submit Remix Job":{"main":[[{"node":"Store Remix Job ID","type":"main","index":0}]]},"Sora – Poll Remix Status":{"main":[[{"node":"Check Remix Done","type":"main","index":0}]]},"Webhook – Receive Video Job":{"main":[[{"node":"Route by Job Type","type":"main","index":0}]]},"Sora – Submit E-commerce Job":{"main":[[{"node":"Store E-commerce Job ID","type":"main","index":0}]]},"Sora – Poll E-commerce Status":{"main":[[{"node":"Check E-commerce Done","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":27,"nodeTypes":{"n8n-nodes-base.if":{"count":2},"n8n-nodes-base.code":{"count":6},"n8n-nodes-base.wait":{"count":2},"n8n-nodes-base.switch":{"count":1},"n8n-nodes-base.webhook":{"count":1},"n8n-nodes-base.stickyNote":{"count":4},"n8n-nodes-base.httpRequest":{"count":6},"n8n-nodes-base.respondToWebhook":{"count":3},"n8n-nodes-uploadtourl.uploadToUrl":{"count":2}}},"status":"published","readyToDemo":null,"user":{"name":"Jitesh Dugar","username":"jiteshdugar","bio":"AI Automation Specialist - OpenAI, CRM & Automation Expert with a solid understanding of various tools that include Zapier, Make, Zoho CRM, Hubspot, Google Sheets, Airtable, Pipedrive, Google Analytics, and more.","verified":true,"links":["https://www.linkedin.com/in/jiteshdugar"],"avatar":"https://gravatar.com/avatar/edaa3abb99806b0586dced559d0a5417f24a507e7c4464a63960f0638a4b1b90?r=pg&d=retro&size=200"},"nodes":[{"id":19,"icon":"file:httprequest.svg","name":"n8n-nodes-base.httpRequest","codex":{"data":{"alias":["API","Request","URL","Build","cURL"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/","icon":"📈","label":"Automatically pulling and visualizing data with n8n"},{"url":"https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/","icon":"✍️","label":"Learn how to automatically cross-post your content with n8n"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/running-n8n-on-ships-an-interview-with-maranics/","icon":"🛳","label":"Running n8n on ships: An interview with Maranics"},{"url":"https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/","icon":" 🪢","label":"What are APIs and how to use them with no code"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/world-poetry-day-workflow/","icon":"📜","label":"Celebrating World Poetry Day with a daily poem in Telegram"},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/automate-designs-with-bannerbear-and-n8n/","icon":"🎨","label":"Automate Designs with Bannerbear and n8n"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/","icon":"📱","label":"Building an expense tracking app in 10 minutes"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/how-to-use-the-http-request-node-the-swiss-army-knife-for-workflow-automation/","icon":"🧰","label":"How to use the HTTP Request Node - The Swiss Army Knife for Workflow Automation"},{"url":"https://n8n.io/blog/learn-how-to-use-webhooks-with-mattermost-slash-commands/","icon":"🦄","label":"Learn how to use webhooks with Mattermost slash commands"},{"url":"https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/","icon":"📈","label":"How a Membership Development Manager automates his work and investments"},{"url":"https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/","icon":"📈","label":"A low-code bitcoin ticker built with QuestDB and n8n.io"},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/automations-for-activists/","icon":"✨","label":"How Common Knowledge use workflow automation for activism"},{"url":"https://n8n.io/blog/creating-scheduled-text-affirmations-with-n8n/","icon":"🤟","label":"Creating scheduled text affirmations with n8n"},{"url":"https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"output\"]","defaults":{"name":"HTTP Request","color":"#0004F5"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MCAyMEM0MCA4Ljk1MzE0IDMxLjA0NjkgMCAyMCAwQzguOTUzMTQgMCAwIDguOTUzMTQgMCAyMEMwIDMxLjA0NjkgOC45NTMxNCA0MCAyMCA0MEMzMS4wNDY5IDQwIDQwIDMxLjA0NjkgNDAgMjBaTTIwIDM2Ljk0NThDMTguODg1MiAzNi45NDU4IDE3LjEzNzggMzUuOTY3IDE1LjQ5OTggMzIuNjk4NUMxNC43OTY0IDMxLjI5MTggMTQuMTk2MSAyOS41NDMxIDEzLjc1MjYgMjcuNjg0N0gyNi4xODk4QzI1LjgwNDUgMjkuNTQwMyAyNS4yMDQ0IDMxLjI5MDEgMjQuNTAwMiAzMi42OTg1QzIyLjg2MjIgMzUuOTY3IDIxLjExNDggMzYuOTQ1OCAyMCAzNi45NDU4Wk0xMi45MDY0IDIwQzEyLjkwNjQgMjEuNjA5NyAxMy4wMDg3IDIzLjE2NCAxMy4yMDAzIDI0LjYzMDVIMjYuNzk5N0MyNi45OTEzIDIzLjE2NCAyNy4wOTM2IDIxLjYwOTcgMjcuMDkzNiAyMEMyNy4wOTM2IDE4LjM5MDMgMjYuOTkxMyAxNi44MzYgMjYuNzk5NyAxNS4zNjk1SDEzLjIwMDNDMTMuMDA4NyAxNi44MzYgMTIuOTA2NCAxOC4zOTAzIDEyLjkwNjQgMjBaTTIwIDMuMDU0MTlDMjEuMTE0OSAzLjA1NDE5IDIyLjg2MjIgNC4wMzA3OCAyNC41MDAxIDcuMzAwMzlDMjUuMjA2NiA4LjcxNDA4IDI1LjgwNzIgMTAuNDA2NyAyNi4xOTIgMTIuMzE1M0gxMy43NTAxQzE0LjE5MzMgMTAuNDA0NyAxNC43OTQyIDguNzEyNTQgMTUuNDk5OCA3LjMwMDY0QzE3LjEzNzcgNC4wMzA4MyAxOC44ODUxIDMuMDU0MTkgMjAgMy4wNTQxOVpNMzAuMTQ3OCAyMEMzMC4xNDc4IDE4LjQwOTkgMzAuMDU0MyAxNi44NjE3IDI5LjgyMjcgMTUuMzY5NUgzNi4zMDQyQzM2LjcyNTIgMTYuODQyIDM2Ljk0NTggMTguMzk2NCAzNi45NDU4IDIwQzM2Ljk0NTggMjEuNjAzNiAzNi43MjUyIDIzLjE1OCAzNi4zMDQyIDI0LjYzMDVIMjkuODIyN0MzMC4wNTQzIDIzLjEzODMgMzAuMTQ3OCAyMS41OTAxIDMwLjE0NzggMjBaTTI2LjI3NjcgNC4yNTUxMkMyNy42MzY1IDYuMzYwMTkgMjguNzExIDkuMTMyIDI5LjM3NzQgMTIuMzE1M0gzNS4xMDQ2QzMzLjI1MTEgOC42NjggMzAuMTA3IDUuNzgzNDYgMjYuMjc2NyA0LjI1NTEyWk0xMC42MjI2IDEyLjMxNTNINC44OTI5M0M2Ljc1MTQ3IDguNjY3ODQgOS44OTM1MSA1Ljc4MzQxIDEzLjcyMzIgNC4yNTUxM0MxMi4zNjM1IDYuMzYwMjEgMTEuMjg5IDkuMTMyMDEgMTAuNjIyNiAxMi4zMTUzWk0zLjA1NDE5IDIwQzMuMDU0MTkgMjEuNjAzIDMuMjc3NDMgMjMuMTU3NSAzLjY5NDg0IDI0LjYzMDVIMTAuMTIxN0M5Ljk0NjE5IDIzLjE0MiA5Ljg1MjIyIDIxLjU5NDMgOS44NTIyMiAyMEM5Ljg1MjIyIDE4LjQwNTcgOS45NDYxOSAxNi44NTggMTAuMTIxNyAxNS4zNjk1SDMuNjk0ODRDMy4yNzc0MyAxNi44NDI1IDMuMDU0MTkgMTguMzk3IDMuMDU0MTkgMjBaTTI2LjI3NjYgMzUuNzQyN0MyNy42MzY1IDMzLjYzOTMgMjguNzExIDMwLjg2OCAyOS4zNzc0IDI3LjY4NDdIMzUuMTA0NkMzMy4yNTEgMzEuMzMyMiAzMC4xMDY4IDM0LjIxNzkgMjYuMjc2NiAzNS43NDI3Wk0xMy43MjM0IDM1Ljc0MjdDOS44OTM2OSAzNC4yMTc5IDYuNzUxNTUgMzEuMzMyNCA0Ljg5MjkzIDI3LjY4NDdIMTAuNjIyNkMxMS4yODkgMzAuODY4IDEyLjM2MzUgMzMuNjM5MyAxMy43MjM0IDM1Ljc0MjdaIiBmaWxsPSIjM0E0MkU5Ii8+Cjwvc3ZnPgo="},"displayName":"HTTP Request","typeVersion":4,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":20,"icon":"fa:map-signs","name":"n8n-nodes-base.if","codex":{"data":{"alias":["Router","Filter","Condition","Logic","Boolean","Branch"],"details":"The IF node can be used to implement binary conditional logic in your workflow. You can set up one-to-many conditions to evaluate each item of data being inputted into the node. That data will either evaluate to TRUE or FALSE and route out of the node accordingly.\n\nThis node has multiple types of conditions: Bool, String, Number, and Date & Time.","resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"If","color":"#408000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"If","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":47,"icon":"file:webhook.svg","name":"n8n-nodes-base.webhook","codex":{"data":{"alias":["HTTP","API","Build","WH"],"resources":{"generic":[{"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/running-n8n-on-ships-an-interview-with-maranics/","icon":"🛳","label":"Running n8n on ships: An interview with Maranics"},{"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/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/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/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/how-to-automatically-give-kudos-to-contributors-with-github-slack-and-n8n/","icon":"👏","label":"How to automatically give kudos to contributors with GitHub, Slack, 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/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/creating-custom-incident-response-workflows-with-n8n/","label":"How to automate every step of an incident response workflow"},{"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/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-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"trigger\"]","defaults":{"name":"Webhook"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCI+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTM1IDM3Yy0yLjIgMC00LTEuOC00LTRzMS44LTQgNC00IDQgMS44IDQgNC0xLjggNC00IDQiLz48cGF0aCBmaWxsPSIjMzc0NzRmIiBkPSJNMzUgNDNjLTMgMC01LjktMS40LTcuOC0zLjdsMy4xLTIuNWMxLjEgMS40IDIuOSAyLjMgNC43IDIuMyAzLjMgMCA2LTIuNyA2LTZzLTIuNy02LTYtNmMtMSAwLTIgLjMtMi45LjdsLTEuNyAxTDIzLjMgMTZsMy41LTEuOSA1LjMgOS40YzEtLjMgMi0uNSAzLS41IDUuNSAwIDEwIDQuNSAxMCAxMFM0MC41IDQzIDM1IDQzIi8+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTE0IDQzQzguNSA0MyA0IDM4LjUgNCAzM2MwLTQuNiAzLjEtOC41IDcuNS05LjdsMSAzLjlDOS45IDI3LjkgOCAzMC4zIDggMzNjMCAzLjMgMi43IDYgNiA2czYtMi43IDYtNnYtMmgxNXY0SDIzLjhjLS45IDQuNi01IDgtOS44IDgiLz48cGF0aCBmaWxsPSIjZTkxZTYzIiBkPSJNMTQgMzdjLTIuMiAwLTQtMS44LTQtNHMxLjgtNCA0LTQgNCAxLjggNCA0LTEuOCA0LTQgNCIvPjxwYXRoIGZpbGw9IiMzNzQ3NGYiIGQ9Ik0yNSAxOWMtMi4yIDAtNC0xLjgtNC00czEuOC00IDQtNCA0IDEuOCA0IDQtMS44IDQtNCA0Ii8+PHBhdGggZmlsbD0iI2U5MWU2MyIgZD0ibTE1LjcgMzQtMy40LTIgNS45LTkuN2MtMi0xLjktMy4yLTQuNS0zLjItNy4zIDAtNS41IDQuNS0xMCAxMC0xMHMxMCA0LjUgMTAgMTBjMCAuOS0uMSAxLjctLjMgMi41bC0zLjktMWMuMS0uNS4yLTEgLjItMS41IDAtMy4zLTIuNy02LTYtNnMtNiAyLjctNiA2YzAgMi4xIDEuMSA0IDIuOSA1LjFsMS43IDF6Ii8+PC9zdmc+"},"displayName":"Webhook","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":112,"icon":"fa:map-signs","name":"n8n-nodes-base.switch","codex":{"data":{"alias":["Router","If","Path","Filter","Condition","Logic","Branch","Case"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"Switch","color":"#506000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"Switch","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":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":535,"icon":"file:webhook.svg","name":"n8n-nodes-base.respondToWebhook","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.respondtowebhook/"}]},"categories":["Core Nodes","Utility"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"transform\"]","defaults":{"name":"Respond to Webhook"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCI+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTM1IDM3Yy0yLjIgMC00LTEuOC00LTRzMS44LTQgNC00IDQgMS44IDQgNC0xLjggNC00IDQiLz48cGF0aCBmaWxsPSIjMzc0NzRmIiBkPSJNMzUgNDNjLTMgMC01LjktMS40LTcuOC0zLjdsMy4xLTIuNWMxLjEgMS40IDIuOSAyLjMgNC43IDIuMyAzLjMgMCA2LTIuNyA2LTZzLTIuNy02LTYtNmMtMSAwLTIgLjMtMi45LjdsLTEuNyAxTDIzLjMgMTZsMy41LTEuOSA1LjMgOS40YzEtLjMgMi0uNSAzLS41IDUuNSAwIDEwIDQuNSAxMCAxMFM0MC41IDQzIDM1IDQzIi8+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTE0IDQzQzguNSA0MyA0IDM4LjUgNCAzM2MwLTQuNiAzLjEtOC41IDcuNS05LjdsMSAzLjlDOS45IDI3LjkgOCAzMC4zIDggMzNjMCAzLjMgMi43IDYgNiA2czYtMi43IDYtNnYtMmgxNXY0SDIzLjhjLS45IDQuNi01IDgtOS44IDgiLz48cGF0aCBmaWxsPSIjZTkxZTYzIiBkPSJNMTQgMzdjLTIuMiAwLTQtMS44LTQtNHMxLjgtNCA0LTQgNCAxLjggNCA0LTEuOCA0LTQgNCIvPjxwYXRoIGZpbGw9IiMzNzQ3NGYiIGQ9Ik0yNSAxOWMtMi4yIDAtNC0xLjgtNC00czEuOC00IDQtNCA0IDEuOCA0IDQtMS44IDQtNCA0Ii8+PHBhdGggZmlsbD0iI2U5MWU2MyIgZD0ibTE1LjcgMzQtMy40LTIgNS45LTkuN2MtMi0xLjktMy4yLTQuNS0zLjItNy4zIDAtNS41IDQuNS0xMCAxMC0xMHMxMCA0LjUgMTAgMTBjMCAuOS0uMSAxLjctLjMgMi41bC0zLjktMWMuMS0uNS4yLTEgLjItMS41IDAtMy4zLTIuNy02LTYtNnMtNiAyLjctNiA2YzAgMi4xIDEuMSA0IDIuOSA1LjFsMS43IDF6Ii8+PC9zdmc+"},"displayName":"Respond to Webhook","typeVersion":2,"nodeCategories":[{"id":7,"name":"Utility"},{"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"}]}],"categories":[{"id":31,"name":"Content Creation"},{"id":51,"name":"Multimodal AI"}],"image":[]}}