8
n8n 中文网amn8n.com

自动化AI YouTube Shorts工厂(用于ASMR的Seedance)

高级

这是一个AI领域的自动化工作流,包含 32 个节点。主要使用 Code, Wait, Gmail, YouTube, Telegram 等节点,结合人工智能技术实现智能自动化。 使用Seedance、Fal AI和GPT-4创建并上传AI生成的ASMR YouTube Shorts

前置要求
  • Google 账号和 Gmail API 凭证
  • Telegram Bot Token
  • 可能需要目标 API 的认证凭证
  • Google Sheets API 凭证
  • OpenAI API Key
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "id": "LPUpZtHK7gGRA5wa",
  "meta": {
    "instanceId": "1d871c7857f6a0f6093c24e2cd2fa1fa755b3826859fe85548d66cefd9f0e0ed"
  },
  "name": "自动化 AI YouTube Shorts 工厂(用于 ASMR 的 Seedance)",
  "tags": [
    {
      "id": "1",
      "name": "AI"
    },
    {
      "id": "2",
      "name": "YouTube"
    },
    {
      "id": "3",
      "name": "Content Creation"
    }
  ],
  "nodes": [
    {
      "id": "25a59939-f6b6-4fae-8ed0-7808e008331c",
      "name": "解绑提示词",
      "type": "n8n-nodes-base.code",
      "position": [
        3060,
        220
      ],
      "parameters": {
        "jsCode": "function findSceneEntries(obj) {\n  const scenes = [];\n\n  for (const [key, value] of Object.entries(obj)) {\n    if (key.toLowerCase().startsWith(\"scene\") && typeof value === \"string\") {\n      scenes.push(value);\n    } else if (typeof value === \"object\" && value !== null) {\n      scenes.push(...findSceneEntries(value));\n    }\n  }\n\n  return scenes;\n}\n\nlet output = [];\n\ntry {\n  const inputData = items[0].json;\n  const scenes = findSceneEntries(inputData);\n\n  if (scenes.length === 0) {\n    throw new Error(\"No scene keys found at any level.\");\n  }\n\n  output = scenes.map(scene => ({ description: scene }));\n} catch (e) {\n  throw new Error(\"Could not extract scenes properly. Details: \" + e.message);\n}\n\nreturn output;\n"
      },
      "typeVersion": 2
    },
    {
      "id": "c15a3956-bf4f-446e-b14b-1304d5b37f3d",
      "name": "创建音效",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3260,
        440
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/mmaudio-v2 ",
        "body": "= {\n        \"prompt\": \"ASMR Soothing sound effects. {{ $('Prompts AI Agent').item.json.output.Sound }}\",\n        \"duration\": 10,\n        \"video_url\": \"{{ $json.data.outputs[0] }}\"\n  }\n",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 2000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "authentication": "genericCredentialType",
        "rawContentType": "application/json",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "d277a432-e3b3-4069-837c-6e68def03672",
      "name": "获取音效",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3780,
        440
      ],
      "parameters": {
        "url": "=https://queue.fal.run/fal-ai/mmaudio-v2/requests/{{ $json.request_id }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "2734cc8e-416a-41fd-a20b-40c079889907",
      "name": "等待音效",
      "type": "n8n-nodes-base.wait",
      "position": [
        3480,
        440
      ],
      "parameters": {
        "amount": 60
      },
      "typeVersion": 1.1
    },
    {
      "id": "70f2ebeb-1ef1-439c-88b5-3c6094dca6a3",
      "name": "列出元素",
      "type": "n8n-nodes-base.code",
      "position": [
        3060,
        640
      ],
      "parameters": {
        "jsCode": "return [\n  {\n    video_urls: items.map(item => item.json.video.url)\n  }\n];"
      },
      "typeVersion": 2
    },
    {
      "id": "8892adcd-e2da-476c-998d-b814b12184e0",
      "name": "序列化视频",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3260,
        640
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/ffmpeg-api/compose",
        "body": "={\n  \"tracks\": [\n    {\n      \"id\": \"1\",\n      \"type\": \"video\",\n      \"keyframes\": [\n        { \"url\": \"{{ $json.video_urls[0] }}\", \"timestamp\": 0, \"duration\": 10 },\n        { \"url\": \"{{ $json.video_urls[1] }}\", \"timestamp\": 10, \"duration\": 10 },\n        { \"url\": \"{{ $json.video_urls[2] }}\", \"timestamp\": 20, \"duration\": 10 }\n      ]\n    }\n  ]\n}",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 2000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "authentication": "genericCredentialType",
        "rawContentType": "application/json",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "9063eb02-8cd4-4b75-87f2-fdd59f56f26c",
      "name": "获取最终视频",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3780,
        640
      ],
      "parameters": {
        "url": "=https://queue.fal.run/fal-ai/ffmpeg-api/requests/{{ $json.request_id }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "b3c4c19c-2caa-454c-ae56-a6c00117a6d4",
      "name": "等待最终视频",
      "type": "n8n-nodes-base.wait",
      "position": [
        3480,
        640
      ],
      "parameters": {
        "amount": 60
      },
      "typeVersion": 1.1
    },
    {
      "id": "7edea676-00ad-4c17-8fd9-54e55e06dbc5",
      "name": "思考",
      "type": "@n8n/n8n-nodes-langchain.toolThink",
      "position": [
        2580,
        520
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "9d61496d-66a5-454f-b60a-6d997a4d75e8",
      "name": "OpenAI 聊天模型",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2220,
        440
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "value": "gpt-4.1"
        }
      },
      "credentials": {
        "openAiApi": {}
      },
      "typeVersion": 1.2
    },
    {
      "id": "da01687e-ad98-42c0-bab5-057882d6709b",
      "name": "提示词 AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2720,
        220
      ],
      "parameters": {
        "text": "=Give me 3 video prompts based on the previous \n\nUse the Think tool to review your output",
        "options": {
          "systemMessage": "=Role: You are a prompt-generation AI specializing in satisfying, ASMR-style video prompts for kinetic sand. Your task is to generate a multi-scene video sequence that vividly shows a tool (like a knife, scoop, or press) interacting with kinetic sand in a clean, high-detail setting.\n\nYour writing must follow this style:\n\nSatisfying, tactile realism.\nMacro-level detail with a tight focus on the tool interacting with the sand's unique texture.\nThe tool must always be in motion — slicing, scooping, pressing, or crumbling the sand. Never idle or static.\nCamera terms are allowed (e.g. macro view, top-down shot, slow-motion).\n\nEach scene must contain all of the following, expressed through detailed visual language:\n\n✅ The kinetic sand (from the Idea)\n✅ The environment or surface (from the Environment)\n✅ The texture, structure, and behavior of the sand as it's being manipulated\n✅ A visible tool (knife, scoop, mold) actively interacting with the sand\n\nDescriptions should show:\n\nThe physical makeup of the sand — is it layered with different colors, sparkly, smooth, or matte? Emphasize its granular, yet cohesive structure.\nHow the sand responds to the tool — clean slicing, soft crumbling, perfect imprints, satisfying deformation, or a cascading collapse.\nThe interaction between the tool and the sand — sand grains momentarily sticking to the tool, the smooth surface left behind, the crisp edges of a cut.\nAny ASMR-relevant sensory cues like the satisfying crunch, the soft hiss of falling grains, or the shimmer of glitter, but always shown visually — not narrated.\n\nTone:\n\nSatisfying, mesmerizing, tactile.\nNo poetic metaphors, emotion, or storytelling.\nAvoid fantasy or surreal imagery.\nAll description must feel physically grounded and visually appealing.\n\nLength:\n\nEach scene must be between 1,000 and 2,000 characters.\nNo shallow or repetitive scenes — each must be immersive, descriptive, and specific.\nEach scene should explore a distinct phase of the action, a different camera perspective, or a new behavior of the sand.\n\nInputs:\n\nIdea: \"{{ $json.idea }}\"\nEnvironment: \"{{ $json.environment_prompt }}\"\nSound: \"{{ $json.sound_prompt }}\"\n\nFormat:\n\nIdea: \"...\"\nEnvironment: \"...\"\nSound: \"...\"\n\nScene 1: \"...\"\nScene 2: \"...\"\nScene 3: \"...\"\n(and so on)"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.9
    },
    {
      "id": "64abf568-4e09-4e5c-bd12-7475e721a54c",
      "name": "解析器",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        2380,
        440
      ],
      "parameters": {
        "jsonSchemaExample": "[\n  {\n    \"Caption\": \"Diver Removes Nets Off Whale 🐋 #whalerescue #marinelife #oceanrescue #seahelpers #love #nature #instagood #explore #viral #savenature #oceanguardians #cleanoceans\",\n    \"Idea\": \"Diver carefully cuts tangled net from distressed whale in open sea\",\n    \"Environment\": \"Open ocean, sunlight beams through water, diver and whale, cinematic realism\",\n    \"Sound\": \"Primary sound description under 15 words\",\n    \"Status\": \"for production\"\n  }\n]\n"
      },
      "typeVersion": 1.2
    },
    {
      "id": "d8c29c02-f396-4150-aa2c-550d7b123f9e",
      "name": "计划触发器",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        1500,
        220
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes",
              "minutesInterval": 30
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "f2e85826-3416-4a1e-8f26-5a8538087174",
      "name": "解析器2",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        2900,
        440
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"Idea\": \"An obsidian rock being sliced with a shimmering knife\",\n  \"Environment\": \"Clean studio table, subtle light reflections\",\n  \"Sound\": \"Crisp slicing, deep grinding, and delicate crumbling\",\n  \"Scene 1\": \"Extreme macro shot: a razor-sharp, polished knife blade presses into the dark, granular surface of an obsidian rock, just beginning to indent.\",\n  \"Scene 2\": \"Close-up: fine, iridescent dust particles erupt from the point of contact as the blade cuts deeper into the obsidian, catching the studio light.\",\n  \"Scene 3\": \"Mid-shot: the knife, held perfectly steady, has formed a shallow, clean groove across the obsidian's shimmering surface, revealing a new, smooth texture.\"\n}"
      },
      "typeVersion": 1.2
    },
    {
      "id": "790aee60-38b8-4939-834c-bd468b0f240b",
      "name": "创建剪辑",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3260,
        220
      ],
      "parameters": {
        "url": "https://api.wavespeed.ai/api/v3/bytedance/seedance-v1-lite-t2v-480p",
        "body": "={\n  \"aspect_ratio\": \"9:16\",\n  \"duration\": 10,\n  \"prompt\": \"VIDEO THEME: {{ $('Prompts AI Agent').item.json.output.Idea }} | WHAT HAPPENS IN THE VIDEO: {{ $json.description }} | WHERE THE VIDEO IS SHOT: {{ $('Prompts AI Agent').item.json.output.Environment }}\"\n}\n",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 3000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "authentication": "genericCredentialType",
        "rawContentType": "application/json",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "ba98805d-7d8b-476e-86b3-94017f79454b",
      "name": "等待剪辑",
      "type": "n8n-nodes-base.wait",
      "position": [
        3480,
        220
      ],
      "parameters": {
        "amount": 120
      },
      "typeVersion": 1.1
    },
    {
      "id": "7fc24bd4-8740-4633-b15a-868ff3cdacf5",
      "name": "获取剪辑",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3780,
        220
      ],
      "parameters": {
        "url": "=https://api.wavespeed.ai/api/v3/predictions/{{ $json.data.id }}/result",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "614d8a4b-1319-4c0a-9b52-de284c232a6d",
      "name": "下载最终视频",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4120,
        820
      ],
      "parameters": {
        "url": "={{ $('Get Final Video').item.json.video_url }}",
        "options": {
          "response": {
            "response": "file"
          }
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "f916f4e9-9634-4863-bdb9-b56e3401165e",
      "name": "上传到 YouTube",
      "type": "n8n-nodes-base.youTube",
      "position": [
        4320,
        820
      ],
      "parameters": {
        "title": "=AI ASMR : {{ $('Update Final Video to Sheet').item.json.idea }}",
        "options": {
          "tags": "=asmr, viral, asmrai, n8n, automation",
          "description": "=AI-Generated Video Idea: {{ $('Update Final Video to Sheet').item.json.idea }}\n\nThis video was created automatically using our automated workflow #asmrai #asmr #n8n",
          "privacyStatus": "public",
          "notifySubscribers": true
        },
        "resource": "video",
        "operation": "upload"
      },
      "credentials": {
        "youTubeOAuth2Api": {}
      },
      "typeVersion": 1
    },
    {
      "id": "f9c33085-e6e4-41c9-a463-62cb52c6e71c",
      "name": "Telegram 通知",
      "type": "n8n-nodes-base.telegram",
      "position": [
        4600,
        820
      ],
      "parameters": {
        "text": "=✅ Your new video is ready!  **Title:** {{ $('Update Final Video to Sheet').item.json.idea }}  \nWatch it here: \nhttps://www.youtube.com/watch?v={{ $('Upload to YouTube').item.json.id }}",
        "chatId": "YOUR_CHAT_ID",
        "additionalFields": {
          "parse_mode": "HTML"
        }
      },
      "credentials": {
        "telegramApi": {}
      },
      "typeVersion": 1.2
    },
    {
      "id": "acbdb550-278a-4f0a-a3c2-b3f1e9183dec",
      "name": "OpenAI 聊天模型1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1800,
        420
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "value": "gpt-4.1"
        }
      },
      "credentials": {
        "openAiApi": {}
      },
      "typeVersion": 1.2
    },
    {
      "id": "708c4602-2d5c-49f1-84a8-3117a83ce2cc",
      "name": "Gmail 通知",
      "type": "n8n-nodes-base.gmail",
      "position": [
        4600,
        1000
      ],
      "parameters": {
        "sendTo": "your-email@gmail.com",
        "message": "=✅ Your new video is ready!  **Title:** {{ $('Update Final Video to Sheet').item.json.idea }}  Watch it here: https://www.youtube.com/watch?v={{ $('Upload to YouTube').item.json.id }}",
        "options": {
          "senderName": "Bilsimaging -n8n Automation"
        },
        "subject": "✅ Your new video is ready!"
      },
      "credentials": {
        "gmailOAuth2": {}
      },
      "typeVersion": 2.1
    },
    {
      "id": "86188a74-2ca4-4e15-a151-f5a2ae927763",
      "name": "1. 生成热门创意",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1800,
        220
      ],
      "parameters": {
        "text": "Generate one short, trendy, and viral ASMR video idea. Describe the core concept in less than 10 words. Do not explain it, just state the idea.",
        "options": {
          "systemMessage": "You are an AI that specializes in identifying viral trends on platforms like TikTok and YouTube Shorts. Your job is to brainstorm a single, simple, and satisfying ASMR video concept. You must only return the idea as a single line of plain text. Do not add any extra words, formatting, or explanation."
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.9
    },
    {
      "id": "2d8da7d8-c7a0-48b6-b999-59832b543e91",
      "name": "注意:AI 创意生成",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1520,
        0
      ],
      "parameters": {
        "color": 3,
        "width": 940,
        "height": 180,
        "content": "### 步骤 1:AI 构思创意"
      },
      "typeVersion": 1
    },
    {
      "id": "692c4c92-7d16-482f-8bca-cc951ab772e4",
      "name": "注意:资源生成",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2560,
        0
      ],
      "parameters": {
        "color": 3,
        "width": 600,
        "height": 180,
        "content": "### 步骤 2:场景生成和视频创建"
      },
      "typeVersion": 1
    },
    {
      "id": "211c2810-58c9-4246-ba27-561c3e57a74c",
      "name": "注意:最终组装",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3260,
        0
      ],
      "parameters": {
        "color": 3,
        "width": 660,
        "height": 180,
        "content": "### 步骤 3:最终组装"
      },
      "typeVersion": 1
    },
    {
      "id": "c76e5236-b71b-4705-b30c-89d5ae5dd0f5",
      "name": "注意:分发",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4040,
        0
      ],
      "parameters": {
        "color": 3,
        "width": 960,
        "height": 180,
        "content": "### 步骤 4:分发和记录"
      },
      "typeVersion": 1
    },
    {
      "id": "57e8010f-7184-4d88-84fd-d2b85782a09b",
      "name": "提交指南",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        0
      ],
      "parameters": {
        "width": 1320,
        "height": 1240,
        "content": "//ASMR AI 工作流 By Bilsimaging.com"
      },
      "typeVersion": 1
    },
    {
      "id": "62e10519-d31e-4012-8dcf-7e2e82ab35cd",
      "name": "2. Enrich Idea into Plan",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2200,
        220
      ],
      "parameters": {
        "text": "=Take the following trendy ASMR idea and expand it into a full production plan using your required JSON format. Use the examples below for inspiration on how to format the \"Idea\" field.\n\nThe short ASMR idea is:\n[[\n{{ $json.output }}\n]]\n\nHave your final expanded \"Idea\" field be in this format: \"(color/style) (object) being (action)\". \nExamples for your inspiration: layered rainbow kinetic sand being sliced, sparkly purple soap being scooped, neon green slime being pressed.\n\nUse the Think tool to review your output.",
        "options": {
          "systemMessage": "=**Role**: You are an AI designed to generate 1 immersive, satisfying idea based on a user-provided topic. Your output must be formatted as a JSON array (single line) and follow all the rules below exactly.\n\n***\nRULES:\n\nOnly return 1 idea at a time.\n\nThe user will provide a key topic (e.g. \"kinetic sand slicing,\" \"satisfying sand scooping,\" \"ASMR sand sounds\").\n\nThe Idea must:\n\nBe under 13 words.\n\nDescribe an interesting and viral-worthy moment, action, or event related to the provided topic.\n\nThe Caption must be:\n\nShort, punchy, and viral-friendly.\n\nInclude one relevant emoji.\n\nInclude exactly 12 hashtags in this order:\n** 4 topic-relevant hashtags\n** 4 all-time most popular hashtags\n** 4 currently trending hashtags\n\nAll hashtags must be lowercase.\n\nSet Status to \"for production\" (always).\n\nThe Environment must:\n\nBe under 20 words.\n\nMatch the action in the Idea exactly.\n\nClearly describe:\n\nWhere the event is happening (e.g. minimalist white surface, clean studio table)\nKey visuals or background details (e.g. bright lighting, subtle glitter)\nStyle of scene (e.g. macro close-up, cinematic slow-motion)\n\nThe Sound must:\n\nBe under 15 words.\n\nDescribe the primary sound that makes sense to happen in the video. This will be fed to a sound model later on.\n\n\n***\nOUTPUT FORMAT (single-line JSON array):\n\n[\n  {\n    \"Caption\": \"That crunch! 🤤 #kineticsand #satisfyingvideos #asmrsand #sand #oddlysatisfying #viral #fyp #explore #trending #tiktok #diy #crafts\",\n    \"Idea\": \"Slicing through a block of layered rainbow kinetic sand\",\n    \"Environment\": \"Macro close-up on a clean, bright white surface, cinematic slow-motion\",\n    \"Sound\": \"Crisp, crunchy slicing sounds with a soft, gentle hiss\",\n    \"Status\": \"for production\"\n  }\n]"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.9
    },
    {
      "id": "06ccc97f-aa87-4c64-860b-0da4739d3de5",
      "name": "3. Log New Idea to Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2560,
        220
      ],
      "parameters": {
        "columns": {
          "value": {
            "idea": "={{ $json.output[0].Idea }}",
            "caption": "={{ $json.output[0].Caption }}",
            "production": "In Progress",
            "sound_prompt": "={{ $json.output[0].Sound }}",
            "environment_prompt": "={{ $json.output[0].Environment }}"
          },
          "mappingMode": "defineBelow"
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "value": "YOUR_SHEET_NAME"
        },
        "documentId": {
          "__rl": true,
          "value": "YOUR_GOOGLE_SHEET_ID"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {}
      },
      "typeVersion": 4.5
    },
    {
      "id": "58b1f682-2752-4995-b05e-7598353d7a61",
      "name": "Update Final Video to Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        4120,
        640
      ],
      "parameters": {
        "key": "idea",
        "value": "={{ $('Update Final Video to Sheet').item.json.idea }}",
        "columns": {
          "value": {
            "production": "Done",
            "youtube_url": "=",
            "final_output": "={{ $json.video_url }}"
          },
          "mappingMode": "defineBelow"
        },
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "value": "YOUR_SHEET_NAME"
        },
        "documentId": {
          "__rl": true,
          "value": "YOUR_GOOGLE_SHEET_ID"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {}
      },
      "typeVersion": 4.5
    },
    {
      "id": "fbf64920-6e9c-4dfa-b75a-bbf022ea597b",
      "name": "Update Sheet with Youtube Link",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        4600,
        640
      ],
      "parameters": {
        "key": "idea",
        "value": "={{ $('Update Final Video to Sheet').item.json.idea }}",
        "columns": {
          "value": {
            "youtube_url": "=https://www.youtube.com/watch?v={{ $('Upload to YouTube').item.json.id }}"
          },
          "mappingMode": "defineBelow"
        },
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "value": "YOUR_SHEET_NAME"
        },
        "documentId": {
          "__rl": true,
          "value": "YOUR_GOOGLE_SHEET_ID"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {}
      },
      "typeVersion": 4.5
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "final_submission_v1",
  "connections": {
    "Think": {
      "ai_tool": [
        [
          {
            "node": "2. Enrich Idea into Plan",
            "type": "ai_tool",
            "index": 0
          },
          {
            "node": "Prompts AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Parser": {
      "ai_outputParser": [
        [
          {
            "node": "2. Enrich Idea into Plan",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Parser2": {
      "ai_outputParser": [
        [
          {
            "node": "Prompts AI Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Get Clips": {
      "main": [
        [
          {
            "node": "Create Sounds",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Sounds": {
      "main": [
        [
          {
            "node": "List Elements",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Clips": {
      "main": [
        [
          {
            "node": "Wait for Clips",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Sounds": {
      "main": [
        [
          {
            "node": "Wait for Sounds",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "List Elements": {
      "main": [
        [
          {
            "node": "Sequence Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Sequence Video": {
      "main": [
        [
          {
            "node": "Wait for Final Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Clips": {
      "main": [
        [
          {
            "node": "Get Clips",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Final Video": {
      "main": [
        [
          {
            "node": "Update Final Video to Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Sounds": {
      "main": [
        [
          {
            "node": "Get Sounds",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prompts AI Agent": {
      "main": [
        [
          {
            "node": "Unbundle Prompts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "1. Generate Trendy Idea",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Unbundle Prompts": {
      "main": [
        [
          {
            "node": "Create Clips",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "2. Enrich Idea into Plan",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Prompts AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Upload to YouTube": {
      "main": [
        [
          {
            "node": "Gmail Notification",
            "type": "main",
            "index": 0
          },
          {
            "node": "Telegram Notification",
            "type": "main",
            "index": 0
          },
          {
            "node": "Update Sheet with Youtube Link",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "1. Generate Trendy Idea",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Download Final Video": {
      "main": [
        [
          {
            "node": "Upload to YouTube",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Final Video": {
      "main": [
        [
          {
            "node": "Get Final Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1. Generate Trendy Idea": {
      "main": [
        [
          {
            "node": "2. Enrich Idea into Plan",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2. Enrich Idea into Plan": {
      "main": [
        [
          {
            "node": "3. Log New Idea to Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3. Log New Idea to Sheet": {
      "main": [
        [
          {
            "node": "Prompts AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Final Video to Sheet": {
      "main": [
        [
          {
            "node": "Download Final Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

高级 - 人工智能

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
高级
节点数量32
分类1
节点类型13
难度说明

适合高级用户,包含 16+ 个节点的复杂工作流

作者
Bilel Aroua

Bilel Aroua

@bilsimaging

Expert AI Gen, Audio, Music and Multimedia Services But we do so much more!

外部链接
在 n8n.io 查看

分享此工作流