{"workflow":{"id":14549,"name":"Generate bulk Veo 3 videos from Google Sheets via Vertex AI","views":0,"recentViews":0,"totalViews":0,"createdAt":"2026-04-01T09:55:58.662Z","description":"### 🎬 What This Workflow Does\n\nThis workflow turns your Google Sheet into a **fully automated AI video factory** powered by **Google Veo 3 via Vertex AI**. Simply fill in your prompts, choose your video settings, tick a checkbox — and walk away. The workflow handles everything: sending the prompt to Veo 3, waiting for the video to generate, downloading it, uploading it to Google Drive, and writing the link back to your sheet automatically.\n\nNo manual downloading. No checking APIs. No copy-pasting links. Just tick and go.\n\nWhether you need 5 videos or 500, this workflow runs each one through the same reliable pipeline — with full error handling so you always know what succeeded and what failed, and exactly why.\n\n---\n\n### 🧠 Why This Workflow Exists\n\nGoogle Veo 3 is one of the most powerful AI video generation models in the world — but the Google Cloud console only lets you generate videos one at a time. If you have a client who needs 50 product videos, or a content team producing videos at scale, doing it manually through the UI is completely impractical.\n\nThis workflow solves that. It gives you a **spreadsheet-driven production pipeline** for Veo 3 — where each row is one video job, fully configurable with its own prompt, resolution, aspect ratio, and duration.\n\n---\n\n### ✅ What You Get\n\n- ✅ Checkbox trigger — tick a row in Google Sheets to start generation\n- ✅ Per-row settings — each video can have its own resolution, aspect ratio, and duration\n- ✅ Smart polling loop — automatically checks every 60 seconds until the video is ready\n- ✅ Google Drive upload — finished videos land in your Drive folder automatically\n- ✅ Sheet auto-update — Drive link written back to the exact row when done\n- ✅ Full error handling — content blocks and API errors are logged to the sheet with the exact reason\n- ✅ No wasted credits — validation gate blocks empty or incomplete rows before any API call is made\n\n---\n\n### 🗂️ Google Sheet Template\n\nUse this ready-made Google Sheet template to get started immediately:\n👉 **[Click here to open the Google Sheet Template](https://docs.google.com/spreadsheets/d/1E3ujHxOFXvokfDnEMK7wcxy21F3YZgKLL_rAIvcZrkI/edit?usp=sharing)** *(File → Make a copy)*\n\nYour sheet must have these columns in this exact order:\n\n| Column | Description |\n|---|---|\n| `prompt` | Your video description — what Veo 3 should generate |\n| `resolution` | Video quality: `720p` or `1080p` |\n| `aspectRatio` | `16:9` for landscape, `9:16` for portrait/vertical |\n| `durationSeconds` | Video length: `4`, `6`, or `8` seconds only |\n| `send_for_generation` | Checkbox column — tick this to trigger the workflow |\n| `video_drive_link` | Auto-filled — Drive link on success, error reason on failure |\n| `row_number` | Auto-filled by Apps Script — do not edit manually |\n\n---\n\n### ⚙️ Full Setup Guide — Step by Step\n\n---\n\n#### STEP 1 — Create a Google Cloud Project & Enable Vertex AI\n\n1. Go to [console.cloud.google.com](https://console.cloud.google.com)\n2. Click the project dropdown at the top → **New Project**\n3. Give it a name (e.g. `veo-automation`) → click **Create**\n4. Once created, make sure this project is selected\n5. In the left menu go to **APIs & Services → Library**\n6. Search for **Vertex AI API** → click it → click **Enable**\n7. Now go to **Billing** in the left menu\n8. Link a billing account to your project — Vertex AI requires billing to be enabled even if you're within free tier limits\n\n---\n\n#### STEP 2 — Get Your Vertex AI API Key\n\n1. go on this url https://console.cloud.google.com/vertex-ai/studio in the vertex ai studio create the api key\n2. Save the key somewhere safe — you will paste it into the **Data Collection** node in n8n\n\n---\n\n#### STEP 3 — Get Your Project ID\n\n1. In Google Cloud Console, look at the top bar — your **Project ID** is shown next to the project name\n2. It looks like: `project-xxxxxxx-xxxx-xxxx-ada` or similar\n3. Copy this — you will paste it into the **Data Collection** node in n8n\n\n---\n\n#### STEP 4 — Set Up n8n Credentials\n\nIn n8n you need two Google credential connections:\n\n**Google Sheets OAuth2**\n1. In n8n go to **Settings → Credentials → New**\n2. Search for **Google Sheets OAuth2 API**\n3. Follow the OAuth flow to connect your Google account\n4. This credential is used by the **Update video Link in sheet** and **Update Error in Sheet** nodes\n\n**Google Drive OAuth2**\n1. Same process — search for **Google Drive OAuth2 API**\n2. Connect the same or a different Google account\n3. This credential is used by the **Upload Video to Drive** node\n\n---\n\n#### STEP 5 — Configure the Data Collection Node\n\nOpen the **Data Collection** node in n8n and update these values:\n\n| Field | What to put |\n|---|---|\n| `project_id` | Your Google Cloud Project ID from Step 3 |\n| `vertex_api` | Your Vertex AI API Key from Step 2 |\n| `veo_3_model` | `veo-3.0-generate-preview` (or newer model if available) |\n| `api_endpoint` | Leave as `us-central1-aiplatform.googleapis.com` |\n| `region` | Leave as `us-central1` |\n\n---\n\n#### STEP 6 — Set Up the Google Drive Folder\n\n1. Go to [drive.google.com](https://drive.google.com)\n2. Create a new folder where your videos will be saved (e.g. `Veo Generated Videos`)\n3. Open the folder — copy the folder ID from the URL:\n   - URL looks like: `https://drive.google.com/drive/folders/xxxxxxxxxxxxxx-xxxxxxxxxxx`\n   - The folder ID is the last part: `xxxxxxxxx-xxxxxxxxx`\n4. Paste this into the **Upload Video to Drive** node → Folder ID field\n\n---\n\n#### STEP 7 — Connect Your Google Sheet\n\n1. Open the **Update video Link in sheet** node\n2. Click the Document field → select your copy of the Google Sheet template\n3. Make sure the sheet tab selected is `VEO_3`\n4. Do the same in the **Update Error in Sheet** node\n\n---\n\nHere is the full rewritten section in clean markdown without any code blocks around the URL:\n\n---\n\n### STEP 8 — Set Up the Apps Script Webhook Trigger\n\nThis is what connects your Google Sheet checkbox to n8n. Without this, ticking the checkbox does nothing.\n\n📄 **[Download the Apps Script file here](https://docs.google.com/document/d/11S2YIm-1FE31ztlyv2PK9AjbjArTW7r-__kfmtd7z1Q/edit?usp=sharing)**\n\n**How to install it:**\n\n1. Open your Google Sheet\n2. Click **Extensions → Apps Script**\n3. Delete any existing code in the editor\n4. Paste the entire Apps Script code provided with this template\n5. Find the url field in the config block and replace YOUR_N8N_WEBHOOK_URL_HERE with your n8n webhook URL — found in the **Google Sheet Trigger** node in n8n. Use the **Production URL**, not the test URL.\n6. Click **Save** (floppy disk icon at the top)\n\n**Now add the installable trigger — this step is critical:**\n\n7. In Apps Script, click the **clock icon** on the left sidebar (Triggers)\n8. Click **+ Add Trigger** in the bottom right corner\n9. Set these exact options:\n   - Choose which function to run: **handleEdit**\n   - Choose which deployment to run: **Head**\n   - Select event source: **From spreadsheet**\n   - Select event type: **On edit**\n10. Click **Save**\n11. Google will ask you to authorise the script — click through and allow all permissions\n12. Go back to your sheet and tick a checkbox in column E to test — open Apps Script **Executions** tab to confirm it fired successfully\n\n⚠️ **Why the installable trigger is required:** The basic onEdit function that Google runs automatically does NOT have permission to make external HTTP requests. The installable trigger runs under your Google account permissions and can call external URLs like your n8n webhook. This is a Google limitation — not an n8n one.\n\n---\n\n### STEP 9 — Activate the Workflow in n8n\n\n1. In n8n open the workflow\n2. Toggle the workflow to **Active** using the switch in the top right corner\n3. Copy the **Production webhook URL** from the Google Sheet Trigger node\n4. Paste it into your Apps Script config in Step 8 where it says YOUR_N8N_WEBHOOK_URL_HERE\n\n---\n\n### 🔄 How the Workflow Runs — Full Flow Explained\n\n### 🔄 How the Workflow Runs — Full Flow Explained\n\n```\nGoogle Sheet checkbox ticked\n        ↓\nApps Script fires webhook → n8n\n        ↓\nValidation Gate (If node)\n— checks prompt, resolution, aspectRatio are all filled\n— if anything missing → workflow stops, no API call made\n        ↓\nData Collection node\n— bundles all settings into one clean item\n        ↓\nVertex AI — Send for Generation\n— POST to predictLongRunning endpoint\n— returns an operation name (like a tracking number)\n        ↓\nWait 60 seconds\n        ↓\nFetch / Check Video\n— POST to fetchPredictOperation\n— checks if done: true\n        ↓\nIF raiMediaFilteredCount === 0\n  → TRUE: video exists\n      → Convert Base64 to MP4 file\n      → Upload to Google Drive\n      → Write Drive link to sheet ✅\n  → FALSE: check for error\n      → IF raiMediaFilteredCount &gt; 0 OR error exists\n          → Write error reason to sheet ❌\n      → ELSE: still processing\n          → Wait 60 seconds → check again ⏳\n```\n\n\n⚙️ Video Settings Reference\nResolution\n\n720p — standard quality, faster, lower cost\n1080p — high quality, uses more credits\n\nAspect Ratio\n\n16:9 — landscape (YouTube, ads, presentations)\n9:16 — vertical (Instagram Reels, TikTok, YouTube Shorts)\n\nDuration\n\n4, 6, or 8 seconds — Veo 3 only accepts these exact values, no other numbers\n\n---\n\n### ❌ Error Handling — What Gets Logged\n\nIf a video fails, the exact reason is written to the `video_drive_link` column:\n\n Prompt violates Veo safety policy,| Full AI reason from Google ||\n\nThis means your client can see exactly which rows failed and why — without needing to check any logs.\n\n---\n\n### 💡 Tips for Best Results\n\n- Keep prompts on a single line — multi-line prompts are handled automatically by the workflow\n- Use descriptive cinematic prompts: *\"Slow motion close-up of ocean waves at sunset, golden hour, 4K\"*\n- Start with `720p` to test — switch to `1080p` for final production runs\n- Use `9:16` for Instagram Reels, TikTok, YouTube Shorts\n- Use `16:9` for YouTube, presentations, ads\n\n---\n\n### 🔧 Requirements\n\n- n8n (self-hosted or cloud) — version 1.0+\n- Google Cloud account with billing enabled\n- Vertex AI API enabled on your project\n- Google Sheets + Google Drive OAuth credentials in n8n\n- Google Apps Script access on your sheet\n","workflow":{"meta":{"instanceId":"4f3d674a636d1510e4120a3e346e6ed10c98f6398c5a8f2f5294ee80b39a7bc0","templateCredsSetupCompleted":true},"nodes":[{"id":"075c5626-b67e-4d21-9c03-2864d6d279d9","name":"Wait","type":"n8n-nodes-base.wait","position":[-320,176],"webhookId":"bc232b98-f03d-4768-acb0-a5874a64dd5f","parameters":{"amount":60},"typeVersion":1.1},{"id":"81367e44-cb1e-4e50-bb57-22d8583ef118","name":"If","type":"n8n-nodes-base.if","position":[-992,176],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"8a860859-613f-4295-96c6-c2ec920ec520","operator":{"type":"boolean","operation":"true","singleValue":true},"leftValue":"={{ $json.body.data.send_for_generation }}","rightValue":""},{"id":"8069790d-2dd5-4bdc-83b5-0f8e19d15631","operator":{"type":"string","operation":"notEmpty","singleValue":true},"leftValue":"={{ $json.body.data.prompt }}","rightValue":""},{"id":"1cf4e44c-3bfd-491f-bc72-6e309c9a5f1a","operator":{"type":"string","operation":"notEmpty","singleValue":true},"leftValue":"={{ $json.body.data.resolution }}","rightValue":""},{"id":"0f90c20f-37e5-49de-a5af-e6515e0b337d","operator":{"type":"string","operation":"notEmpty","singleValue":true},"leftValue":"={{ $json.body.data.aspectRatio }}","rightValue":""}]}},"typeVersion":2.2},{"id":"265be212-8981-4929-8a3f-6fd5a6269ad3","name":"Data collection","type":"n8n-nodes-base.set","position":[-768,176],"parameters":{"options":{},"assignments":{"assignments":[{"id":"17954335-b96b-4813-9c4a-20817d675448","name":"api_endpoint","type":"string","value":"us-central1-aiplatform.googleapis.com"},{"id":"5cedc3de-6221-4d7e-a6c8-82f4cb9cf0e9","name":"project_id","type":"string","value":"your_cloud_console_project_ID"},{"id":"90019751-e2d5-4764-9bf9-e13916dcc528","name":"veo_3_model","type":"string","value":"veo-3.0-generate-preview"},{"id":"67ab205c-82b3-4263-99c4-c906a0ca6ae9","name":"region","type":"string","value":"us-central1"},{"id":"413415fb-60c5-4d0d-ac45-1e6178a55227","name":"prompt","type":"string","value":"={{ $json.body.data.prompt }}"},{"id":"bf0910e1-b757-4852-9341-a7792161f89b","name":"vertex_api","type":"string","value":"Vertex-AI-API"},{"id":"e307a6ab-c416-4e1d-9659-6c5c29a66c5c","name":"resolution","type":"string","value":"={{ $json.body.data.resolution }}"},{"id":"bd5af97c-1caf-477a-b6e8-de5b4fbe3867","name":"aspectRatio","type":"string","value":"={{ $json.body.data.aspectRatio }}"},{"id":"01dab59a-5a22-4a98-9b16-e5794b70b4a3","name":"durationSeconds","type":"number","value":"={{ $json.body.data.durationSeconds }}"},{"id":"d9cbd980-fdd8-4129-a9dd-4a8112afcb17","name":"row","type":"number","value":"={{ $json.body.row }}"}]}},"typeVersion":3.4},{"id":"68465f8b-bcbf-490a-a4af-85f60b0f5272","name":"Vertex AI Send for Generation","type":"n8n-nodes-base.httpRequest","position":[-544,176],"parameters":{"url":"=https://{{ $json.api_endpoint }}/v1/projects/{{ $json.project_id }}/locations/{{ $json.region }}/publishers/google/models/{{ $json.veo_3_model }}:predictLongRunning","method":"POST","options":{},"jsonBody":"={\n  \"instances\": [\n    {\n      \"prompt\": {{ JSON.stringify($json.prompt) }}\n    }\n  ],\n  \"parameters\": {\n    \"aspectRatio\": \"{{ $json.aspectRatio }}\",\n    \"compressionQuality\": \"optimized\",\n    \"durationSeconds\": {{ $json.durationSeconds }},\n    \"generateAudio\": true,\n    \"resolution\": \"{{ $json.resolution }}\",\n    \"sampleCount\": 1,\n    \"personGeneration\": \"allow_adult\"\n  }\n}","sendBody":true,"sendQuery":true,"specifyBody":"json","queryParameters":{"parameters":[{"name":"key","value":"={{ $json.vertex_api }}"}]}},"typeVersion":4.2},{"id":"ecf60740-7105-4253-aca8-23dfa28ea688","name":"Fetch/Check Video","type":"n8n-nodes-base.httpRequest","position":[-96,176],"parameters":{"url":"=https://{{ $('Data collection').item.json.api_endpoint }}/v1/projects/{{ $('Data collection').item.json.project_id }}/locations/{{ $('Data collection').item.json.region }}/publishers/google/models/{{ $('Data collection').item.json.veo_3_model }}:fetchPredictOperation\n","method":"POST","options":{"response":{"response":{"responseFormat":"json"}}},"jsonBody":"={\n  \"operationName\": \"{{ $json.name }}\"\n}\n","sendBody":true,"sendQuery":true,"specifyBody":"json","queryParameters":{"parameters":[{"name":"key","value":"={{ $('Data collection').item.json.vertex_api }}"}]}},"typeVersion":4.2},{"id":"5d435d6e-41ac-4a55-9b3b-7edb7922476e","name":"Wait before next video check","type":"n8n-nodes-base.wait","position":[544,336],"webhookId":"0e63293c-582f-4e8b-8a4e-ba6d626aaf67","parameters":{"amount":60},"typeVersion":1.1},{"id":"ddc76d39-64d5-4506-afb4-1eda4c3849cb","name":"If Video Is Created","type":"n8n-nodes-base.if","position":[128,96],"parameters":{"options":{},"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"94587ad8-ed9b-4d04-98c9-54389e20f5d8","operator":{"type":"number","operation":"equals"},"leftValue":"={{ $json.response.raiMediaFilteredCount }}","rightValue":0}]}},"typeVersion":2.3},{"id":"f7254f1a-4493-4491-9621-bc97fbd1e471","name":"Convert to Binary File","type":"n8n-nodes-base.convertToFile","position":[464,-256],"parameters":{"options":{},"operation":"toBinary","sourceProperty":"response.videos[0].bytesBase64Encoded"},"typeVersion":1.1},{"id":"f45ffa9a-3b9c-4f19-a57f-06f644113c40","name":"Upload Video to Drive","type":"n8n-nodes-base.googleDrive","position":[656,-256],"parameters":{"name":"={{$now.format('yyyy-MM-dd hh:mm:ss')}}","driveId":{"__rl":true,"mode":"list","value":"My Drive"},"options":{},"folderId":{"__rl":true,"mode":"list","value":"1zcpqSwOmiheqWowes-kQ6mSPPmUiuSoZ","cachedResultUrl":"https://drive.google.com/drive/folders/1zcpqSwOmiheqWowes-kQ6mSPPmUiuSoZ","cachedResultName":"veo"}},"credentials":{"googleDriveOAuth2Api":{"id":"cVOLv96eiCzjHaUY","name":"Google Drive account"}},"typeVersion":3},{"id":"593c1893-9467-4fbd-818e-f9fdfa68e1fa","name":"Google Sheet Trigger","type":"n8n-nodes-base.webhook","position":[-1216,176],"webhookId":"499c5cd9-7fd6-4ddf-829f-3a0eba4b4460","parameters":{"path":"499c5cd9-7fd6-4ddf-829f-3a0eba4b4460","options":{},"httpMethod":"POST"},"typeVersion":2.1},{"id":"8e3976bb-9432-48ec-8d52-041a42566cfa","name":"Update video Link in sheet","type":"n8n-nodes-base.googleSheets","position":[1088,-16],"parameters":{"columns":{"value":{"row_number":"={{ $('Data collection').item.json.row }}","video_drive_link":"={{ $json.webViewLink }}"},"schema":[{"id":"prompt","type":"string","display":true,"removed":true,"required":false,"displayName":"prompt","defaultMatch":false,"canBeUsedToMatch":true},{"id":"resolution","type":"string","display":true,"removed":true,"required":false,"displayName":"resolution","defaultMatch":false,"canBeUsedToMatch":true},{"id":"aspectRatio","type":"string","display":true,"removed":true,"required":false,"displayName":"aspectRatio","defaultMatch":false,"canBeUsedToMatch":true},{"id":"durationSeconds","type":"string","display":true,"removed":true,"required":false,"displayName":"durationSeconds","defaultMatch":false,"canBeUsedToMatch":true},{"id":"send_for_generation","type":"string","display":true,"removed":true,"required":false,"displayName":"send_for_generation","defaultMatch":false,"canBeUsedToMatch":true},{"id":"video_drive_link","type":"string","display":true,"removed":false,"required":false,"displayName":"video_drive_link","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":["row_number"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1E3ujHxOFXvokfDnEMK7wcxy21F3YZgKLL_rAIvcZrkI/edit#gid=0","cachedResultName":"VEO_3"},"documentId":{"__rl":true,"mode":"list","value":"1E3ujHxOFXvokfDnEMK7wcxy21F3YZgKLL_rAIvcZrkI","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1E3ujHxOFXvokfDnEMK7wcxy21F3YZgKLL_rAIvcZrkI/edit?usp=drivesdk","cachedResultName":"google_veo_3_bulk_video_generation_template"}},"credentials":{"googleSheetsOAuth2Api":{"id":"pqhCUJdTO98td28J","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"d2bf3899-b4eb-4b81-a5dc-9c8d3340d225","name":"If Video Generation Eror","type":"n8n-nodes-base.if","position":[352,192],"parameters":{"options":{},"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"or","conditions":[{"id":"94587ad8-ed9b-4d04-98c9-54389e20f5d8","operator":{"type":"number","operation":"gt"},"leftValue":"={{ $json.response.raiMediaFilteredCount }}","rightValue":0},{"id":"367d37fe-842a-4252-8fac-0f21614fdbd7","operator":{"type":"object","operation":"exists","singleValue":true},"leftValue":"={{ $json.error }}","rightValue":""}]}},"typeVersion":2.3},{"id":"fc15ddb8-662d-4df6-981b-0f7ab33e0dff","name":"Update Eror in Sheet","type":"n8n-nodes-base.googleSheets","position":[992,176],"parameters":{"columns":{"value":{"row_number":"={{ $('Data collection').item.json.row }}","video_drive_link":"={{ $json.response?.raiMediaFilteredReasons ?? $json.error }}"},"schema":[{"id":"prompt","type":"string","display":true,"removed":true,"required":false,"displayName":"prompt","defaultMatch":false,"canBeUsedToMatch":true},{"id":"resolution","type":"string","display":true,"removed":true,"required":false,"displayName":"resolution","defaultMatch":false,"canBeUsedToMatch":true},{"id":"aspectRatio","type":"string","display":true,"removed":true,"required":false,"displayName":"aspectRatio","defaultMatch":false,"canBeUsedToMatch":true},{"id":"durationSeconds","type":"string","display":true,"removed":true,"required":false,"displayName":"durationSeconds","defaultMatch":false,"canBeUsedToMatch":true},{"id":"send_for_generation","type":"string","display":true,"removed":true,"required":false,"displayName":"send_for_generation","defaultMatch":false,"canBeUsedToMatch":true},{"id":"video_drive_link","type":"string","display":true,"required":false,"displayName":"video_drive_link","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":["row_number"],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"list","value":"gid=0","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1E3ujHxOFXvokfDnEMK7wcxy21F3YZgKLL_rAIvcZrkI/edit#gid=0","cachedResultName":"VEO_3"},"documentId":{"__rl":true,"mode":"list","value":"1E3ujHxOFXvokfDnEMK7wcxy21F3YZgKLL_rAIvcZrkI","cachedResultUrl":"https://docs.google.com/spreadsheets/d/1E3ujHxOFXvokfDnEMK7wcxy21F3YZgKLL_rAIvcZrkI/edit?usp=drivesdk","cachedResultName":"google_veo_3_bulk_video_generation_template"}},"credentials":{"googleSheetsOAuth2Api":{"id":"pqhCUJdTO98td28J","name":"Google Sheets account"}},"typeVersion":4.7},{"id":"fcb5b9b3-9ebb-4fc0-acf6-5ec6e3bc6af7","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-1776,-16],"parameters":{"width":480,"height":512,"content":"## Bulk Veo 3 Video Generation from Google Sheets via Vertex AI\n### How it works\n\n1. Triggers a workflow based on a Google Sheet update.\n2. Collects data and sends a request to Vertex AI for video generation.\n3. Waits and checks if the video is created successfully.\n4. Converts the video to a binary file, uploads it to Google Drive, and updates the link in the sheet.\n5. Handles errors by updating the error status in the Google Sheet and retrying the video check.\n\n### Setup steps\n\n- [ ] Configure Google Sheet trigger with appropriate webhook.\n- [ ] Set up the Vertex AI API endpoint and credentials.\n- [ ] Configure Google Drive authentication for video uploads.\n- [ ] Set up Google Sheets API for updating video links and error statuses.\n"},"typeVersion":1},{"id":"4daa43a5-9465-4309-8634-609b67377ef6","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[-1264,64],"parameters":{"color":7,"width":416,"height":304,"content":"## Trigger workflow from sheet\n\nStarts the workflow on a specified Google Sheet update."},"typeVersion":1},{"id":"d8480c5a-2bba-472a-8c9b-d74f116ee7c0","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[-832,48],"parameters":{"color":7,"width":416,"height":304,"content":"## Prepare video request\n\nCollects necessary data and sends a POST request to Vertex AI."},"typeVersion":1},{"id":"30859fbc-eb14-4ce1-bf85-2e42acdf46e2","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[-384,0],"parameters":{"color":7,"width":1088,"height":544,"content":"## Video generation loop\n\nWaits for video generation and retries as needed."},"typeVersion":1},{"id":"4115d9fd-b106-4b05-b20a-fbc60bf936e8","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[400,-352],"parameters":{"color":7,"width":416,"height":304,"content":"## Post-process video file\n\nConverts video to a file and uploads it to Google Drive."},"typeVersion":1},{"id":"292e9980-9030-4303-9d0e-3c6e16d00c6a","name":"Sticky Note5","type":"n8n-nodes-base.stickyNote","position":[928,-160],"parameters":{"color":7,"width":416,"height":496,"content":"## Update sheet with results\n\nUpdates Google Sheet with video link or error status."},"typeVersion":1}],"pinData":{},"connections":{"If":{"main":[[{"node":"Data collection","type":"main","index":0}]]},"Wait":{"main":[[{"node":"Fetch/Check Video","type":"main","index":0}]]},"Data collection":{"main":[[{"node":"Vertex AI Send for Generation","type":"main","index":0}]]},"Fetch/Check Video":{"main":[[{"node":"If Video Is Created","type":"main","index":0}]]},"If Video Is Created":{"main":[[{"node":"Convert to Binary File","type":"main","index":0}],[{"node":"If Video Generation Eror","type":"main","index":0}]]},"Google Sheet Trigger":{"main":[[{"node":"If","type":"main","index":0}]]},"Upload Video to Drive":{"main":[[{"node":"Update video Link in sheet","type":"main","index":0}]]},"Convert to Binary File":{"main":[[{"node":"Upload Video to Drive","type":"main","index":0}]]},"If Video Generation Eror":{"main":[[{"node":"Update Eror in Sheet","type":"main","index":0}],[{"node":"Wait before next video check","type":"main","index":0}]]},"Wait before next video check":{"main":[[{"node":"Fetch/Check Video","type":"main","index":0}]]},"Vertex AI Send for Generation":{"main":[[{"node":"Wait","type":"main","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":19,"nodeTypes":{"n8n-nodes-base.if":{"count":3},"n8n-nodes-base.set":{"count":1},"n8n-nodes-base.wait":{"count":2},"n8n-nodes-base.webhook":{"count":1},"n8n-nodes-base.stickyNote":{"count":6},"n8n-nodes-base.googleDrive":{"count":1},"n8n-nodes-base.httpRequest":{"count":2},"n8n-nodes-base.googleSheets":{"count":2},"n8n-nodes-base.convertToFile":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"Salman Mehboob","username":"salmanmehboob","bio":"n8n Automation Engineer with 3+ years building real-world workflows for agencies and businesses. I specialize in AI pipelines, voice automation with Vapi, lead scraping, outreach systems and API integrations. I build things that actually work in production not just demos.","verified":true,"links":["https://www.linkedin.com/in/salman-mehboob-pro/"],"avatar":"https://gravatar.com/avatar/79052fec3c66eab8385100f0bd2d0019602ebf0948148ba84d9cfa5f830e07c4?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":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":58,"icon":"file:googleDrive.svg","name":"n8n-nodes-base.googleDrive","codex":{"data":{"resources":{"generic":[{"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/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/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.googledrive/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"}]},"categories":["Data & Storage"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"input\"]","defaults":{"name":"Google Drive"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgODEgNzMiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9ImEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSI+PHBhdGggZmlsbD0iIzAwNjZkYSIgZD0ibTYuMDQ4IDYxLjI2IDMuNTI4IDYuMDk0Yy43MzMgMS4yODMgMS43ODcgMi4yOTEgMy4wMjQgMy4wMjRsMTIuNi0yMS44MUgwYTguMyA4LjMgMCAwIDAgMS4xIDQuMTI0eiIvPjxwYXRoIGZpbGw9IiMwMGFjNDciIGQ9Ik00MCAyMi45MSAyNy40IDEuMWMtMS4yMzcuNzMzLTIuMjkxIDEuNzQxLTMuMDI0IDMuMDI0TDEuMSA0NC40NDVBOC4zIDguMyAwIDAgMCAwIDQ4LjU2OGgyNS4yeiIvPjxwYXRoIGZpbGw9IiNlYTQzMzUiIGQ9Ik02Ny40IDcwLjM3OGMxLjIzNy0uNzMzIDIuMjkxLTEuNzQxIDMuMDI0LTMuMDI0bDEuNDY2LTIuNTIgNy4wMS0xMi4xNDJhOC4zIDguMyAwIDAgMCAxLjEtNC4xMjRINTQuNzk4bDUuMzYzIDEwLjUzOHoiLz48cGF0aCBmaWxsPSIjMDA4MzJkIiBkPSJNNDAgMjIuOTEgNTIuNiAxLjFDNTEuMzYzLjM2NyA0OS45NDMgMCA0OC40NzcgMEgzMS41MjRjLTEuNDY2IDAtMi44ODcuNDEyLTQuMTI0IDEuMXoiLz48cGF0aCBmaWxsPSIjMjY4NGZjIiBkPSJNNTQuNzk5IDQ4LjU2OEgyNS4ybC0xMi42IDIxLjgxYzEuMjM3LjczMyAyLjY1NyAxLjEgNC4xMjQgMS4xaDQ2LjU1MmMxLjQ2NiAwIDIuODg3LS40MTIgNC4xMjQtMS4xeiIvPjxwYXRoIGZpbGw9IiNmZmJhMDAiIGQ9Ik02Ny4yNjIgMjQuMjg0IDU1LjYyNCA0LjEyNEM1NC44OTEgMi44NDEgNTMuODM3IDEuODMzIDUyLjYgMS4xTDQwIDIyLjkxbDE0LjggMjUuNjU5aDI1LjE1NWE4LjMgOC4zIDAgMCAwLTEuMS00LjEyNHoiLz48L2c+PC9zeW1ib2w+PC9zdmc+"},"displayName":"Google Drive","typeVersion":3,"nodeCategories":[{"id":3,"name":"Data & Storage"}]},{"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":1234,"icon":"file:convertToFile.svg","name":"n8n-nodes-base.convertToFile","codex":{"data":{"alias":["CSV","Spreadsheet","Excel","xls","xlsx","ods","tabular","encode","encoding","Move Binary Data","Binary","File","JSON","HTML","ICS","iCal","RTF","64","Base64"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.converttofile/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Files","Data Transformation"]}}},"group":"[\"input\"]","defaults":{"name":"Convert to File"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjc2MTkgMkMxMy4yNDM3IDIgMTIuODIzNiAyLjQyMDA5IDEyLjgyMzYgMi45MzgzMVYxNS4yNTI2QzEzLjMxOTkgMTUuNDY0MyAxMy43ODUxIDE1Ljc3MiAxNC4xOTEgMTYuMTc1N0wyMS4yMjgzIDIzLjE3MzlDMjIuMDU0OCAyMy45OTU4IDIyLjUxOTUgMjUuMTEzMiAyMi41MTk1IDI2LjI3ODhDMjIuNTE5NSAyNy40NDQzIDIyLjA1NDggMjguNTYxOCAyMS4yMjgzIDI5LjM4MzdMMTQuMTkxIDM2LjM4MTlDMTMuNzg1IDM2Ljc4NTYgMTMuMzE5OSAzNy4wOTMyIDEyLjgyMzYgMzcuMzA1VjM3LjM1MjdDMTIuODIzNiAzNy44NzA5IDEzLjI0MzcgMzguMjkxIDEzLjc2MTkgMzguMjkxSDM5LjA2MTdDMzkuNTc5OSAzOC4yOTEgNDAgMzcuODcwOSA0MCAzNy4zNTI3TDQwIDE1Ljc5NEgyNy4xNDQzQzI2LjYyNjEgMTUuNzk0IDI2LjIwNiAxNS4zNzM5IDI2LjIwNiAxNC44NTU3VjJIMTMuNzYxOVoiIGZpbGw9IiMzQTQyRTkiLz4KPHBhdGggZD0iTTI4Ljg2NDUgMkMyOC43NzgxIDIgMjguNzA4MSAyLjA3MDAyIDI4LjcwODEgMi4xNTYzOVYxMi44MjI3QzI4LjcwODEgMTMuMDgxOCAyOC45MTgyIDEzLjI5MTkgMjkuMTc3MyAxMy4yOTE5SDM5Ljg0MzZDMzkuOTMgMTMuMjkxOSA0MCAxMy4yMjE5IDQwIDEzLjEzNTVMNDAgMTIuNjI2M0M0MCAxMi4zNzc4IDM5LjkwMTQgMTIuMTM5NSAzOS43MjYgMTEuOTYzNkwzMC4wNjEgMi4yNzU2MUMyOS44ODUgMi4wOTkxNiAyOS42NDYgMiAyOS4zOTY3IDJIMjguODY0NVoiIGZpbGw9IiMzQTQyRTkiLz4KPHBhdGggZD0iTTkuNzcyNjggMzQuNjAwM0M5LjA0MTg2IDMzLjg2NTQgOS4wNDUxNyAzMi42NzcyIDkuNzgwMDcgMzEuOTQ2NEwxMy42MzE1IDI4LjExNjNMMC45MzgzMTEgMjguMTE2M0MwLjQyMDA5NiAyOC4xMTYzIC0yLjI2NTE5ZS0wOCAyNy42OTYyIDAgMjcuMTc4TDguMjAyOTdlLTA4IDI1LjMwMTRDMS4wNDY4MmUtMDcgMjQuNzgzMiAwLjQyMDA5NSAyNC4zNjMxIDAuOTM4MzExIDI0LjM2MzFIMTMuNTUyOUw5Ljc4MDA3IDIwLjYxMTJDOS4wNDUxNyAxOS44ODA0IDkuMDQxODYgMTguNjkyMiA5Ljc3MjY4IDE3Ljk1NzNDMTAuNTAzNSAxNy4yMjI0IDExLjY5MTcgMTcuMjE5MSAxMi40MjY2IDE3Ljk0OTlMMTkuNDYzOSAyNC45NDgxQzE5LjgxODEgMjUuMzAwNCAyMC4wMTczIDI1Ljc3OTMgMjAuMDE3MyAyNi4yNzg4QzIwLjAxNzMgMjYuNzc4MyAxOS44MTgxIDI3LjI1NzIgMTkuNDYzOSAyNy42MDk1TDEyLjQyNjYgMzQuNjA3N0MxMS42OTE3IDM1LjMzODUgMTAuNTAzNSAzNS4zMzUyIDkuNzcyNjggMzQuNjAwM1oiIGZpbGw9IiMzQTQyRTkiLz4KPC9zdmc+Cg=="},"displayName":"Convert to File","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]}],"categories":[{"id":31,"name":"Content Creation"},{"id":51,"name":"Multimodal AI"}],"image":[]}}