💥 使用NanoBanana、Seedream 4、ChatGPT Image和Veo 3自动化视频广告 - VIDE
高级
这是一个Content Creation, Multimodal AI领域的自动化工作流,包含 63 个节点。主要使用 Set, Code, Wait, Merge, SplitOut 等节点。 使用AI(NanoBanana、Seedream、GPT-4o、Veo 3)自动化和发布视频广告活动
前置要求
- •Telegram Bot Token
- •Google Drive API 凭证
- •可能需要目标 API 的认证凭证
- •Google Sheets API 凭证
- •OpenAI API Key
使用的节点 (63)
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "W9fdydWJuXntSK9c",
"meta": {
"instanceId": "a2b23892dd6989fda7c1209b381f5850373a7d2b85609624d7c2b7a092671d44"
},
"name": "💥 使用 NanoBanana、Seedream 4、ChatGPT Image 和 Veo 3 自动化视频广告 - VIDE",
"tags": [],
"nodes": [
{
"id": "172c7316-350a-46a8-a720-f0be6b22cff0",
"name": "便签 5",
"type": "n8n-nodes-base.stickyNote",
"position": [
560,
0
],
"parameters": {
"color": 7,
"width": 1948,
"height": 624,
"content": "# 1️⃣ → 步骤 1 — 从 Telegram 输入生成提示"
},
"typeVersion": 1
},
{
"id": "b5e1088e-f59b-48c0-bad0-65887aa9e37b",
"name": "Telegram:获取图片文件",
"type": "n8n-nodes-base.telegram",
"position": [
944,
272
],
"webhookId": "f564ba5f-747b-4ad3-b496-70c1aabb1a88",
"parameters": {
"fileId": "={{ $json.message.photo[2].file_id }}",
"resource": "file",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "7SZVrD8xnvRzdabg",
"name": "Telegram - viral Ads"
}
},
"typeVersion": 1.2
},
{
"id": "7fd471ae-4ef4-436c-b476-b98cc8848cea",
"name": "触发器:通过 Telegram 接收想法",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
672,
272
],
"webhookId": "fc44769c-3fa7-4a73-907f-07daa5cc8d6e",
"parameters": {
"updates": [
"message"
],
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "7SZVrD8xnvRzdabg",
"name": "Telegram - viral Ads"
}
},
"typeVersion": 1.2
},
{
"id": "00e2b4cb-7184-4068-a752-df588e48940d",
"name": "Google Drive:上传图片",
"type": "n8n-nodes-base.googleDrive",
"position": [
1232,
272
],
"parameters": {
"name": "={{ $('Trigger: Receive Idea via Telegram').item.json.message.photo[2].file_unique_id }}",
"driveId": {
"__rl": true,
"mode": "id",
"value": "="
},
"options": {},
"folderId": {
"__rl": true,
"mode": "id",
"value": "="
}
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "gzeHMd64HAz6HBIe",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "51fa2428-83e5-469e-9fbd-e6b74e7fdf35",
"name": "将想法解析为提示",
"type": "n8n-nodes-base.code",
"position": [
1664,
272
],
"parameters": {
"jsCode": "const text = $('Trigger: Receive Idea via Telegram').first().json.message.caption;\nconst parts = text.split(';').map(part => part.trim());\nreturn {\nimagePrompt: parts[0],\nvideoPrompt: parts[1]\n};\n"
},
"typeVersion": 2
},
{
"id": "5c8efdcc-c697-412e-be62-1f31528075e5",
"name": "生成图片提示",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
2064,
272
],
"parameters": {
"text": "=Your task is to create an image prompt following the system guidelines. \nEnsure that the reference image is represented as **accurately as possible**, including all text elements. \n\nUse the following inputs: \n\n- **User’s description:** \n{{ $json.imagePrompt }}\n",
"options": {
"systemMessage": "=You are a helpful assistantROLE: UGC Image Prompt Builder \n\nGOAL: \nGenerate one concise, natural, and realistic image prompt (≤120 words) from a given product or reference image. The prompt must simulate authentic UGC (user-generated content) photography. \n\nRULES: \nYou must always create a professional background for the product image. You must never return the image with a plain white or empty background. The background must always enhance and highlight the product in the photo.\n\n- Always output **one JSON object only** with the key: \n - `image_prompt`: (string with full description) \n- Do **not** add commentary, metadata, or extra keys. JSON only. \n- User node think to be creative\n\nSTYLE GUIDELINES: \n- Tone: casual, unstaged, lifelike, handheld snapshot. \n- Camera cues: include at least 2–3 (e.g., phone snapshot, handheld framing, off-center composition, natural indoor light, soft shadows, slight motion blur, auto exposure, unpolished look, mild grain). \n- Realism: embrace imperfections (wrinkles, stray hairs, skin texture, clutter, smudges). \n- Packaging/Text: preserve exactly as visible. Never invent claims, numbers, or badges. \n- Diversity: if people appear but are unspecified, vary gender/ethnicity naturally; default age range = 21–38. \n- Setting: default to real-world everyday spaces (home, street, store, gym, office). \n- User node think to be creative\nYou must always create a professional background for the product image. You must never return the image with a plain white or empty background. The background must always enhance and highlight the product in the photo.\n\nSAFETY: \n- No copyrighted character names. \n- No dialogue or scripts. Only describe scenes. \n\nOUTPUT CONTRACT: \n- JSON only, no prose outside. \n- Max 120 words in `image_prompt`. \n- Must cover: subject, action, mood, setting, background, style/camera, colors, and text accuracy. \n\nCHECKLIST BEFORE OUTPUT: \n- Natural handheld tone? \n- At least 2 camera cues included? \n- Product text preserved exactly? \n- Only JSON returned? \n\n--- \n\n### Example \n\nGood Example : \n```json\n{ \"image_prompt\": \"a young adult casually holding a skincare tube near a bathroom mirror; action: dabs small amount on the back of the hand; mood: easy morning; setting: small apartment bathroom with towel on rack and toothbrush cup; background: professional-looking bathroom scene that enhances the product, never plain white or empty, always styled to highlight the tube naturally; style/camera: phone snapshot, handheld framing, off-center composition, natural window light, slight motion blur, mild grain; colors: soft whites and mint label; text accuracy: keep every word on the tube exactly as visible, no added claims\" }\n"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2.2
},
{
"id": "749d97b2-bdc0-4b0d-a608-3860f8bc19a0",
"name": "结构化输出解析器",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
2320,
496
],
"parameters": {
"jsonSchemaExample": "{\n\t\"image_prompt\": \"string\"\n}"
},
"typeVersion": 1.3
},
{
"id": "49ebe3b4-175c-480b-a78b-32a86b772c11",
"name": "思考",
"type": "@n8n/n8n-nodes-langchain.toolThink",
"position": [
2160,
496
],
"parameters": {},
"typeVersion": 1.1
},
{
"id": "6c14c0c2-425f-43a4-ac53-9a1110e24aef",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1984,
496
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "o4-mini",
"cachedResultName": "o4-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "6h3DfVhNPw9I25nO",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "2b8bb026-a1a0-4f6a-952b-c66458be98ca",
"name": "NanoBanana:创建图片",
"type": "n8n-nodes-base.httpRequest",
"position": [
2816,
96
],
"parameters": {
"url": "https://queue.fal.run/fal-ai/nano-banana/edit",
"method": "POST",
"options": {},
"jsonBody": "={\n\t\"prompt\": \"{{ $json[\"output.image_prompt\"].replace(/\\\"/g, '\\\\\\\"').replace(/\\n/g, '\\\\n') }}\",\n\"image_urls\": [\"{{ $('Google Drive: Upload Image').item.json.webContentLink }}\"]\n\n} ",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "kNULkYDcOZG3X0be",
"name": "Fal.ai"
}
},
"typeVersion": 4.2
},
{
"id": "83dfe606-fca2-43a9-ad65-1c552899c739",
"name": "便签8",
"type": "n8n-nodes-base.stickyNote",
"position": [
2480,
656
],
"parameters": {
"color": 7,
"width": 1884,
"height": 432,
"content": "# 4️⃣ → 步骤 4 — 将视频合并为最终广告"
},
"typeVersion": 1
},
{
"id": "c35fcc2f-d3d1-4d83-8efb-6e8cf21d82fa",
"name": "检查合并状态",
"type": "n8n-nodes-base.httpRequest",
"position": [
3936,
768
],
"parameters": {
"url": "={{ $json['URL FINAL VIDEO'] }}",
"options": {},
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "kNULkYDcOZG3X0be",
"name": "Fal.ai"
}
},
"typeVersion": 4.2
},
{
"id": "37ef1072-100c-469e-a26d-22843dc2f657",
"name": "等待:合并过程",
"type": "n8n-nodes-base.wait",
"position": [
3408,
768
],
"webhookId": "6b3ea255-aabf-4eb4-9bc8-25f4272270ba",
"parameters": {
"amount": 2
},
"typeVersion": 1.1
},
{
"id": "55d047f8-bb1c-4b79-ad10-9edb049f5807",
"name": "将最终视频上传到 Google Drive",
"type": "n8n-nodes-base.googleDrive",
"position": [
4192,
768
],
"parameters": {
"name": "={{ $('Trigger: Receive Idea via Telegram').first().json.message.photo[2].file_unique_id }}",
"driveId": {
"__rl": true,
"mode": "id",
"value": "="
},
"options": {},
"folderId": {
"__rl": true,
"mode": "id",
"value": "="
}
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "gzeHMd64HAz6HBIe",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "6fb4ed26-d430-493a-a5ef-ecf993d7dca5",
"name": "### 替换 Airtable 连接",
"type": "n8n-nodes-base.stickyNote",
"position": [
560,
1120
],
"parameters": {
"width": 3804,
"height": 608,
"content": "# 5️⃣ → 步骤 5 — 使用 Blotato 将最终广告发布到多个社交平台"
},
"typeVersion": 1
},
{
"id": "f6490202-896a-4a21-9689-ed0189da6863",
"name": "读取品牌设置",
"type": "n8n-nodes-base.googleSheets",
"position": [
672,
1344
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "id",
"value": "="
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "="
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "51us92xkOlrvArhV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.7
},
{
"id": "8c3750e4-333e-4900-aa8e-97c6b5ce06b9",
"name": "提取品牌信息",
"type": "n8n-nodes-base.code",
"position": [
912,
1344
],
"parameters": {
"jsCode": "const allRows = $input.all();\nreturn [{\njson: {\nproductName: allRows[0].json.col_2,\nproductCategory: allRows[1].json.col_2,\nmainOffer: allRows[2].json.col_2,\nkeyFeature1: allRows[3].json.col_2,\nkeyFeature2: allRows[4].json.col_2,\nwebsiteURL: allRows[5].json.col_2\n}\n}];"
},
"typeVersion": 2
},
{
"id": "660b172c-fe62-40ed-84c9-8b0c2aa7739d",
"name": "向模型发送消息",
"type": "@n8n/n8n-nodes-langchain.openAi",
"position": [
1312,
1344
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "GPT-4O"
},
"options": {},
"messages": {
"values": [
{
"content": "=You are an expert ad copywriter for social media campaigns.\nYour task: Create compelling ad copy following this exact\nstructure:\n🚨 [Attention-grabbing headline with product benefit]\n✔ [Primary offer/benefit]\n✔ [Key product feature/quality]\n✔ [Trust/credibility element]\n[Call to action] → [website/link]\n# Input Variables:\nProduct Name: {{ $json.productName }}\nProduct Category: {{ $json.productCategory }}\nMain Offer: {{ $json.mainOffer }}\nKey Feature 1: {{ $json.keyFeature1 }}\nKey Feature 2: {{ $json.keyFeature2 }}\nWebsite URL: {{ $json.websiteURL }}\nRules:\n- Keep headline under 35 characters\n- Each checkmark line under 40 characters\n- Use power words that create urgency\n- Include specific product benefits, not generic claims\n- CTA must be action-oriented (Shop Now, Get Yours, Claim Offer,\netc.)\n- Output ONLY the ad copy text, no explanations\n- No quotes around the text\n- Maintain the emoji structure exactly as shown"
}
]
}
},
"credentials": {
"openAiApi": {
"id": "6h3DfVhNPw9I25nO",
"name": "OpenAi account"
}
},
"typeVersion": 1.8
},
{
"id": "f12ad44b-3078-459d-8a23-b664889cc636",
"name": "将广告数据保存到 Google Sheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
1840,
1344
],
"parameters": {
"columns": {
"value": {
"ADS TEXT": "={{ $json.message.content }}",
"ID IMAGE": "={{ $('Trigger: Receive Idea via Telegram').first().json.message.photo[2].file_unique_id }}"
},
"schema": [
{
"id": "ID IMAGE",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ID IMAGE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SOURCE",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE SOURCE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE NANOBANANA",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE NANOBANANA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SENDREAM",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE SENDREAM",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE CHATGPT",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE CHATGPT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 1",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 2",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 3",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 3",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL FINAL VIDEO",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL FINAL VIDEO",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ADS TEXT",
"type": "string",
"display": true,
"required": false,
"displayName": "ADS TEXT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "STATUS",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "STATUS",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"ID IMAGE"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "id",
"value": "="
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "="
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "51us92xkOlrvArhV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.7
},
{
"id": "f9b4f876-3ce8-4896-9be5-88b76abf7a4b",
"name": "通过 Telegram 发送视频 URL",
"type": "n8n-nodes-base.telegram",
"position": [
2080,
1344
],
"webhookId": "58e6fe93-339f-4ca8-aa15-874ac06a55c6",
"parameters": {
"text": "=Url VIDEO : {{ $('Update URL Final video').first().json['URL FINAL VIDEO'] }}",
"chatId": "={{ $('Trigger: Receive Idea via Telegram').first().json.message.chat.id }}",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "7SZVrD8xnvRzdabg",
"name": "Telegram - viral Ads"
}
},
"typeVersion": 1.2
},
{
"id": "e7452627-f5ea-4083-964b-16832cf53f11",
"name": "发送视频",
"type": "n8n-nodes-base.telegram",
"position": [
2304,
1344
],
"webhookId": "5eba0d00-2919-4342-9cc2-62b3b44ef2e9",
"parameters": {
"file": "={{ $('Update URL Final video').first().json['URL FINAL VIDEO'] }}",
"chatId": "={{ $('Trigger: Receive Idea via Telegram').first().json.message.chat.id }}",
"operation": "sendVideo",
"additionalFields": {}
},
"credentials": {
"telegramApi": {
"id": "7SZVrD8xnvRzdabg",
"name": "Telegram - viral Ads"
}
},
"typeVersion": 1.2
},
{
"id": "6d574d77-e737-46b2-a79c-02518d8a2a9e",
"name": "便签11",
"type": "n8n-nodes-base.stickyNote",
"position": [
2480,
0
],
"parameters": {
"color": 3,
"width": 1884,
"height": 624,
"content": "# 2️⃣ → 步骤 2 — 使用:🌊 Seedream 4.0 + 🍌 NanoBanana + 🤖 ChatGPT image 创建产品图片"
},
"typeVersion": 1
},
{
"id": "de4624ec-4fd8-4456-97ec-ddcb1d7d476d",
"name": "AI Agent:生成视频脚本",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
880,
736
],
"parameters": {
"text": "=Create a BEFORE/AFTER transformation video prompt using the provided idea.\n\n**Inputs**\n\n- idea : {{ $('Parse Idea Into Prompts').first().json.videoPrompt }}\n\n**Rules**\n- The style must be cinematic, visually striking, and optimized for vertical 9:16 TikTok content.\n- Explicitly include: BEFORE scene, AFTER scene, TRANSITION style, CAMERA movement, LIGHTING, COLOR PALETTE, and MOOD.\n- Default model: `veo3_fast` (unless otherwise specified).\n- Output only one valid JSON object.\n\n- The JSON object must contain the following keys: title, final_prompt, final_prompt_2, final_prompt_3.\n\n- Create 3 different scenarios for the same product/topic.\n\n- Place each scenario in a separate key:\nfinal_prompt → Scenario 1\nfinal_prompt_2 → Scenario 2\nfinal_prompt_3 → Scenario 3\n\n- Use the Think tool to review your output\n",
"options": {
"systemMessage": "=system_prompt:\n ## SYSTEM PROMPT: Structured Safe Video Prompt Generator\n A - Ask:\n Generate a structured short video prompt for VEO 3 cinematic generation, strictly based on the master schema provided in: {{ $json.json_master }}.\n Write 3 scenarios for 3 short videos (VEO 3), each lasting about 8 seconds.\n\nThe first scenario should highlight a visual \"problem atmosphere\" (e.g., dull colors, lack of energy, flat lighting) that sets the stage for the product to improve the scene.\n\nThe second scenario should show a \"visual enhancement\" instead of a physical transformation (e.g., scene becomes brighter, colors more vibrant, light reflections intensify, foam glows more under sunlight).\n\nThe third scenario should show another \"creative enhancement\" with a different cinematic angle (e.g., abstract visuals like water, foam, or product bottle under glowing light that shifts into a fresh, uplifting ambiance).\n\n- The final result must be a JSON object with exactly four top-level keys:\n\ntitle → summarizes the overall concept.\nfinal_prompt → contains Scenario 1.\nfinal_prompt_2 → contains Scenario 2.\nfinal_prompt_3 → contains Scenario 3.\n\n G - Guidance:\n role: Creative Director\n output_count: 1\n character_limit: None\n constraints:\n - The output must be valid JSON.\n - The `title` field should contain a short, descriptive and unique title (max 15 words).\n - The `final_prompt`, `final_prompt_2`, and `final_prompt_3` fields must contain a **single-line JSON string** that follows the exact structure of {{ $json.json_master }} with all fields preserved.\n - All final prompts must clearly describe: SCENE, VISUAL ENHANCEMENT (instead of \"before/after\"), TRANSITION, CAMERA, LIGHTING, PALETTE, STYLE, and SOUND.\n - Do not include people’s physical traits or body/hair transformations.\n - Avoid sensitive or restricted terms (e.g., frizzy, smooth, body, face, before/after physical changes).\n - The focus must be on cinematic visuals, light, environment, abstract product representation, and positive ambiance.\n - Do not include any explanations, markdown, or extra text — only the JSON object.\n - Escape all inner quotes in the `final_prompt` string so it is valid as a stringified JSON inside another JSON.\n tool_usage:\n - Ensure consistent alignment across all fields (camera, lighting, transition, palette, etc.).\n - Maintain full structure even for optional fields (use \"none\", \"\", or [] as needed).\n\n N - Notation:\n format: JSON\n expected_output:\n {\n \"title\": \"A unique short title for the enhancement concept\",\n \"final_prompt\": \"Scenario 1 description here...\",\n \"final_prompt_2\": \"Scenario 2 description here...\",\n \"final_prompt_3\": \"Scenario 3 description here...\"\n }\n"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2
},
{
"id": "0352c6fb-0614-4266-a6a9-78fd88f1e742",
"name": "使用 VEO3 生成视频",
"type": "n8n-nodes-base.httpRequest",
"position": [
1872,
880
],
"parameters": {
"url": "https://api.kie.ai/api/v1/veo/generate",
"body": "=\n\n{\n \"prompt\": {{ $json.prompt }},\n \"model\": \"{{ $json.model }}\",\n \"imageUrls\": [ \"{{ $json.image_url }}\" ],\n \"aspectRatio\": \"{{ $json.aspectRatio }}\"\n}\n",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "raw",
"authentication": "genericCredentialType",
"rawContentType": "application/json",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "ho8ZjaYj1SY0icGT",
"name": "Kie AI"
}
},
"typeVersion": 4.2
},
{
"id": "006fe9e9-b076-4345-aec4-27fcf1a7f30f",
"name": "等待 VEO3 渲染",
"type": "n8n-nodes-base.wait",
"position": [
2112,
880
],
"webhookId": "864a93ce-5f41-4fc9-a694-6681bc749cb7",
"parameters": {
"unit": "minutes",
"amount": 3
},
"typeVersion": 1.1
},
{
"id": "b5089618-2b8f-4611-a7cf-78ec9e1ed077",
"name": "从 VEO3 下载视频",
"type": "n8n-nodes-base.httpRequest",
"position": [
2304,
880
],
"parameters": {
"url": "https://api.kie.ai/api/v1/veo/record-info",
"options": {},
"sendQuery": true,
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"queryParameters": {
"parameters": [
{
"name": "taskId",
"value": "={{ $('Generate Video with VEO3').item.json.data.taskId }}"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"id": "ho8ZjaYj1SY0icGT",
"name": "Kie AI"
}
},
"typeVersion": 4.2
},
{
"id": "bb7a3989-1ffe-46c6-a2e9-4cba9a5fb47f",
"name": "格式化提示",
"type": "n8n-nodes-base.code",
"position": [
1648,
880
],
"parameters": {
"jsCode": "const structuredPrompt = $input.first().json.final_prompt;\nimage = $input.first().json.image_url;\nreturn {\n json: {\n prompt: JSON.stringify(structuredPrompt), // this escapes it correctly!\n model: \"veo3_fast\",\n image_url : image,\n aspectRatio: \"9:16\"\n }\n}"
},
"typeVersion": 2
},
{
"id": "143c8983-02c7-4001-8bdf-9d69cbc77169",
"name": "便签1",
"type": "n8n-nodes-base.stickyNote",
"position": [
560,
656
],
"parameters": {
"color": 7,
"width": 1920,
"height": 432,
"content": "# 3️⃣ → 步骤 3 — 使用 Veo 3 制作视频广告"
},
"typeVersion": 1
},
{
"id": "e4201ff8-435d-4509-baca-9cf9ba796453",
"name": "OpenAI 聊天模型1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
816,
960
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "6h3DfVhNPw9I25nO",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "bfa98213-7d12-422b-9fa9-e9f8c4e6eb36",
"name": "思考1",
"type": "@n8n/n8n-nodes-langchain.toolThink",
"position": [
976,
960
],
"parameters": {},
"typeVersion": 1
},
{
"id": "acd37b48-c17d-4f9e-82ed-233b04036eee",
"name": "结构化输出解析器1",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
1120,
960
],
"parameters": {
"jsonSchemaExample": "{\n \"title\": \"string\",\n \"final_prompt\": \"string\",\n \"final_prompt_2\": \"string\",\n \"final_prompt_3\": \"string\"\n}\n"
},
"typeVersion": 1.3
},
{
"id": "07dcc2c9-28ee-449a-919d-dbd3dc5196e7",
"name": "3 个提示",
"type": "n8n-nodes-base.code",
"position": [
1168,
736
],
"parameters": {
"jsCode": "// On récupère les prompts depuis l'agent IA\nconst prompts = items[0].json.output;\n\n// On récupère les images depuis le node \"Save Ad Data to Google Sheets1\"\nconst urls = $('Google Sheets – save image URLs').first().json;\n\nreturn [\n { \n json: { \n final_prompt: prompts.final_prompt,\n image_url: urls['URL IMAGE NANOBANANA']\n } \n },\n { \n json: { \n final_prompt: prompts.final_prompt_2,\n image_url: urls['URL IMAGE SENDREAM']\n } \n },\n { \n json: { \n final_prompt: prompts.final_prompt_3,\n image_url: urls['URL IMAGE CHATGPT']\n } \n }\n];\n"
},
"typeVersion": 2
},
{
"id": "5364e300-b999-4429-8b99-c1d40f48c28f",
"name": "将视频上传到 BLOTATO",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
2544,
1344
],
"parameters": {
"mediaUrl": "={{ $('Update URL Final video').first().json['URL FINAL VIDEO'] }}",
"resource": "media"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "743afd32-6ebf-4e70-b911-2bbdba7d1ecf",
"name": "YouTube",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3600,
1328
],
"parameters": {
"options": {},
"platform": "youtube",
"accountId": {
"__rl": true,
"mode": "list",
"value": "8047",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/8047",
"cachedResultName": "DR FIRASS (Dr. Firas)"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"postContentMediaUrls": "={{ $json.url }}",
"postCreateYoutubeOptionTitle": "={{ $('AI Agent: Generate Video Script').first().json.output.title }}",
"postCreateYoutubeOptionPrivacyStatus": "private",
"postCreateYoutubeOptionShouldNotifySubscribers": false
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "035b6c10-43ac-4aea-a2ff-82a3ab0bcfa4",
"name": "Tiktok",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3232,
1152
],
"parameters": {
"options": {},
"platform": "tiktok",
"accountId": {
"__rl": true,
"mode": "list",
"value": "2079",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/2079",
"cachedResultName": "elitecybzcs"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"postContentMediaUrls": "={{ $json.url }}"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "d2401532-aa7b-45b7-9dc4-2d5f51a32599",
"name": "将状态更新为“DONE”",
"type": "n8n-nodes-base.googleSheets",
"position": [
4176,
1328
],
"parameters": {
"columns": {
"value": {
"STATUS": "DONE",
"ID IMAGE": "={{ $('Trigger: Receive Idea via Telegram').first().json.message.photo[2].file_unique_id }}"
},
"schema": [
{
"id": "ID IMAGE",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ID IMAGE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SOURCE",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE SOURCE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE NANOBANANA",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE NANOBANANA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SENDREAM",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE SENDREAM",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE CHATGPT",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE CHATGPT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 1",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 2",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 3",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 3",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL FINAL VIDEO",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL FINAL VIDEO",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ADS TEXT",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ADS TEXT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "STATUS",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "STATUS",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"ID IMAGE"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "id",
"value": "="
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "="
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "51us92xkOlrvArhV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.5
},
{
"id": "cc3d40a1-1123-4faf-8df9-2ae5448ed53a",
"name": "Linkedin",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3424,
1152
],
"parameters": {
"options": {},
"platform": "linkedin",
"accountId": {
"__rl": true,
"mode": "list",
"value": "1446",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/1446",
"cachedResultName": "Samuel Amalric"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"postContentMediaUrls": "={{ $json.url }}"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "0a3810b6-c21f-4077-954b-79aab2e7985e",
"name": "便签 - 接收",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3600,
1152
],
"parameters": {
"options": {},
"platform": "facebook",
"accountId": {
"__rl": true,
"mode": "list",
"value": "1759",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/1759",
"cachedResultName": "Firass Ben"
},
"facebookPageId": {
"__rl": true,
"mode": "list",
"value": "101603614680195",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/1759/subaccounts/101603614680195",
"cachedResultName": "Dr. Firas"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"postContentMediaUrls": "={{ $json.url }}"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "7ec08451-6330-400e-87a2-ab9a2f0706ab",
"name": "Instagram",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3232,
1328
],
"parameters": {
"options": {},
"accountId": {
"__rl": true,
"mode": "list",
"value": "11892",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/11892",
"cachedResultName": "doc.firass"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"postContentMediaUrls": "={{ $json.url }}"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "0bc8307e-3f4a-432a-8667-eb998ab55042",
"name": "Threads",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3232,
1536
],
"parameters": {
"options": {},
"platform": "threads",
"accountId": {
"__rl": true,
"mode": "list",
"value": "2280",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/2280",
"cachedResultName": "doc.firass"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"postContentMediaUrls": "={{ $json.url }}"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "d039a2f5-5177-4cce-9018-6a37ab54fa19",
"name": "Bluesky",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3424,
1536
],
"parameters": {
"options": {},
"platform": "bluesky",
"accountId": {
"__rl": true,
"mode": "list",
"value": "6012",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/6012",
"cachedResultName": "formationinternet.bsky.social"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"postContentMediaUrls": "={{ $json.url }}"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "a04336f9-f2e6-4fbb-a082-9d232a08aa52",
"name": "Pinterest",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3600,
1536
],
"parameters": {
"options": {},
"platform": "pinterest",
"accountId": {
"__rl": true,
"mode": "list",
"value": "363",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/363",
"cachedResultName": "formationinternet2022"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"pinterestBoardId": {
"__rl": true,
"mode": "id",
"value": "1146658823815436667"
},
"postContentMediaUrls": "={{ $json.url }}"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "fb93e061-c5a9-4dfe-9ca2-ef8a3c6ce9f3",
"name": "Twitter (X)",
"type": "@blotato/n8n-nodes-blotato.blotato",
"position": [
3424,
1328
],
"parameters": {
"options": {},
"platform": "twitter",
"accountId": {
"__rl": true,
"mode": "list",
"value": "1289",
"cachedResultUrl": "https://backend.blotato.com/v2/accounts/1289",
"cachedResultName": "Docteur_Firas"
},
"postContentText": "={{ $('Save Ad Data to Google Sheets').item.json['ADS TEXT'] }}",
"postContentMediaUrls": "={{ $json.url }}"
},
"credentials": {
"blotatoApi": {
"id": "NtMnRSKAAN5u9lyc",
"name": "Blotato account"
}
},
"typeVersion": 2
},
{
"id": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
"name": "合并1",
"type": "n8n-nodes-base.merge",
"position": [
3936,
1216
],
"parameters": {
"mode": "chooseBranch",
"numberInputs": 9
},
"typeVersion": 3.2
},
{
"id": "181c4741-92b4-4884-bffd-c1dbddca2477",
"name": "Seedream:从文本生成图片",
"type": "n8n-nodes-base.httpRequest",
"position": [
2816,
272
],
"parameters": {
"url": "https://api.kie.ai/api/v1/jobs/createTask",
"body": "={\n \"model\": \"bytedance/seedream-v4-text-to-image\",\n \"input\": {\n \"prompt\": \"{{ $('Parse Idea Into Prompts').item.json.videoPrompt }}\",\n \"image_size\": \"portrait_16_9\",\n \"image_resolution\": \"1K\"\n }\n}\n",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "raw",
"authentication": "genericCredentialType",
"rawContentType": "application/json",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "ho8ZjaYj1SY0icGT",
"name": "Kie AI"
}
},
"typeVersion": 4.2
},
{
"id": "a2c358bc-ce2d-4f48-a444-8f2f24a3abbe",
"name": "从 Seedream 下载图片",
"type": "n8n-nodes-base.httpRequest",
"position": [
3440,
272
],
"parameters": {
"url": "=https://api.kie.ai/api/v1/jobs/recordInfo?taskId={{ $json.data.taskId }}",
"options": {},
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "ho8ZjaYj1SY0icGT",
"name": "Kie AI"
}
},
"typeVersion": 4.2
},
{
"id": "b8637494-856c-46f2-9d3c-1df9593d02de",
"name": "生成 4o 图片(GPT IMAG 1)",
"type": "n8n-nodes-base.httpRequest",
"position": [
2816,
448
],
"parameters": {
"url": "https://api.kie.ai/api/v1/gpt4o-image/generate",
"body": "={\n \"prompt\": \"{{ $('Parse Idea Into Prompts').item.json.videoPrompt }}\",\n \"size\": \"2:3\"\n}\n",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "raw",
"authentication": "genericCredentialType",
"rawContentType": "application/json",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "ho8ZjaYj1SY0icGT",
"name": "Kie AI"
}
},
"typeVersion": 4.2
},
{
"id": "8b6583ec-e141-4314-a83e-23ced0d3d504",
"name": "设置主提示",
"type": "n8n-nodes-base.set",
"position": [
672,
736
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "cc2e0500-57b1-4615-82cb-1c950e5f2ec4",
"name": "json_master",
"type": "string",
"value": "={\n \"description\": \"Brief narrative description of the scene, focusing on key visual storytelling and product transformation.\",\n \"style\": \"cinematic | photorealistic | stylized | gritty | elegant\",\n \"camera\": {\n \"type\": \"fixed | dolly | Steadicam | crane combo\",\n \"movement\": \"describe any camera moves like slow push-in, pan, orbit\",\n \"lens\": \"optional lens type or focal length for cinematic effect\"\n },\n \"lighting\": {\n \"type\": \"natural | dramatic | high-contrast\",\n \"sources\": \"key lighting sources (sunset, halogen, ambient glow...)\",\n \"FX\": \"optional VFX elements like fog, reflections, flares\"\n },\n \"environment\": {\n \"location\": \"describe location or room (kitchen, desert, basketball court...)\",\n \"set_pieces\": [\n \"list of key background or prop elements\",\n \"e.g. hardwood floors, chain-link fence, velvet surface\"\n ],\n \"mood\": \"describe the ambient atmosphere (moody, clean, epic...)\"\n },\n \"elements\": [\n \"main physical items involved (product box, accessories, vehicles...)\",\n \"include brand visibility (logos, packaging, texture...)\"\n ],\n \"subject\": {\n \"character\": {\n \"description\": \"optional – physical description, outfit\",\n \"pose\": \"optional – position or gesture\",\n \"lip_sync_line\": \"optional – spoken line if there’s a voiceover\"\n },\n \"product\": {\n \"brand\": \"Brand name\",\n \"model\": \"Product model or name\",\n \"action\": \"description of product transformation or assembly\"\n }\n },\n \"motion\": {\n \"type\": \"e.g. transformation, explosion, vortex\",\n \"details\": \"step-by-step visual flow of how elements move or evolve\"\n },\n \"VFX\": {\n \"transformation\": \"optional – describe style (neon trails, motion blur...)\",\n \"impact\": \"optional – e.g. shockwave, glow, distortion\",\n \"particles\": \"optional – embers, sparks, thread strands...\",\n \"environment\": \"optional – VFX affecting the scene (ripples, wind...)\"\n },\n \"audio\": {\n \"music\": \"optional – cinematic score, trap beat, ambient tone\",\n \"sfx\": [\n \"list of sound effects (zip, pop, woosh...)\"\n ],\n \"ambience\": \"optional – background soundscape (traffic, wind...)\",\n \"voiceover\": {\n \"delivery\": \"tone and style (confident, whisper, deep...)\",\n \"line\": \"text spoken if applicable\"\n }\n },\n \"ending\": \"Final shot description – what is seen or felt at the end (freeze frame, logo pulse, glow...)\",\n \"text\": \"none | overlay | tagline | logo pulse at end only\",\n \"format\": \"16:9 | 4k | vertical\",\n \"keywords\": [\n \"brand\",\n \"scene style\",\n \"motion type\",\n \"camera style\",\n \"sound mood\",\n \"target theme\"\n ]\n}\n"
},
{
"id": "3c6ea609-e426-46d3-8617-2e289a833a64",
"name": "model",
"type": "string",
"value": "veo3_fast"
},
{
"id": "f15acf81-840c-4e09-9ff3-1647b634875f",
"name": "aspectRatio",
"type": "string",
"value": "9:16"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "f9e46614-a5d5-4520-9522-8a03674d226d",
"name": "合并 3 个视频",
"type": "n8n-nodes-base.httpRequest",
"position": [
3120,
768
],
"parameters": {
"url": "https://fal.run/fal-ai/ffmpeg-api/merge-videos",
"body": "={\n \"video_urls\": [\n \"{{ $json['URL VIDEO 1'] }}\",\n \"{{ $json['URL VIDEO 2'] }}\",\n \"{{ $json['URL VIDEO 3'] }}\"\n ],\n \"resolution\": \"portrait_16_9\",\n \"output\": {\n \"format\": \"mp4\"\n }\n}\n",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "raw",
"authentication": "genericCredentialType",
"rawContentType": "application/json",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "kNULkYDcOZG3X0be",
"name": "Fal.ai"
}
},
"typeVersion": 4.2
},
{
"id": "606e323e-6e32-480e-855f-72baad361c54",
"name": "遍历项目 - 分批处理",
"type": "n8n-nodes-base.splitInBatches",
"position": [
1424,
784
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "729b59d4-fa07-4fc9-b6cc-64fca41b22ef",
"name": "更新 sheet 中的行",
"type": "n8n-nodes-base.googleSheets",
"position": [
2848,
768
],
"parameters": {
"columns": {
"value": {
"ID IMAGE": "={{ $('Google Sheets – save image URLs').first().json['ID IMAGE'] }}",
"URL VIDEO 1": "={{ $json.data[0].data.response.resultUrls[0] }}",
"URL VIDEO 2": "={{ $json.data[1].data.response.resultUrls[0] }}",
"URL VIDEO 3": "={{ $json.data[2].data.response.resultUrls[0] }}"
},
"schema": [
{
"id": "ID IMAGE",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ID IMAGE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SOURCE",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE SOURCE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE NANOBANANA",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE NANOBANANA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SENDREAM",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE SENDREAM",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE CHATGPT",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE CHATGPT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 1",
"type": "string",
"display": true,
"required": false,
"displayName": "URL VIDEO 1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 2",
"type": "string",
"display": true,
"required": false,
"displayName": "URL VIDEO 2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 3",
"type": "string",
"display": true,
"required": false,
"displayName": "URL VIDEO 3",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL FINAL VIDEO",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL FINAL VIDEO",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ADS TEXT",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ADS TEXT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "STATUS",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "STATUS",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "row_number",
"type": "number",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "row_number",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"ID IMAGE"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "id",
"value": "="
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "="
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "51us92xkOlrvArhV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.7
},
{
"id": "5cc81f6d-9160-4f2c-b72a-12f1e83c48fd",
"name": "便签",
"type": "n8n-nodes-base.stickyNote",
"position": [
0,
0
],
"parameters": {
"width": 528,
"height": 1728,
"content": "### 🎥 观看本教程"
},
"typeVersion": 1
},
{
"id": "322f6e01-5427-480c-b781-7e81f0786674",
"name": "拆分 – 迭代 image_prompt",
"type": "n8n-nodes-base.splitOut",
"position": [
2528,
272
],
"parameters": {
"options": {},
"fieldToSplitOut": "output.image_prompt"
},
"typeVersion": 1
},
{
"id": "9cde12f3-ef41-4e9f-a8cc-7ebc6d5a5666",
"name": "等待 – NanoBanana 任务",
"type": "n8n-nodes-base.wait",
"position": [
3104,
96
],
"webhookId": "15bf99dd-2a0e-4547-9ee1-25ac8e743585",
"parameters": {
"unit": "minutes",
"amount": 4
},
"typeVersion": 1.1
},
{
"id": "c7cc7666-4e3c-4c13-b3df-18e6410a445d",
"name": "更新最终视频 URL",
"type": "n8n-nodes-base.googleSheets",
"position": [
3680,
768
],
"parameters": {
"columns": {
"value": {
"STATUS": "VIDEO CREATED",
"ID IMAGE": "={{ $('Google Sheets – save image URLs').first().json['ID IMAGE'] }}",
"URL FINAL VIDEO": "={{ $json.video.url }}"
},
"schema": [
{
"id": "ID IMAGE",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "ID IMAGE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SOURCE",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE SOURCE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE NANOBANANA",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE NANOBANANA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SENDREAM",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE SENDREAM",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE CHATGPT",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL IMAGE CHATGPT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 1",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 2",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 3",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 3",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL FINAL VIDEO",
"type": "string",
"display": true,
"required": false,
"displayName": "URL FINAL VIDEO",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ADS TEXT",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ADS TEXT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "STATUS",
"type": "string",
"display": true,
"required": false,
"displayName": "STATUS",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "row_number",
"type": "number",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "row_number",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"ID IMAGE"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "id",
"value": "="
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "="
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "51us92xkOlrvArhV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.7
},
{
"id": "9d6ed0e4-eafc-4569-b774-1a3f62261438",
"name": "NanoBanana – 获取编辑后的图片",
"type": "n8n-nodes-base.httpRequest",
"position": [
3440,
96
],
"parameters": {
"url": "={{ $json.response_url }}",
"options": {},
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "kNULkYDcOZG3X0be",
"name": "Fal.ai"
}
},
"typeVersion": 4.2
},
{
"id": "a0c3642a-76fb-4b20-bd3b-4da0d191e5c0",
"name": "等待 – 图片渲染",
"type": "n8n-nodes-base.wait",
"position": [
3104,
272
],
"webhookId": "755fd36b-b4aa-45f2-9998-d7492d8defd6",
"parameters": {
"unit": "minutes",
"amount": 4
},
"typeVersion": 1.1
},
{
"id": "24d6658d-0c8d-4e36-8266-12453d89790b",
"name": "Google Sheets – 保存图片 URL",
"type": "n8n-nodes-base.googleSheets",
"position": [
4192,
272
],
"parameters": {
"columns": {
"value": {
"STATUS": "CREATE IMAGES",
"ID IMAGE": "={{ $('Trigger: Receive Idea via Telegram').first().json.message.photo[2].file_unique_id }}",
"URL IMAGE SOURCE": "={{ $('Google Drive: Upload Image').first().json.webContentLink }}",
"URL IMAGE CHATGPT": "={{ $('ChatGPT Image – fetch generated image').first().json.data.response.resultUrls[0] }}",
"URL IMAGE SENDREAM": "={{ $('Set – select Seedream image URL').first().json.url_video }}",
"URL IMAGE NANOBANANA": "={{ $('NanoBanana – fetch edited image').item.json.images[0].url }}"
},
"schema": [
{
"id": "ID IMAGE",
"type": "string",
"display": true,
"required": false,
"displayName": "ID IMAGE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SOURCE",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "URL IMAGE SOURCE",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE NANOBANANA",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "URL IMAGE NANOBANANA",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE SENDREAM",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "URL IMAGE SENDREAM",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL IMAGE CHATGPT",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "URL IMAGE CHATGPT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 1",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 1",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 2",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 2",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL VIDEO 3",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL VIDEO 3",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "URL FINAL VIDEO",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "URL FINAL VIDEO",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "ADS TEXT",
"type": "string",
"display": true,
"removed": true,
"required": false,
"displayName": "ADS TEXT",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "STATUS",
"type": "string",
"display": true,
"required": false,
"displayName": "STATUS",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "id",
"value": "="
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "="
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "51us92xkOlrvArhV",
"name": "Google Sheets account"
}
},
"typeVersion": 4.7
},
{
"id": "f648da56-7695-4d88-9bfd-977c6639fc53",
"name": "合并 – 收集图片来源(3 个提供者)",
"type": "n8n-nodes-base.merge",
"position": [
3984,
256
],
"parameters": {
"mode": "chooseBranch",
"numberInputs": 3
},
"typeVersion": 3.2
},
{
"id": "cc07a757-53dc-43c1-9ed3-7aecbe501528",
"name": "ChatGPT Image – 获取生成的图片",
"type": "n8n-nodes-base.httpRequest",
"position": [
3440,
448
],
"parameters": {
"url": "=https://api.kie.ai/api/v1/gpt4o-image/record-info?taskId={{ $json.data.taskId }}",
"options": {},
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "ho8ZjaYj1SY0icGT",
"name": "Kie AI"
}
},
"typeVersion": 4.2
},
{
"id": "5e77cd4f-7f23-4559-b4ef-08a8d90cdfcc",
"name": "设置 – 选择 Seedream 图片 URL",
"type": "n8n-nodes-base.set",
"position": [
3696,
272
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "04c7d6bf-430a-4423-bd36-d76f8a6ff1c9",
"name": "url_video",
"type": "string",
"value": "={{ ($json.data.resultJson.match(/https:\\/\\/tempfile\\.aiquickdraw\\.com\\/r\\/[^\\s\"']+\\.(?:png|jpg|jpeg|mp4|webm)/i)?.[0] || '').trim() }}\n\n\n\n"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "139b27b1-2000-429e-92eb-cdabfe4b7e04",
"name": "等待 – 图片渲染 II",
"type": "n8n-nodes-base.wait",
"position": [
3104,
448
],
"webhookId": "755fd36b-b4aa-45f2-9998-d7492d8defd6",
"parameters": {
"unit": "minutes",
"amount": 4
},
"typeVersion": 1.1
},
{
"id": "b358b4a3-9e47-43f7-a416-c91e75dd85bc",
"name": "聚合 – 收集 3 个视频 URL",
"type": "n8n-nodes-base.aggregate",
"position": [
2576,
768
],
"parameters": {
"options": {},
"aggregate": "aggregateAllItemData"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "838977ab-171e-4300-95aa-b893d89e270b",
"connections": {
"Think": {
"ai_tool": [
[
{
"node": "Generate Image Prompt",
"type": "ai_tool",
"index": 0
}
]
]
},
"Merge1": {
"main": [
[
{
"node": "Update Status to \"DONE\"",
"type": "main",
"index": 0
}
]
]
},
"Think1": {
"ai_tool": [
[
{
"node": "AI Agent: Generate Video Script",
"type": "ai_tool",
"index": 0
}
]
]
},
"Tiktok": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 0
}
]
]
},
"Bluesky": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 7
}
]
]
},
"Threads": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 6
}
]
]
},
"Youtube": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 5
}
]
]
},
"Facebook": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 2
}
]
]
},
"Linkedin": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 1
}
]
]
},
"3 prompts": {
"main": [
[
{
"node": "Loop Over Items - Split In Batches",
"type": "main",
"index": 0
}
]
]
},
"Instagram": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 3
}
]
]
},
"Pinterest": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 8
}
]
]
},
"Twitter (X)": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 4
}
]
]
},
"Send a video": {
"main": [
[
{
"node": "Upload Video to BLOTATO",
"type": "main",
"index": 0
}
]
]
},
"Format Prompt": {
"main": [
[
{
"node": "Generate Video with VEO3",
"type": "main",
"index": 0
}
]
]
},
"Merge 3 Videos": {
"main": [
[
{
"node": "Wait: Merge Process",
"type": "main",
"index": 0
}
]
]
},
"Message a model": {
"main": [
[
{
"node": "Save Ad Data to Google Sheets",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Generate Image Prompt",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Set Master Prompt": {
"main": [
[
{
"node": "AI Agent: Generate Video Script",
"type": "main",
"index": 0
}
]
]
},
"Check Merge Status": {
"main": [
[
{
"node": "Upload Final Video to Google Drive",
"type": "main",
"index": 0
}
]
]
},
"Extract Brand Info": {
"main": [
[
{
"node": "Message a model",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "AI Agent: Generate Video Script",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Read Brand Settings": {
"main": [
[
{
"node": "Extract Brand Info",
"type": "main",
"index": 0
}
]
]
},
"Update row in sheet": {
"main": [
[
{
"node": "Merge 3 Videos",
"type": "main",
"index": 0
}
]
]
},
"Wait: Merge Process": {
"main": [
[
{
"node": "Update URL Final video",
"type": "main",
"index": 0
}
]
]
},
"Generate Image Prompt": {
"main": [
[
{
"node": "Split out – iterate image_prompt",
"type": "main",
"index": 0
}
]
]
},
"Update URL Final video": {
"main": [
[
{
"node": "Check Merge Status",
"type": "main",
"index": 0
}
]
]
},
"Parse Idea Into Prompts": {
"main": [
[
{
"node": "Generate Image Prompt",
"type": "main",
"index": 0
}
]
]
},
"Upload Video to BLOTATO": {
"main": [
[
{
"node": "Tiktok",
"type": "main",
"index": 0
},
{
"node": "Linkedin",
"type": "main",
"index": 0
},
{
"node": "Facebook",
"type": "main",
"index": 0
},
{
"node": "Instagram",
"type": "main",
"index": 0
},
{
"node": "Twitter (X)",
"type": "main",
"index": 0
},
{
"node": "Youtube",
"type": "main",
"index": 0
},
{
"node": "Threads",
"type": "main",
"index": 0
},
{
"node": "Bluesky",
"type": "main",
"index": 0
},
{
"node": "Pinterest",
"type": "main",
"index": 0
}
]
]
},
"Wait for VEO3 Rendering": {
"main": [
[
{
"node": "Download Video from VEO3",
"type": "main",
"index": 0
}
]
]
},
"Wait – NanoBanana job": {
"main": [
[
{
"node": "NanoBanana – fetch edited image",
"type": "main",
"index": 0
}
]
]
},
"Download Video from VEO3": {
"main": [
[
{
"node": "Loop Over Items - Split In Batches",
"type": "main",
"index": 0
}
]
]
},
"Generate Video with VEO3": {
"main": [
[
{
"node": "Wait for VEO3 Rendering",
"type": "main",
"index": 0
}
]
]
},
"NanoBanana: Create Image": {
"main": [
[
{
"node": "Wait – NanoBanana job",
"type": "main",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "Generate Image Prompt",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Telegram: Get Image File": {
"main": [
[
{
"node": "Google Drive: Upload Image",
"type": "main",
"index": 0
}
]
]
},
"Wait – image rendering": {
"main": [
[
{
"node": "Download image from Seedream",
"type": "main",
"index": 0
}
]
]
},
"Structured Output Parser1": {
"ai_outputParser": [
[
{
"node": "AI Agent: Generate Video Script",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Google Drive: Upload Image": {
"main": [
[
{
"node": "Parse Idea Into Prompts",
"type": "main",
"index": 0
}
]
]
},
"Send Video URL via Telegram": {
"main": [
[
{
"node": "Send a video",
"type": "main",
"index": 0
}
]
]
},
"Wait – image rendering II": {
"main": [
[
{
"node": "ChatGPT Image – fetch generated image",
"type": "main",
"index": 0
}
]
]
},
"Download image from Seedream": {
"main": [
[
{
"node": "Set – select Seedream image URL",
"type": "main",
"index": 0
}
]
]
},
"Save Ad Data to Google Sheets": {
"main": [
[
{
"node": "Send Video URL via Telegram",
"type": "main",
"index": 0
}
]
]
},
"AI Agent: Generate Video Script": {
"main": [
[
{
"node": "3 prompts",
"type": "main",
"index": 0
}
]
]
},
"Aggregate – gather 3 video URLs": {
"main": [
[
{
"node": "Update row in sheet",
"type": "main",
"index": 0
}
]
]
},
"Generate 4o Image(GPT IMAG 1)": {
"main": [
[
{
"node": "Wait – image rendering II",
"type": "main",
"index": 0
}
]
]
},
"Google Sheets – save image URLs": {
"main": [
[
{
"node": "Set Master Prompt",
"type": "main",
"index": 0
}
]
]
},
"NanoBanana – fetch edited image": {
"main": [
[
{
"node": "Merge – collect image sources (3 providers)",
"type": "main",
"index": 0
}
]
]
},
"Set – select Seedream image URL": {
"main": [
[
{
"node": "Merge – collect image sources (3 providers)",
"type": "main",
"index": 1
}
]
]
},
"Loop Over Items - Split In Batches": {
"main": [
[
{
"node": "Aggregate – gather 3 video URLs",
"type": "main",
"index": 0
}
],
[
{
"node": "Format Prompt",
"type": "main",
"index": 0
}
]
]
},
"Split out – iterate image_prompt": {
"main": [
[
{
"node": "NanoBanana: Create Image",
"type": "main",
"index": 0
},
{
"node": "Seedream: Generate image from texte",
"type": "main",
"index": 0
},
{
"node": "Generate 4o Image(GPT IMAG 1)",
"type": "main",
"index": 0
}
]
]
},
"Trigger: Receive Idea via Telegram": {
"main": [
[
{
"node": "Telegram: Get Image File",
"type": "main",
"index": 0
}
]
]
},
"Upload Final Video to Google Drive": {
"main": [
[
{
"node": "Read Brand Settings",
"type": "main",
"index": 0
}
]
]
},
"Seedream: Generate image from texte": {
"main": [
[
{
"node": "Wait – image rendering",
"type": "main",
"index": 0
}
]
]
},
"ChatGPT Image – fetch generated image": {
"main": [
[
{
"node": "Merge – collect image sources (3 providers)",
"type": "main",
"index": 2
}
]
]
},
"Merge – collect image sources (3 providers)": {
"main": [
[
{
"node": "Google Sheets – save image URLs",
"type": "main",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 内容创作, 多模态 AI
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
💥 使用NanoBanana和VEO3生成AI病毒视频,通过Blotato分享到社交平台 - 视频
使用NanoBanana和VEO3生成AI病毒视频,通过Blotato在社交媒体分享
Set
Code
Wait
+13
47 节点Dr. Firas
杂项
💥 HeyGen II - 克隆我 - 从想法到发布:适用于 YouTube、TikTok 和 Instagram 的 GPT-5 视频自动化 - 视频
使用 HeyGen、GPT-5 和社交发布自动化语音输入视频创作
If
Set
Wait
+13
41 节点Dr. Firas
内容创作
💥 HeyGen - 从想法到发布:用于 YouTube、TikTok 和 Instagram 的 GPT-5 视频自动化 - 视频
使用 GPT-5 生成 AI 虚拟形象视频并发布至社交媒体平台
If
Set
Wait
+13
41 节点Dr. Firas
内容创作
使用 OpenAI、ElevenLabs 和 Fal.ai 自动化病毒式内容创作,适用于视频、播客和 ASMR
使用 OpenAI、ElevenLabs 和 Fal.ai 自动化病毒式内容创作,适用于视频、播客和 ASMR
Set
Code
Wait
+16
97 节点Adam Crafts
内容创作
1. 播放列表详情设置机器人副本
使用 Suno、GPT-4、Runway 和 Creatomate 创建 AI 生成的 YouTube 音乐播放列表
If
Set
Code
+22
203 节点Joseph
内容创作
💥 使用 NanoBanana 和 Seedance 创建病毒式广告,通过 upload-post 在社交媒体发布 VIDE II
使用 AI 创建病毒式多媒体广告:NanoBanana、Seedance 和 Suno 用于社交媒体
If
Set
Code
+13
45 节点Dr. Firas
杂项
工作流信息
难度等级
高级
节点数量63
分类2
节点类型19
作者
Dr. Firas
@drfirasAutomation expert and certified trainer. I create hands-on courses to master automation with n8n. Contact me to access my exclusive training and start building powerful workflows today. 🚀
外部链接
在 n8n.io 查看 →
分享此工作流