💥 Automatisierung von Videoanzeigen mit NanoBanana, Seedream 4, ChatGPT Image und Veo 3 - VIDE

Experte

Dies ist ein Content Creation, Multimodal AI-Bereich Automatisierungsworkflow mit 63 Nodes. Hauptsächlich werden Set, Code, Wait, Merge, SplitOut und andere Nodes verwendet. Automatisierung und Veröffentlichung von Video-Werbekampagnen mit KI (NanoBanana, Seedream, GPT-4o, Veo 3)

Voraussetzungen
  • Telegram Bot Token
  • Google Drive API-Anmeldedaten
  • Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
  • Google Sheets API-Anmeldedaten
  • OpenAI API Key
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "id": "W9fdydWJuXntSK9c",
  "meta": {
    "instanceId": "a2b23892dd6989fda7c1209b381f5850373a7d2b85609624d7c2b7a092671d44"
  },
  "name": "💥 Automate video ads with NanoBanana, Seedream 4, ChatGPT Image and Veo 3 - VIDE",
  "tags": [],
  "nodes": [
    {
      "id": "172c7316-350a-46a8-a720-f0be6b22cff0",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        560,
        0
      ],
      "parameters": {
        "color": 7,
        "width": 1948,
        "height": 624,
        "content": "# 1️⃣  →  Step 1 — Generate prompts from Telegram input\n## Automate video ads with NanoBanana, Seedream 4, ChatGPT Image and Veo 3 (By Dr. Firas)\n### What problem is this workflow solving? / Use case\nCreating video ads usually requires multiple tools and a lot of time: writing scripts, designing product visuals, editing videos, and publishing them across platforms.  \nThis workflow **automates the entire pipeline** — from idea to ready-to-publish ad video — ensuring brands can quickly test campaigns and boost engagement without production delays."
      },
      "typeVersion": 1
    },
    {
      "id": "b5e1088e-f59b-48c0-bad0-65887aa9e37b",
      "name": "Telegram: Bilddatei abrufen",
      "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": "Trigger: Idee via Telegram empfangen",
      "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: Bild hochladen",
      "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": "Idee in Prompts parsen",
      "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": "Bild-Prompt generieren",
      "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": "Structured Output Parser",
      "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": "Think",
      "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: Bild erstellen",
      "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": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2480,
        656
      ],
      "parameters": {
        "color": 7,
        "width": 1884,
        "height": 432,
        "content": "# 4️⃣  → Step 4 — Merge videos into a final ad"
      },
      "typeVersion": 1
    },
    {
      "id": "c35fcc2f-d3d1-4d83-8efb-6e8cf21d82fa",
      "name": "Merge-Status prüfen",
      "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": "Wait: Merge-Prozess",
      "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": "Finales Video in Google Drive hochladen",
      "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": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        560,
        1120
      ],
      "parameters": {
        "width": 3804,
        "height": 608,
        "content": "# 5️⃣  → Step 5 — Publish the final ad to multiple social platforms with Blotato"
      },
      "typeVersion": 1
    },
    {
      "id": "f6490202-896a-4a21-9689-ed0189da6863",
      "name": "Brand-Einstellungen lesen",
      "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": "Brand-Info extrahieren",
      "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": "Message a model",
      "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": "Anzeigendaten in Google Sheets speichern",
      "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": "Video-URL via Telegram senden",
      "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": "Send a video",
      "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": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2480,
        0
      ],
      "parameters": {
        "color": 3,
        "width": 1884,
        "height": 624,
        "content": "# 2️⃣  → Step 2 — Create product images with : 🌊 Seedream 4.0 +  🍌 NanoBanana + 🤖 ChatGPT image"
      },
      "typeVersion": 1
    },
    {
      "id": "de4624ec-4fd8-4456-97ec-ddcb1d7d476d",
      "name": "KI-Agent: Video-Skript generieren",
      "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": "Video mit VEO3 generieren",
      "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": "Auf VEO3-Rendering warten",
      "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": "Video von VEO3 herunterladen",
      "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": "Prompt formatieren",
      "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": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        560,
        656
      ],
      "parameters": {
        "color": 7,
        "width": 1920,
        "height": 432,
        "content": "# 3️⃣  → Step 3 — Produce video ads with Veo 3"
      },
      "typeVersion": 1
    },
    {
      "id": "e4201ff8-435d-4509-baca-9cf9ba796453",
      "name": "OpenAI Chat Model1",
      "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": "Think1",
      "type": "@n8n/n8n-nodes-langchain.toolThink",
      "position": [
        976,
        960
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "acd37b48-c17d-4f9e-82ed-233b04036eee",
      "name": "Structured Output Parser1",
      "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 prompts",
      "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": "Video auf BLOTATO hochladen",
      "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": "Status auf \"DONE\" aktualisieren",
      "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": "Facebook",
      "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": "Merge1",
      "type": "n8n-nodes-base.merge",
      "position": [
        3936,
        1216
      ],
      "parameters": {
        "mode": "chooseBranch",
        "numberInputs": 9
      },
      "typeVersion": 3.2
    },
    {
      "id": "181c4741-92b4-4884-bffd-c1dbddca2477",
      "name": "Seedream: Bild aus Text generieren",
      "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": "Bild von Seedream herunterladen",
      "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 Bild generieren (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": "Master-Prompt setzen",
      "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 Videos mergen",
      "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": "Loop Over Items - In Batches aufteilen",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        1424,
        784
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "729b59d4-fa07-4fc9-b6cc-64fca41b22ef",
      "name": "Zeile in Sheet aktualisieren",
      "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": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        0
      ],
      "parameters": {
        "width": 528,
        "height": 1728,
        "content": "### 🎥 Watch This Tutorial\n\n@[youtube](E17rYpMRvgA)\n\n### 📥  [Open full documentation on Notion](https://automatisation.notion.site/Automate-video-ads-with-NanoBanana-Seedream-4-ChatGPT-Image-and-Veo-3-27e3d6550fd9800dbe46e6192bae60a9?source=copy_link)\n---\n### 1. Set Up OpenAI Connection\n#### Get Your API Key\n1. Visit the [OpenAI API Keys](https://platform.openai.com/api-keys) page.  \n2. Go to [OpenAI Billing](https://platform.openai.com/settings/organization/billing/overview).  \n3. Add funds to your billing account.  \n4. Copy your API key into your **OpenAI credentials** in n8n (or your chosen platform).  \n\n---\n### 2. Setup\n1. Import this workflow into your n8n instance.  \n2. Connect your Google Sheets, Gmail, and Google Calendar credentials. Tutorial: [Configure Your Google Sheets, Gmail, Calendar Credentials](https://youtu.be/fDzVmdw7bNU)  \n3. Connect Your Data in Google Sheets. Data must follow this format: [Sample Sheets Data](https://docs.google.com/spreadsheets/d/1SpahDHWishtviYiivRlShgIi_vtHUFLvtlxcxuXp1XU/copy)  \n4. Test the workflow using the **Connected Chat Trigger** node to start conversations with the AI Agent.  \n\n---\n### 3. Integrate 🤖 VEO 3 (Kie) into n8n\n1. Sign up or log in to the **Kie (VEO 3)** dashboard.  \n2. Go to **API Keys** → **Create new key** → copy the key (keep it secret).  \n3. Base API URL: `https://api.kie.ai/api/v1/veo/generate`.  \n\n---\n### 4. Integrate 🍌 NanoBanana\n1. Go to the [NanoBanana API](https://fal.ai/models/fal-ai/nano-banana/edit/api).  \n2. Sign in with your **FAL.ai** account.  \n3. Create a new API key and copy it.  \n4. In n8n, create new credentials → **HTTP Header Auth**.  \n5. Add header: `Authorization: Bearer <YOUR_API_KEY>`.  \n\n---\n### 5. Integrate 🌊 Seedream 4.0\n1. Visit the [Seedream API](https://kie.ai/seedream-api).  \n2. Sign in and create an API key from your dashboard.  \n3. Base API endpoint: `https://api.kie.ai/api/v1/seedream/generate`.  \n4. In n8n, add credentials → **HTTP Header Auth** with `Authorization: Bearer <YOUR_API_KEY>`.  \n\n---\n### 6. Integrate 🤖 ChatGPT Image\n1. Visit the [ChatGPT Image API documentation](https://docs.kie.ai/4o-image-api/get-4-o-image-details).  \n2. Log in with your Kie.ai account.  \n3. Generate a new API key.  \n4. Base endpoint: `https://api.kie.ai/api/v1/image/generate`.  \n5. Add this key in n8n under **HTTP Header Auth** → `Authorization: Bearer <YOUR_API_KEY>`.  \n\n---\n### 7. Install the Blotato [Blotato](https://blotato.com/?ref=firas) Node in n8n (Community Nodes)\n1. In n8n, open **Settings → Community Nodes**.  \n2. Click **Install**, then add: `@blotato/n8n-nodes-blotato`.  \n3. Log in to **Blotato**.  \n4. Go to **Settings → API Keys**.  \n5. In n8n → **Credentials → New**.  \n6. Choose **Blotato API** (provided by the community node you installed).  \n\n---\n## 📬 Need Help or Want to Customize This?\n**Contact me for consulting and support:** [LinkedIn](https://www.linkedin.com/in/dr-firas/) / [YouTube](https://www.youtube.com/@DRFIRASS)  \n"
      },
      "typeVersion": 1
    },
    {
      "id": "322f6e01-5427-480c-b781-7e81f0786674",
      "name": "Split out – image_prompt iterieren",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        2528,
        272
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "output.image_prompt"
      },
      "typeVersion": 1
    },
    {
      "id": "9cde12f3-ef41-4e9f-a8cc-7ebc6d5a5666",
      "name": "Wait – NanoBanana-Job",
      "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": "Finale Video-URL aktualisieren",
      "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 – bearbeitetes Bild abrufen",
      "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": "Wait – Bild-Rendering",
      "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 – Bild-URLs speichern",
      "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": "Merge – Bildquellen sammeln (3 Anbieter)",
      "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 – generiertes Bild abrufen",
      "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": "Set – Seedream-Bild-URL auswählen",
      "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": "Wait – Bild-Rendering 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": "Aggregate – 3 Video-URLs sammeln",
      "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": {
    "49ebe3b4-175c-480b-a78b-32a86b772c11": {
      "ai_tool": [
        [
          {
            "node": "5c8efdcc-c697-412e-be62-1f31528075e5",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "77b73727-3d32-41d6-b0ca-03b2ccaca631": {
      "main": [
        [
          {
            "node": "d2401532-aa7b-45b7-9dc4-2d5f51a32599",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bfa98213-7d12-422b-9fa9-e9f8c4e6eb36": {
      "ai_tool": [
        [
          {
            "node": "de4624ec-4fd8-4456-97ec-ddcb1d7d476d",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "035b6c10-43ac-4aea-a2ff-82a3ab0bcfa4": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d039a2f5-5177-4cce-9018-6a37ab54fa19": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 7
          }
        ]
      ]
    },
    "0bc8307e-3f4a-432a-8667-eb998ab55042": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 6
          }
        ]
      ]
    },
    "743afd32-6ebf-4e70-b911-2bbdba7d1ecf": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 5
          }
        ]
      ]
    },
    "0a3810b6-c21f-4077-954b-79aab2e7985e": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "cc3d40a1-1123-4faf-8df9-2ae5448ed53a": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "07dcc2c9-28ee-449a-919d-dbd3dc5196e7": {
      "main": [
        [
          {
            "node": "606e323e-6e32-480e-855f-72baad361c54",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7ec08451-6330-400e-87a2-ab9a2f0706ab": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 3
          }
        ]
      ]
    },
    "a04336f9-f2e6-4fbb-a082-9d232a08aa52": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 8
          }
        ]
      ]
    },
    "fb93e061-c5a9-4dfe-9ca2-ef8a3c6ce9f3": {
      "main": [
        [
          {
            "node": "77b73727-3d32-41d6-b0ca-03b2ccaca631",
            "type": "main",
            "index": 4
          }
        ]
      ]
    },
    "e7452627-f5ea-4083-964b-16832cf53f11": {
      "main": [
        [
          {
            "node": "5364e300-b999-4429-8b99-c1d40f48c28f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bb7a3989-1ffe-46c6-a2e9-4cba9a5fb47f": {
      "main": [
        [
          {
            "node": "0352c6fb-0614-4266-a6a9-78fd88f1e742",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f9e46614-a5d5-4520-9522-8a03674d226d": {
      "main": [
        [
          {
            "node": "37ef1072-100c-469e-a26d-22843dc2f657",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "660b172c-fe62-40ed-84c9-8b0c2aa7739d": {
      "main": [
        [
          {
            "node": "f12ad44b-3078-459d-8a23-b664889cc636",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6c14c0c2-425f-43a4-ac53-9a1110e24aef": {
      "ai_languageModel": [
        [
          {
            "node": "5c8efdcc-c697-412e-be62-1f31528075e5",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "8b6583ec-e141-4314-a83e-23ced0d3d504": {
      "main": [
        [
          {
            "node": "de4624ec-4fd8-4456-97ec-ddcb1d7d476d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c35fcc2f-d3d1-4d83-8efb-6e8cf21d82fa": {
      "main": [
        [
          {
            "node": "55d047f8-bb1c-4b79-ad10-9edb049f5807",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8c3750e4-333e-4900-aa8e-97c6b5ce06b9": {
      "main": [
        [
          {
            "node": "660b172c-fe62-40ed-84c9-8b0c2aa7739d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e4201ff8-435d-4509-baca-9cf9ba796453": {
      "ai_languageModel": [
        [
          {
            "node": "de4624ec-4fd8-4456-97ec-ddcb1d7d476d",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "f6490202-896a-4a21-9689-ed0189da6863": {
      "main": [
        [
          {
            "node": "8c3750e4-333e-4900-aa8e-97c6b5ce06b9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "729b59d4-fa07-4fc9-b6cc-64fca41b22ef": {
      "main": [
        [
          {
            "node": "f9e46614-a5d5-4520-9522-8a03674d226d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "37ef1072-100c-469e-a26d-22843dc2f657": {
      "main": [
        [
          {
            "node": "c7cc7666-4e3c-4c13-b3df-18e6410a445d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5c8efdcc-c697-412e-be62-1f31528075e5": {
      "main": [
        [
          {
            "node": "322f6e01-5427-480c-b781-7e81f0786674",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c7cc7666-4e3c-4c13-b3df-18e6410a445d": {
      "main": [
        [
          {
            "node": "c35fcc2f-d3d1-4d83-8efb-6e8cf21d82fa",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "51fa2428-83e5-469e-9fbd-e6b74e7fdf35": {
      "main": [
        [
          {
            "node": "5c8efdcc-c697-412e-be62-1f31528075e5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5364e300-b999-4429-8b99-c1d40f48c28f": {
      "main": [
        [
          {
            "node": "035b6c10-43ac-4aea-a2ff-82a3ab0bcfa4",
            "type": "main",
            "index": 0
          },
          {
            "node": "cc3d40a1-1123-4faf-8df9-2ae5448ed53a",
            "type": "main",
            "index": 0
          },
          {
            "node": "0a3810b6-c21f-4077-954b-79aab2e7985e",
            "type": "main",
            "index": 0
          },
          {
            "node": "7ec08451-6330-400e-87a2-ab9a2f0706ab",
            "type": "main",
            "index": 0
          },
          {
            "node": "fb93e061-c5a9-4dfe-9ca2-ef8a3c6ce9f3",
            "type": "main",
            "index": 0
          },
          {
            "node": "743afd32-6ebf-4e70-b911-2bbdba7d1ecf",
            "type": "main",
            "index": 0
          },
          {
            "node": "0bc8307e-3f4a-432a-8667-eb998ab55042",
            "type": "main",
            "index": 0
          },
          {
            "node": "d039a2f5-5177-4cce-9018-6a37ab54fa19",
            "type": "main",
            "index": 0
          },
          {
            "node": "a04336f9-f2e6-4fbb-a082-9d232a08aa52",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "006fe9e9-b076-4345-aec4-27fcf1a7f30f": {
      "main": [
        [
          {
            "node": "b5089618-2b8f-4611-a7cf-78ec9e1ed077",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9cde12f3-ef41-4e9f-a8cc-7ebc6d5a5666": {
      "main": [
        [
          {
            "node": "9d6ed0e4-eafc-4569-b774-1a3f62261438",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b5089618-2b8f-4611-a7cf-78ec9e1ed077": {
      "main": [
        [
          {
            "node": "606e323e-6e32-480e-855f-72baad361c54",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0352c6fb-0614-4266-a6a9-78fd88f1e742": {
      "main": [
        [
          {
            "node": "006fe9e9-b076-4345-aec4-27fcf1a7f30f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2b8bb026-a1a0-4f6a-952b-c66458be98ca": {
      "main": [
        [
          {
            "node": "9cde12f3-ef41-4e9f-a8cc-7ebc6d5a5666",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "749d97b2-bdc0-4b0d-a608-3860f8bc19a0": {
      "ai_outputParser": [
        [
          {
            "node": "5c8efdcc-c697-412e-be62-1f31528075e5",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "b5e1088e-f59b-48c0-bad0-65887aa9e37b": {
      "main": [
        [
          {
            "node": "00e2b4cb-7184-4068-a752-df588e48940d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a0c3642a-76fb-4b20-bd3b-4da0d191e5c0": {
      "main": [
        [
          {
            "node": "a2c358bc-ce2d-4f48-a444-8f2f24a3abbe",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "acd37b48-c17d-4f9e-82ed-233b04036eee": {
      "ai_outputParser": [
        [
          {
            "node": "de4624ec-4fd8-4456-97ec-ddcb1d7d476d",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "00e2b4cb-7184-4068-a752-df588e48940d": {
      "main": [
        [
          {
            "node": "51fa2428-83e5-469e-9fbd-e6b74e7fdf35",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f9b4f876-3ce8-4896-9be5-88b76abf7a4b": {
      "main": [
        [
          {
            "node": "e7452627-f5ea-4083-964b-16832cf53f11",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "139b27b1-2000-429e-92eb-cdabfe4b7e04": {
      "main": [
        [
          {
            "node": "cc07a757-53dc-43c1-9ed3-7aecbe501528",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a2c358bc-ce2d-4f48-a444-8f2f24a3abbe": {
      "main": [
        [
          {
            "node": "5e77cd4f-7f23-4559-b4ef-08a8d90cdfcc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f12ad44b-3078-459d-8a23-b664889cc636": {
      "main": [
        [
          {
            "node": "f9b4f876-3ce8-4896-9be5-88b76abf7a4b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "de4624ec-4fd8-4456-97ec-ddcb1d7d476d": {
      "main": [
        [
          {
            "node": "07dcc2c9-28ee-449a-919d-dbd3dc5196e7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b358b4a3-9e47-43f7-a416-c91e75dd85bc": {
      "main": [
        [
          {
            "node": "729b59d4-fa07-4fc9-b6cc-64fca41b22ef",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b8637494-856c-46f2-9d3c-1df9593d02de": {
      "main": [
        [
          {
            "node": "139b27b1-2000-429e-92eb-cdabfe4b7e04",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "24d6658d-0c8d-4e36-8266-12453d89790b": {
      "main": [
        [
          {
            "node": "8b6583ec-e141-4314-a83e-23ced0d3d504",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9d6ed0e4-eafc-4569-b774-1a3f62261438": {
      "main": [
        [
          {
            "node": "f648da56-7695-4d88-9bfd-977c6639fc53",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5e77cd4f-7f23-4559-b4ef-08a8d90cdfcc": {
      "main": [
        [
          {
            "node": "f648da56-7695-4d88-9bfd-977c6639fc53",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "606e323e-6e32-480e-855f-72baad361c54": {
      "main": [
        [
          {
            "node": "b358b4a3-9e47-43f7-a416-c91e75dd85bc",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "bb7a3989-1ffe-46c6-a2e9-4cba9a5fb47f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "322f6e01-5427-480c-b781-7e81f0786674": {
      "main": [
        [
          {
            "node": "2b8bb026-a1a0-4f6a-952b-c66458be98ca",
            "type": "main",
            "index": 0
          },
          {
            "node": "181c4741-92b4-4884-bffd-c1dbddca2477",
            "type": "main",
            "index": 0
          },
          {
            "node": "b8637494-856c-46f2-9d3c-1df9593d02de",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7fd471ae-4ef4-436c-b476-b98cc8848cea": {
      "main": [
        [
          {
            "node": "b5e1088e-f59b-48c0-bad0-65887aa9e37b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "55d047f8-bb1c-4b79-ad10-9edb049f5807": {
      "main": [
        [
          {
            "node": "f6490202-896a-4a21-9689-ed0189da6863",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "181c4741-92b4-4884-bffd-c1dbddca2477": {
      "main": [
        [
          {
            "node": "a0c3642a-76fb-4b20-bd3b-4da0d191e5c0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cc07a757-53dc-43c1-9ed3-7aecbe501528": {
      "main": [
        [
          {
            "node": "f648da56-7695-4d88-9bfd-977c6639fc53",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "f648da56-7695-4d88-9bfd-977c6639fc53": {
      "main": [
        [
          {
            "node": "24d6658d-0c8d-4e36-8266-12453d89790b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Experte - Content-Erstellung, Multimodales KI

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Verwandte Workflows

💥 Generiere AI-Viral-Videos mit NanoBanana und VEO3 und teile sie über Blotato auf Social Media - Video
AI-Virale-Videos mit NanoBanana und VEO3 generieren und über Blotato in sozialen Medien teilen
Set
Code
Wait
+
Set
Code
Wait
47 NodesDr. Firas
Verschiedenes
💥 HeyGen II - Clone Me - From Idea to Launch: GPT-5 Video Automation für YouTube, TikTok und Instagram
Automatisiere die Video-Erstellung mit Spracheingabe durch HeyGen, GPT-5 und Social-Media-Publishing-Automatisierung
If
Set
Wait
+
If
Set
Wait
41 NodesDr. Firas
Content-Erstellung
💥 HeyGen - Von der Idee zur Veröffentlichung: GPT-5-Videoautomatisierung für YouTube, TikTok und Instagram - Video
Mit GPT-5 KI-Virtual-Character-Videos erstellen und auf Social-Media-Plattformen veröffentlichen
If
Set
Wait
+
If
Set
Wait
41 NodesDr. Firas
Content-Erstellung
Automatisierte Erstellung von viralen Inhalten mit OpenAI, ElevenLabs und Fal.ai für Videos, Podcasts und ASMR
Automatisiere die Erstellung viralen Contents für Videos, Podcasts und ASMR mit OpenAI, ElevenLabs und Fal.ai
Set
Code
Wait
+
Set
Code
Wait
97 NodesAdam Crafts
Content-Erstellung
1. Playlist-Details-Einstellungen für Roboter-Kopie
Erstelle KI-generierte YouTube-Musik-Playlists mit Suno, GPT-4, Runway und Creatomate
If
Set
Code
+
If
Set
Code
203 NodesJoseph
Content-Erstellung
Verwenden Sie NanoBanana und Seedance, um virale Werbeanzeigen zu erstellen und diese über upload-post in sozialen Medien zu veröffentlichen VIDE II
Erstellen Sie virale Multimedia-Werbung mit KI: NanoBanana, Seedance und Suno für soziale Medien
If
Set
Code
+
If
Set
Code
45 NodesDr. Firas
Verschiedenes
Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes63
Kategorie2
Node-Typen19
Schwierigkeitsbeschreibung

Für fortgeschrittene Benutzer, komplexe Workflows mit 16+ Nodes

Autor
Dr. Firas

Dr. Firas

@drfiras

Automation 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. 🚀

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34