8
n8n 한국어amn8n.com

FalAI Flux-Kling과 GPT-4를 사용하여 바이러스적인 소셜 미디어 비디오 자동 생성

고급

이것은Content Creation, Multimodal AI분야의자동화 워크플로우로, 39개의 노드를 포함합니다.주로 Code, Wait, Merge, GoogleDrive, HttpRequest 등의 노드를 사용하며. 사용 FalAI Flux/Kling과 GPT-4로 바이러스적인 소셜 미디어 비디오 자동 생성

사전 요구사항
  • Google Drive API 인증 정보
  • 대상 API의 인증 정보가 필요할 수 있음
  • Google Sheets API 인증 정보
  • OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "meta": {
    "instanceId": "3f9200fd36bb1bacb074812d319dd4fba325b9cd32ee87ee82b76f45271f5dfd",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "cec5f9ad-36f7-4058-8457-2b2522ae2440",
      "name": "스티키 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        6048,
        -1712
      ],
      "parameters": {
        "color": 4,
        "width": 528,
        "height": 80,
        "content": "## Create Voiceover and Upload Video to Drive\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "14df5024-e051-473f-97e4-bf64e717b3e6",
      "name": "드라이브에 파일 업로드",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        6224,
        -1008
      ],
      "parameters": {
        "name": "={{ $('Create New Idea1').first().json.message.content.name }}",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "root",
          "cachedResultName": "/ (Root folder)"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "ajRUnu2dQWuqnQYA",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "7566a56d-0417-4657-a252-95cc9bbce206",
      "name": "URL을 파일로 변환",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        5952,
        -1008
      ],
      "parameters": {
        "url": "={{ $json.video_url }}",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file"
            }
          }
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e0befd74-9b5d-4c1b-91e6-dca10d907db5",
      "name": "전체 보이스오버 프롬프트 가져오기",
      "type": "n8n-nodes-base.code",
      "position": [
        5744,
        -1568
      ],
      "parameters": {
        "jsCode": "let combined;\n\ntry {\n  // 1) grab the segments array\n  const segments = $('Generate Timed Script').first().json.message.content.segments;\n  if (!Array.isArray(segments)) {\n    throw new Error(\"Expected an array at ('Gnerate Timed Script').first().json.message.content.segments[0]\");\n  }\n\n  // 2) extract each text and trim whitespace\n  const texts = segments.map(s => {\n    if (typeof s.text !== \"string\") {\n      throw new Error(\"Each segment must have a text string\");\n    }\n    return s.text.trim();\n  });\n\n  // 3) join into one paragraph (spaces between sentences)\n  combined = texts.join(\" \");\n}\ncatch (err) {\n  throw new Error(\"Failed to combine segment texts: \" + err.message);\n}\n\n// 4) return a single item carrying your full script\nreturn [\n  {\n    json: {\n      paragraph: combined\n    }\n  }\n];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "7a3eb5bd-d354-4b6f-85a2-d18193340c86",
      "name": "대기1",
      "type": "n8n-nodes-base.wait",
      "position": [
        5040,
        -1392
      ],
      "webhookId": "db3b70cf-1e63-4273-8809-3ea7148d8cc1",
      "parameters": {
        "amount": 240
      },
      "typeVersion": 1.1
    },
    {
      "id": "eb52e5fb-1dbe-48e9-9994-007308743296",
      "name": "대기11",
      "type": "n8n-nodes-base.wait",
      "position": [
        5040,
        -1168
      ],
      "webhookId": "db3b70cf-1e63-4273-8809-3ea7148d8cc1",
      "parameters": {
        "amount": 700
      },
      "typeVersion": 1.1
    },
    {
      "id": "4b96227e-489d-4624-bc34-430dd7e33501",
      "name": "스티키 노트10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3760,
        -960
      ],
      "parameters": {
        "color": 5,
        "width": 320,
        "height": 100,
        "content": "## Step 4: Merge Videos\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "56ac8431-b487-47a9-8155-e12eaa891de2",
      "name": "요소 목록1",
      "type": "n8n-nodes-base.code",
      "position": [
        4368,
        -960
      ],
      "parameters": {
        "jsCode": "return [\n  {\n    video_urls: items.map(item => item.json.video.url)\n  }\n];"
      },
      "typeVersion": 2
    },
    {
      "id": "23f4420e-67bb-4462-92d1-21a71dfe5fb7",
      "name": "병합1",
      "type": "n8n-nodes-base.merge",
      "position": [
        4144,
        -960
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.1
    },
    {
      "id": "9fa34ca3-ac63-4900-9870-e76717c1d969",
      "name": "스티키 노트9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3968,
        -1168
      ],
      "parameters": {
        "width": 320,
        "height": 100,
        "content": "## Step 3: Generate videos\n"
      },
      "typeVersion": 1
    },
    {
      "id": "8f0801aa-f458-47a6-a362-6ac329a11345",
      "name": "영상 가져오기1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        5504,
        -1168
      ],
      "parameters": {
        "url": "=https://queue.fal.run/fal-ai/kling-video/requests/{{ $json.request_id }}\n",
        "options": {},
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "fb67f516-c2f9-4f4d-9405-f71081900cd3",
      "name": "영상 생성1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4608,
        -1168
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/kling-video/v1.6/standard/image-to-video",
        "body": "={\n    \"prompt\": \"{{ $json.content }}\",\n    \"image_url\": \"{{ $('Get Images1').item.json.images[0].url }}\",\n    \"duration\": \"5\",\n    \"aspect_ratio\": \"9:16\",\n    \"negative_prompt\": \"bad quality\",\n    \"cfg_scale\": 0.5\n}",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 2000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "sendHeaders": true,
        "rawContentType": "application/json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "1ac22084-8049-408e-b38a-548c3c294939",
      "name": "영상 프롬프트1",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        4368,
        -1168
      ],
      "parameters": {
        "text": "=You are a prompt-generation AI trained to create short,\ncinematic, third-person video prompts.\n\nYou will analyze an uploaded image and create one clear,\nrealistic prompt describing a frozen moment.\n\nEach prompt must match the style of the context.\nOriginal photo-generation prompt for context:\n\"{{ $('Unbundle prompts1').item.json.prompt }}\"\nUse this only to understand the role, setting, or tone. Do\nnot copy or repeat it.\n\nRules\nNo \"I\" or \"POV\" phrasing.\nShort third-person sentences (under 300 characters).\nOnly one action.\n\nMention visible environmental textures (swirling dust storms,\nice crystals refracting light, layered rock strata, light\nshafts through thin atmospheres).\n\nNo emotional language, no cinematic words like \"camera\npans.\"\n\nOne frozen action per sentence, no chaining\n\nMatch cold, void, awe-inspiring documentary feeling.\n\nExample Outputs\n-A vibrant nebula glowing in shades of violet and gold against a backdrop of countless stars.\n\n-A spiral galaxy’s dusty arms curving gracefully through the cosmic expanse.\n\n-The crescent Moon rising over an alien planet’s lavender-hued horizon.\n\n-Auroral curtains dancing across the night sky of an icy polar world.\n\n-A binary star system entwined in a delicate orbital waltz amid drifting cosmic dust.\n\n-An asteroid silhouetted against a distant quasar, streaking silently through deep space.\n\nUse the uploaded image and matching description to generate\none short prompt in this\nstyle.",
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "chatgpt-4o-latest",
          "cachedResultName": "CHATGPT-4O-LATEST"
        },
        "options": {
          "detail": "high"
        },
        "resource": "image",
        "imageUrls": "={{ $json.images[0].url }}",
        "operation": "analyze"
      },
      "credentials": {
        "openAiApi": {
          "id": "836QDsJzdKW2lXHi",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "f1cc898b-6f85-4f38-9eaa-e9c4fcaf0270",
      "name": "스티키 노트8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4080,
        -1392
      ],
      "parameters": {
        "color": 3,
        "width": 320,
        "height": 100,
        "content": "## Step 2: Generate Images\n"
      },
      "typeVersion": 1
    },
    {
      "id": "ee58c36c-446a-4116-9a19-a4c241f6cf11",
      "name": "이미지 가져오기1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        5504,
        -1392
      ],
      "parameters": {
        "url": "=https://queue.fal.run/fal-ai/flux/requests/{{ $json.request_id }}",
        "options": {},
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "8b819c5c-3939-4142-9000-f5e49f56c75a",
      "name": "이미지 생성1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4608,
        -1392
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/flux/schnell",
        "body": "={\n  \"prompt\": \"{{ $json.prompt }}\",\n  \"image_size\": \"portrait_16_9\"\n}",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 2000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "sendHeaders": true,
        "rawContentType": "application/json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "b6fd4153-abf9-44c6-ba02-45702ccc3840",
      "name": "스티키 노트7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4208,
        -1568
      ],
      "parameters": {
        "color": 6,
        "width": 320,
        "height": 100,
        "content": "## Step 1: Generate prompts\n"
      },
      "typeVersion": 1
    },
    {
      "id": "dbf9c5dd-f7a3-4d85-8270-eaeacf778ac6",
      "name": "프롬프트 분해1",
      "type": "n8n-nodes-base.code",
      "position": [
        5504,
        -1568
      ],
      "parameters": {
        "jsCode": "// 1) Pull out the segments \nconst segments = items[0].json.message.content.scenes;\nif (!Array.isArray(segments)) {\n  throw new Error(\"Expected an array at items[0].json.message.content.segments\");\n}\n\n// 2) Map each segment to its own output item\nreturn segments.map(segment => {\n  if (typeof segment.prompt !== \"string\") {\n    throw new Error(\"Each segment must have a prompt string\");\n  }\n  return {\n    json: {\n      scene:   segment.scene,\n      start:   segment.start,\n      end:     segment.end,\n      prompt:  segment.prompt.trim()\n    }\n  };\n});\n"
      },
      "typeVersion": 2
    },
    {
      "id": "26d4b225-a478-4a7d-835b-b86c10d2cf1a",
      "name": "새 아이디어 생성1",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        5120,
        -1776
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "GPT-4.1"
        },
        "options": {},
        "messages": {
          "values": [
            {
              "content": "=You are a highly intelligent AI designed to generate 1 immersive, viral idea. Your output must be formatted as a JSON array (single line) and follow all the rules below exactly.\n\nRULES:\n\nOnly return 1 idea at a time.\n\nThe Idea must:\nBe under 13 words.\nDescribe a realistic setting involving black holes or spatial bodies.\nDescribe a general setting or phenomenon, not a specific event or action.\nFocus on real-life.\nNo fantasy elements (no alien-to-astronaut rescues, no magical events).\nThis idea will be used to create a voiceover about fun facts related to the idea.\n\nThe Title must be: short, punchy, and viral-friendly.\nInclude one relevant emoji.\nInclude exactly 8 hashtags in this order:\n\n#4 hashtags relevant to the idea\n#4 all-time most popular hashtags\n\n4 idea related hashtags \n4 all-time most popular hashtags\nAll hashtags must be lowercase.\n\nSet Status to \"for production\" (always).\n\nThe Environment must:\nBe under 20 words.\nMatch the action in the Idea exactly (same participants and setting).\nClearly describe:\nWhere it's happening \nMain background details (starfield glow, Earth’s curvature, nebula clouds, cosmic dust, etc.).\nparticipants (not necessary to be included) \nStyle of scene (cinematic realism, gritty documentary, aerial view, etc.).\n\nOUTPUT FORMAT (single-line JSON array):\n\n[\n{\n\"title\": \"Summarized viral idea title with emoji #4_relevant_hashtags #4_all_time_popular_hashtags,     \"idea\": \"Short description idea\",\n\"brief\": \"Brief vivid setting under 20 words matching the action\",\n\"status\": \"for production\",\n\"name\": \"2 word name for the idea in the format video_name\"\n}\n]"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "836QDsJzdKW2lXHi",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "10a7f701-feaf-4a96-87e1-0c21d3e7ac50",
      "name": "장면 생성1",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        5104,
        -1568
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "GPT-4.1"
        },
        "options": {
          "temperature": 0.7
        },
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=You are a highly intelligent cinematic still-image prompt-generation AI.  "
            },
            {
              "content": "=Your task: For each of the 12 Scene text strings, write one frozen-moment image prompt.\n\nGLOBAL RULES\n1. **Length** ≤ 500 characters (count everything, including commas and “8 K”).  \n2. **Voice** Cinematic third-person, understated documentary tone.  \n3. **Detail** Highlight tactile textures, lighting, and scale.  \n4. **Relevance** Visually embody the *specific scientific or narrative idea* named in the Scene text:\n   • If a line mentions a substance or process, show it manifestly (e.g., carbon atoms compressed into a diamond-like lattice).  \n   • If a celestial body is named, include its full, explicit designation in the first clause (“Titan, Saturn’s moon”).  \n5. **Language bans** No movement verbs (“orbiting,” “swirling”), no camera jargon (“pan,” “dolly”), no fantasy elements.  \n6. **Framing**  \n   • One static, self-contained moment—no set-ups or transitions.  \n   • No extreme close-ups.  \n   • Scene 1 and Scene 12 (or Scene 2 if preferred) must be wide, zoomed-out tableaux that introduce and close the sequence.  \n7. **Abbreviations**  \n   • Do *not* shorten proper names (write “International Space Station,” not “ISS”, always write, \"Saturn's moon Titan\" not \"Titan\").  \n   • Technical tags “8 K, 16-bit HDR” stay exactly as written.  \n8. **Credible science** Keep visuals physically plausible; evocative realism beats strict textbook accuracy when they clash.  \n9.**Prompt format (flux/schnell):**\n“[Tech framework] — [Subject], [Style], [Composition], [Lighting], [Colour palette], [Mood], [Extra].”\n- **Tech framework** e.g. “Space-telescope capture on 30 cm f/2 refractor, simulated high resolution sensor, upscaled to 8 K, 16-bit HDR source”  \n- **Use** `num_steps=3` (or 4 for extra micro-detail). \n\nFor each 5-second segment below, make the scene prompt so it reflects the vibe of each scene:\n\nScene 1:{{ $json.message.content.segments[0].text }}\nScene 2:{{ $json.message.content.segments[1].text }}\nScene 3:{{ $json.message.content.segments[2].text }}\nScene 4: {{ $json.message.content.segments[3].text }}\nScene 5: {{ $json.message.content.segments[4].text }}\nScene 6: {{ $json.message.content.segments[5].text }}\nScene 7: {{ $json.message.content.segments[6].text }}\nScene 8: {{ $json.message.content.segments[7].text }}\nScene 9: {{ $json.message.content.segments[8].text }}\nScene 10: {{ $json.message.content.segments[9].text }}\nScene 11: {{ $json.message.content.segments[10].text }}\nScene 12: {{ $json.message.content.segments[11].text }}\n\nOutput as a JSON array of 12 objects called scenes"
            },
            {
              "role": "assistant",
              "content": "=[\n  {\n    \"scene\": 1,\n    \"start\": \"0:00\",\n    \"end\": \"0:05\",\n    \"prompt\": \"Simulated Cassini orbiter camera, NASA-grade photo-realism — high-altitude oblique view above Saturn’s ring plane, pale sunlight grazing endless black space, golden rings curving in broad arcs with the Cassini Division crisp, fine cosmic dust haze beyond, icy ring facets shimmering like crystalline prisms, awe-inspiring vastness, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 2,\n    \"start\": \"0:05\",\n    \"end\": \"0:10\",\n    \"prompt\": \"Panoramic Cassini spacecraft capture, NASA-grade photo-realism — edge-to-edge view of Saturn’s rings, thousands of parallel ringlets stretching to the horizon, mosaic of platinum, chalk-white and muted gold reflections, tactile grooves and ridges for sculpted depth, serene monumental scale, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 3,\n    \"start\": \"0:10\",\n    \"end\": \"0:15\",\n    \"prompt\": \"Close-range spacecraft capture, NASA-grade photo-realism — razor-sharp terminator where Saturn’s shadow meets sunlit rings, high-contrast boundary slicing across icy particles, glittering ice fragments and charcoal rock chips in stark relief, isolated crystals glowing like cold beacons, dramatic chiaroscuro effect, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 4,\n    \"start\": \"0:15\",\n    \"end\": \"0:20\",\n    \"prompt\": \"Orbital macro capture, NASA-grade photo-realism — dense cluster of ring particles with house-sized ice boulders, muted sunlight diffusing through silvery haze, pock-marked frost-scored textures, long shadows draping the debris field, ancient dust softening chipped edges, finely detailed, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 5,\n    \"start\": \"0:20\",\n    \"end\": \"0:25\",\n    \"prompt\": \"Narrow-angle spacecraft capture, NASA-grade photo-realism — extreme edge-on view of Saturn’s rings as a razor-fine band of brilliant light, ethereal vertical spokes casting fleeting shadows on softly blurred cloud tops, gentle pale yellow to beige gradient in the atmosphere, minimalist elegance, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 6,\n    \"start\": \"0:25\",\n    \"end\": \"0:30\",\n    \"prompt\": \"Simulated occultation capture, NASA-grade photo-realism — backlit cross-section of a sparsely populated ring region, paper-thin veil of ice particles glowing like embers, translucent layer against absolute black, subtle smoky aurora effect, ghostly luminosity fading toward darkness, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 7,\n    \"start\": \"0:30\",\n    \"end\": \"0:35\",\n    \"prompt\": \"High-orbit spacecraft capture, NASA-grade photo-realism — Saturn’s pale golden cloud bands in razor clarity, intricate ring shadows casting lace-like patterns on the upper atmosphere, pinpoint stars punctuating infinite dark, quiet cosmic grandeur, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 8,\n    \"start\": \"0:35\",\n    \"end\": \"0:40\",\n    \"prompt\": \"Nadir spacecraft capture, NASA-grade photo-realism — overhead view revealing the Encke Division and wave-like ridges in icy bands, sharp-edged corrugations sculpted by shepherd moons, precise concentric order, scientific clarity, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 9,\n    \"start\": \"0:40\",\n    \"end\": \"0:45\",\n    \"prompt\": \"Deep-space orbiter capture, NASA-grade photo-realism — Pandora and Prometheus near the F ring boundary, gravitationally sculpted edge where orderly ice meets frost-dusted moon surfaces, pocked craters and jagged ridges under grazing sunlight, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 10,\n    \"start\": \"0:45\",\n    \"end\": \"0:50\",\n    \"prompt\": \"Panoramic outer-ring capture, NASA-grade photo-realism — diffuse fringe of Saturn’s rings with faint streaks and scattered ice motes soft-blurred into the surrounding void, lingering dust wisps above the plane, soft edges dissolving into emptiness, serene ethereal mood, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 11,\n    \"start\": \"0:50\",\n    \"end\": \"0:55\",\n    \"prompt\": \"Side-by-side comparative capture, NASA-grade photo-realism — left sector gleaming with fresh white ice, right sector draped in subtle reddish graphite veil, vertical structures casting threadlike shadows, highlighting slow chemical and physical evolution, scientific tone, 16-bit HDR source\"\n  },\n  {\n    \"scene\": 12,\n    \"start\": \"0:55\",\n    \"end\": \"1:00\",\n    \"prompt\": \"Grand top-down spacecraft capture, NASA-grade photo-realism — fully illuminated rings fanning outward in perfect concentric order, intense white fire atop cloud decks, diffuse glow on upper atmosphere, stars and wispy nebulae framing cosmic scale, majestic and profound, 16-bit HDR source\"\n  }\n]\n"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "836QDsJzdKW2lXHi",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "ffbac481-add5-42a0-872c-316782beb11b",
      "name": "아이디어, 캡션 등 구성1",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        4608,
        -1568
      ],
      "parameters": {
        "columns": {
          "value": {
            "id": "==ROW()-1",
            "idea": "={{ $json.message.content.idea }}",
            "caption": "={{ $json.message.content.title }}",
            "production": "for production",
            "environment_prompt": "={{ $json.message.content.brief }}"
          },
          "schema": [
            {
              "id": "id",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "id",
              "defaultMatch": true,
              "canBeUsedToMatch": true
            },
            {
              "id": "idea",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "idea",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "caption",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "caption",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "production",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "production",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "environment_prompt",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "environment_prompt",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "final_output",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "final_output",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "id"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1bDfwrU6m7UmR9b3pYKRh3tkM9Y-g4CAMo7Q_x1Pbx-k/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1bDfwrU6m7UmR9b3pYKRh3tkM9Y-g4CAMo7Q_x1Pbx-k",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1bDfwrU6m7UmR9b3pYKRh3tkM9Y-g4CAMo7Q_x1Pbx-k/edit?usp=drivesdk",
          "cachedResultName": "Sheet tt auto"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "XkYsv2o76QVVcrwB",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "136ca028-9b42-4f1b-8f38-e892ff66b36c",
      "name": "스티키 노트6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4640,
        -1776
      ],
      "parameters": {
        "color": 4,
        "height": 100,
        "content": "## Input\nStarting idea"
      },
      "typeVersion": 1
    },
    {
      "id": "788fbc81-cd89-4279-aba3-0f407139b5a1",
      "name": "보이스와 영상 결합",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        5952,
        -1376
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/ffmpeg-api/compose",
        "body": "={\n  \"tracks\": [\n    {\n      \"id\": \"1\",\n      \"type\": \"video\",\n      \"keyframes\": [\n        {\n          \"url\": \"{{ $('Get Final video').item.json.video_url }}\",\n          \"timestamp\": 0,\n          \"duration\": 65\n        }\n      ]\n    },\n    {\n      \"id\": \"2\",\n      \"type\": \"audio\",\n      \"keyframes\": [\n        {\n          \"url\": \"{{ $json.audio.url }}\",\n          \"timestamp\": 0,\n          \"duration\": 65\n        }\n      ]\n    }\n  ]\n}",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 5000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "sendHeaders": true,
        "rawContentType": "application/json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "9d2de0c8-68c4-4565-bb1d-610cefa5e164",
      "name": "보이스와 영상 가져오기",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        6560,
        -1376
      ],
      "parameters": {
        "url": "=https://queue.fal.run/fal-ai/elevenlabs/\nrequests/{{ $json.request_id }}",
        "options": {},
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "56bce7d8-5783-46de-a18c-6915724223a0",
      "name": "대기10",
      "type": "n8n-nodes-base.wait",
      "position": [
        6272,
        -1376
      ],
      "webhookId": "db3b70cf-1e63-4273-8809-3ea7148d8cc1",
      "parameters": {
        "amount": 280
      },
      "typeVersion": 1.1
    },
    {
      "id": "dbf802be-231d-4a63-a3a6-1f00e79103b5",
      "name": "보이스오버 가져오기",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        6560,
        -1568
      ],
      "parameters": {
        "url": "=https://queue.fal.run/fal-ai/elevenlabs/\nrequests/{{ $json.request_id }}",
        "options": {},
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "0696cd4b-1d73-4ef2-a15e-f0208b9251ad",
      "name": "보이스오버 생성",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        5952,
        -1568
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/elevenlabs/tts/turbo-v2.5",
        "body": "={\n\n\"text\": \"{{ $json.paragraph }}\",\n\n\"voice\": \"nPczCjzI2devNBz1zQrb\",\n\n\"stability\": 0.5,\n\n\"similarity_boost\": 0.75,\n\n\"speed\": 1\n\n}",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 5000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "sendHeaders": true,
        "rawContentType": "application/json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "8fd256af-b26d-4a5c-b6e0-1e199bedfdbf",
      "name": "대기9",
      "type": "n8n-nodes-base.wait",
      "position": [
        6272,
        -1568
      ],
      "webhookId": "db3b70cf-1e63-4273-8809-3ea7148d8cc1",
      "parameters": {
        "amount": 280
      },
      "typeVersion": 1.1
    },
    {
      "id": "7ad22553-871b-47d6-a7fe-fe484849fde0",
      "name": "최종 영상 (가장 긴 버전)",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        5952,
        -1184
      ],
      "parameters": {
        "columns": {
          "value": {
            "idea": "={{ $('Organise idea, caption etc1').first().json.idea }}",
            "production": "done",
            "final_output": "={{ $json.video_url }}"
          },
          "schema": [
            {
              "id": "id",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "id",
              "defaultMatch": true,
              "canBeUsedToMatch": true
            },
            {
              "id": "idea",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "idea",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "caption",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "caption",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "production",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "production",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "environment_prompt",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "environment_prompt",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "final_output",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "final_output",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "string",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "idea"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1bDfwrU6m7UmR9b3pYKRh3tkM9Y-g4CAMo7Q_x1Pbx-k/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1bDfwrU6m7UmR9b3pYKRh3tkM9Y-g4CAMo7Q_x1Pbx-k",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1bDfwrU6m7UmR9b3pYKRh3tkM9Y-g4CAMo7Q_x1Pbx-k/edit?usp=drivesdk",
          "cachedResultName": "Sheet tt auto"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "XkYsv2o76QVVcrwB",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "893d73b8-8c75-41e6-81a7-636cf09b2c7f",
      "name": "‘워크플로 실행’ 클릭 시",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        4928,
        -1776
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "4083ca2c-d18d-45ae-a00a-9f57b48e1792",
      "name": "시간 기반 스크립트 생성",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        4784,
        -1568
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "GPT-4.1"
        },
        "options": {
          "temperature": 0.8
        },
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=You are a highly intelligent Eleven Labs Voiceover Script AI"
            },
            {
              "content": "=Generate exactly twelve segments of documentary-style narration all of these segments must combine seemlessly, each 5 seconds long, as a JSON array. Each element must have keys: start (mm:ss), end (mm:ss), text (8–12 words). No line breaks or extras. \n\nYour goal should be to tell an interesting story based on true facts in a present tense outside perspective. Always start by introducing the thing thats being talked about and make sure it has an engaging hook. And sign off at the end with a call to action, similar to \"If you found this interesting, comment your thoughts below and follow for more.\"\n\nMatch the general idea: Title: {{$('Create New Idea1').first().json.message.content.title}} Idea: {{$('Create New Idea1').first().json.message.content.idea}}.\n\nSCRIPTS SHOULD BE IN 5 SECOND SEGMENTS\n\n"
            },
            {
              "role": "assistant",
              "content": "{\n{\n  \"segments\": [\n    {\n      \"start\": \"0:00\",\n      \"end\": \"0:05\",\n      \"text\": \"This is Europa, Jupiter's fourth-largest moon,\"\n    },\n    {\n      \"start\": \"0:05\",\n      \"end\": \"0:10\",\n      \"text\": \"and the only celestial object in our solar system that might contain alien lifeforms.\"\n    },\n    {\n      \"start\": \"0:10\",\n      \"end\": \"0:15\",\n      \"text\": \"Europa not only has a vast ocean that is five times deeper than the Earth's, even though it's smaller than our Moon,\"\n    },\n    {\n      \"start\": \"0:15\",\n      \"end\": \"0:20\",\n      \"text\": \"but also oxygen, nitrogen, carbon dioxide, and sulfur—gases necessary for life.\"\n    },\n    {\n      \"start\": \"0:20\",\n      \"end\": \"0:25\",\n      \"text\": \"Europa gets its heat from the Sun, and mostly through Jupiter's gravity,\"\n    },\n    {\n      \"start\": \"0:25\",\n      \"end\": \"0:30\",\n      \"text\": \"which stretches and squeezes Europa as it orbits the giant planet.\"\n    },\n    {\n      \"start\": \"0:30\",\n      \"end\": \"0:35\",\n      \"text\": \"This friction warms Europa’s interior, keeping its hidden ocean liquid—just like Earth’s tides.\"\n    },\n    {\n      \"start\": \"0:35\",\n      \"end\": \"0:40\",\n      \"text\": \"However, NASA is launching the Europa Clipper this year to probe beneath the 15-mile-thick ice crust,\"\n    },\n    {\n      \"start\": \"0:40\",\n      \"end\": \"0:45\",\n      \"text\": \"and possibly detect signs of marine life in that vast ocean.\"\n    },\n    {\n      \"start\": \"0:45\",\n      \"end\": \"0:50\",\n      \"text\": \"The more we learn about the cosmos, the more we realize we are not alone.\"\n    },\n    {\n      \"start\": \"0:50\",\n      \"end\": \"0:55\",\n      \"text\": \"The universe is alive—and we are part of its grand story.\"\n    },\n    {\n      \"start\": \"0:55\",\n      \"end\": \"1:00\",\n      \"text\": \"If you found this interesting, comment your thoughts below and follow for more.\"\n    }\n  ]\n}\n"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "836QDsJzdKW2lXHi",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "d9f1dda7-d315-4fc7-92fd-c5864be299be",
      "name": "최종 영상 가져오기",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        5504,
        -960
      ],
      "parameters": {
        "url": "=https://queue.fal.run/fal-ai/ffmpeg-api/requests/{{ $json.request_id }}",
        "options": {},
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "b84cf97a-2c35-4954-ad90-97e93f318d77",
      "name": "최종 영상 생성",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4608,
        -960
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/ffmpeg-api/compose",
        "body": "={\n  \"tracks\": [\n    {\n      \"id\": \"1\",\n      \"type\": \"video\",\n      \"keyframes\": [\n        {\n          \"url\": \"{{ $json.video_urls[0] }}\",\n          \"timestamp\": 0,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[1] }}\",\n          \"timestamp\": 5,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[2] }}\",\n          \"timestamp\": 10,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[3] }}\",\n          \"timestamp\": 15,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[4] }}\",\n          \"timestamp\": 20,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[5] }}\",\n          \"timestamp\": 25,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[6] }}\",\n          \"timestamp\": 30,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[7] }}\",\n          \"timestamp\": 35,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[8] }}\",\n          \"timestamp\": 40,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[9] }}\",\n          \"timestamp\": 45,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[10] }}\",\n          \"timestamp\": 50,\n          \"duration\": 5\n        },\n        {\n          \"url\": \"{{ $json.video_urls[11] }}\",\n          \"timestamp\": 55,\n          \"duration\": 5\n        }\n      ]\n    }\n  ]\n}",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 5000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "sendHeaders": true,
        "rawContentType": "application/json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Key APIKEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "699268b3-8ad2-41fc-b923-eab121d8294a",
      "name": "대기3",
      "type": "n8n-nodes-base.wait",
      "position": [
        5040,
        -960
      ],
      "webhookId": "db3b70cf-1e63-4273-8809-3ea7148d8cc1",
      "parameters": {
        "amount": 200
      },
      "typeVersion": 1.1
    },
    {
      "id": "6129b11e-b5de-42c4-bf37-5d944698b7fc",
      "name": "워크플로 개요",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        5072,
        -2688
      ],
      "parameters": {
        "color": 4,
        "width": 600,
        "height": 450,
        "content": "## 🚀 AI Viral Video Factory - Overview\n\nThis workflow automates the creation of a 60-second, narrated, cinematic video from a single idea.\n\n**1. Ideation & Scripting (OpenAI)**\n* A viral concept, title, and hashtags are generated.\n* A detailed 12-scene script is written to match a 60-second runtime.\n* The full script is converted into a voiceover audio file.\n\n**2. Visual Generation Loop (Fal.ai & OpenAI)**\n* The workflow loops through each of the 12 scenes.\n* For each scene, it generates a photorealistic image using **Fal.ai Flux**.\n* **OpenAI Vision** analyzes the image to create a cinematic animation prompt.\n* The image is animated into a 5-second clip using **Fal.ai Kling**.\n\n**3. Assembly & Finalization (Fal.ai & Google)**\n* All 12 video clips are stitched together into one seamless video using **Fal.ai FFMPEG**.\n* The voiceover audio is merged with the final video.\n* The completed video is uploaded to **Google Drive**."
      },
      "typeVersion": 1
    },
    {
      "id": "d24c5bab-09f6-42bf-833a-2f5e2d645767",
      "name": "중요 설정",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4592,
        -2192
      ],
      "parameters": {
        "color": 5,
        "width": 380,
        "height": 376,
        "content": "## ⚠️ CRITICAL SETUP ⚠️\n\nThis workflow will **FAIL** without the correct credentials.\n\n1.  **Add Credentials in n8n:**\n    * OpenAI API Key\n    * Google Account (for Sheets & Drive)\n    * Fal.ai API Key\n\n2.  **Configure Fal.ai Key in HTTP Nodes:**\n    * You **MUST** manually update all HTTP Request nodes calling `fal.run`.\n    * In each node, go to `Headers` and replace the placeholder `Authorization` value with your own Fal.ai key."
      },
      "typeVersion": 1
    },
    {
      "id": "6f182fa4-a4ef-499d-ae20-b92f16e20122",
      "name": "장면 생성 루프",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        5440,
        -2192
      ],
      "parameters": {
        "color": 3,
        "width": 420,
        "height": 346,
        "content": "## 🎬 The Scene Generation Loop\n\nThis section runs 12 times (once per scene) to create the visuals.\n\n1.  **Image Generation `(Create Images1)`**: Creates a still image from the script's text prompt using **Fal.ai Flux**.\n\n2.  **Animation Prompt `(Video Prompts1)`**: **OpenAI Vision** analyzes the new image and writes a *new* prompt specifically for animating it.\n\n3.  **Image-to-Video `(Create Video1)`**: Animates the still image into a 5-second clip using **Fal.ai Kling** and the new animation prompt."
      },
      "typeVersion": 1
    },
    {
      "id": "469968fa-6fe9-414d-a331-89ae5aab6497",
      "name": "사용자 정의 방법",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        5024,
        -2192
      ],
      "parameters": {
        "color": 6,
        "width": 350,
        "height": 284,
        "content": "## 🔧 How to Customize & Run\n\n**To Run the Workflow:**\n* Click `Execute Workflow` to generate one full video based on the current prompt.\n\n**To Change the Video Topic:**\n1.  Select the **`Create New Idea1`** (OpenAI) node.\n2.  Edit the main prompt inside to change the core theme (e.g., from `\"black holes\"` to `\"ocean life\"` or `\"ancient Rome\"`)."
      },
      "typeVersion": 1
    },
    {
      "id": "1699ce4f-49e3-464f-85c2-ac5435ab568f",
      "name": "Fal.ai API 참조",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        5920,
        -2192
      ],
      "parameters": {
        "width": 360,
        "height": 404,
        "content": "## Fal.ai API Reference\n\nThis workflow uses several Fal.ai models via the HTTP Request node.\n\n* **`fal-ai/flux/schnell`**\n    * *Purpose*: High-speed text-to-image generation.\n\n* **`fal-ai/kling-video`**\n    * *Purpose*: Animates a still image based on a prompt.\n\n* **`fal-ai/ffmpeg-api`**\n    * *Purpose*: Used for video/audio manipulation (`concatenate` to stitch clips, `compose` to add audio)."
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "7a3eb5bd-d354-4b6f-85a2-d18193340c86": {
      "main": [
        [
          {
            "node": "ee58c36c-446a-4116-9a19-a4c241f6cf11",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "699268b3-8ad2-41fc-b923-eab121d8294a": {
      "main": [
        [
          {
            "node": "d9f1dda7-d315-4fc7-92fd-c5864be299be",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8fd256af-b26d-4a5c-b6e0-1e199bedfdbf": {
      "main": [
        [
          {
            "node": "dbf802be-231d-4a63-a3a6-1f00e79103b5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "23f4420e-67bb-4462-92d1-21a71dfe5fb7": {
      "main": [
        [
          {
            "node": "56ac8431-b487-47a9-8155-e12eaa891de2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "56bce7d8-5783-46de-a18c-6915724223a0": {
      "main": [
        [
          {
            "node": "9d2de0c8-68c4-4565-bb1d-610cefa5e164",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "eb52e5fb-1dbe-48e9-9994-007308743296": {
      "main": [
        [
          {
            "node": "8f0801aa-f458-47a6-a362-6ac329a11345",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8f0801aa-f458-47a6-a362-6ac329a11345": {
      "main": [
        [
          {
            "node": "23f4420e-67bb-4462-92d1-21a71dfe5fb7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ee58c36c-446a-4116-9a19-a4c241f6cf11": {
      "main": [
        [
          {
            "node": "23f4420e-67bb-4462-92d1-21a71dfe5fb7",
            "type": "main",
            "index": 1
          },
          {
            "node": "1ac22084-8049-408e-b38a-548c3c294939",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7566a56d-0417-4657-a252-95cc9bbce206": {
      "main": [
        [
          {
            "node": "14df5024-e051-473f-97e4-bf64e717b3e6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "fb67f516-c2f9-4f4d-9405-f71081900cd3": {
      "main": [
        [
          {
            "node": "eb52e5fb-1dbe-48e9-9994-007308743296",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "dbf802be-231d-4a63-a3a6-1f00e79103b5": {
      "main": [
        [
          {
            "node": "788fbc81-cd89-4279-aba3-0f407139b5a1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8b819c5c-3939-4142-9000-f5e49f56c75a": {
      "main": [
        [
          {
            "node": "7a3eb5bd-d354-4b6f-85a2-d18193340c86",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "56ac8431-b487-47a9-8155-e12eaa891de2": {
      "main": [
        [
          {
            "node": "b84cf97a-2c35-4954-ad90-97e93f318d77",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1ac22084-8049-408e-b38a-548c3c294939": {
      "main": [
        [
          {
            "node": "fb67f516-c2f9-4f4d-9405-f71081900cd3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d9f1dda7-d315-4fc7-92fd-c5864be299be": {
      "main": [
        [
          {
            "node": "e0befd74-9b5d-4c1b-91e6-dca10d907db5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "26d4b225-a478-4a7d-835b-b86c10d2cf1a": {
      "main": [
        [
          {
            "node": "ffbac481-add5-42a0-872c-316782beb11b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0696cd4b-1d73-4ef2-a15e-f0208b9251ad": {
      "main": [
        [
          {
            "node": "8fd256af-b26d-4a5c-b6e0-1e199bedfdbf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "dbf9c5dd-f7a3-4d85-8270-eaeacf778ac6": {
      "main": [
        [
          {
            "node": "8b819c5c-3939-4142-9000-f5e49f56c75a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b84cf97a-2c35-4954-ad90-97e93f318d77": {
      "main": [
        [
          {
            "node": "699268b3-8ad2-41fc-b923-eab121d8294a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "10a7f701-feaf-4a96-87e1-0c21d3e7ac50": {
      "main": [
        [
          {
            "node": "dbf9c5dd-f7a3-4d85-8270-eaeacf778ac6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9d2de0c8-68c4-4565-bb1d-610cefa5e164": {
      "main": [
        [
          {
            "node": "7566a56d-0417-4657-a252-95cc9bbce206",
            "type": "main",
            "index": 0
          },
          {
            "node": "7ad22553-871b-47d6-a7fe-fe484849fde0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4083ca2c-d18d-45ae-a00a-9f57b48e1792": {
      "main": [
        [
          {
            "node": "10a7f701-feaf-4a96-87e1-0c21d3e7ac50",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "788fbc81-cd89-4279-aba3-0f407139b5a1": {
      "main": [
        [
          {
            "node": "56bce7d8-5783-46de-a18c-6915724223a0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e0befd74-9b5d-4c1b-91e6-dca10d907db5": {
      "main": [
        [
          {
            "node": "0696cd4b-1d73-4ef2-a15e-f0208b9251ad",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ffbac481-add5-42a0-872c-316782beb11b": {
      "main": [
        [
          {
            "node": "4083ca2c-d18d-45ae-a00a-9f57b48e1792",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "893d73b8-8c75-41e6-81a7-636cf09b2c7f": {
      "main": [
        [
          {
            "node": "26d4b225-a478-4a7d-835b-b86c10d2cf1a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

고급 - 콘텐츠 제작, 멀티모달 AI

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

관련 워크플로우 추천

OpenAI, ElevenLabs 및 Fal.ai를 사용한 비디오, 팟캐스트 및 ASMR용 바이럴 콘텐츠 제작 자동화
OpenAI, ElevenLabs 및 Fal.ai를 사용한 비디오, 팟캐스트 및 ASMR용 바이럴 콘텐츠 제작 자동화
Set
Code
Wait
+
Set
Code
Wait
97 노드Adam Crafts
콘텐츠 제작
OpenAI, ElevenLabs, Hedra를 사용하여 바이러스 성婴儿播客 YouTube短视频 생성
OpenAI, ElevenLabs, Hedra를 사용하여 바이러스성 베이비 블로그 YouTube 짧은 비디오 만들기
Code
Wait
Merge
+
Code
Wait
Merge
38 노드Electrabot
콘텐츠 제작
AI, Hedra와 ElevenLabs를 사용하여 바이러스성 베이비 스타 팟캐스트 생성
AI, Hedra, ElevenLabs를 사용하여 바이러스성婴儿名人播客 생성
Code
Wait
Merge
+
Code
Wait
Merge
35 노드LeeWei
콘텐츠 제작
AI 기반 동영상 제작 및 Instagram, TikTok, YouTube 업로드
클라우드 드라이브 기반 AI 기반 비디오 제작 및 Instagram, TikTok, YouTube 업로드
If
Set
Code
+
If
Set
Code
53 노드DevCode Journey
콘텐츠 제작
💥 NanoBanana, Seedream 4, ChatGPT Image 및 Veo 3를 사용한 동영상 광고 자동화 - VIDE
AI(NanoBanana, Seedream, GPT-4o, Veo 3)를 사용하여 비디오 광고 캠페인 자동화 및 게시
Set
Code
Wait
+
Set
Code
Wait
63 노드Dr. Firas
콘텐츠 제작
批量 SEO 콘텐츠 생성 및 AI 이미지 포함 Webflow 드래그 앤 드롭 생성 (템플릿)
GPT, Gemini 이미지, Webflow 드라フト를 사용하여 대량 SEO 콘텐츠 생성
If
Set
Code
+
If
Set
Code
54 노드Dahiana
콘텐츠 제작
워크플로우 정보
난이도
고급
노드 수39
카테고리2
노드 유형9
난이도 설명

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34