💥 Créer des publicités virales avec NanoBanana et Seedance, les publier sur les médias sociaux via upload-post VIDE II

Avancé

Ceci est unMiscellaneous, Multimodal AIworkflow d'automatisation du domainecontenant 45 nœuds.Utilise principalement des nœuds comme If, Set, Code, Wait, Telegram. Créer des publicités multimédias virales avec l'IA : NanoBanana, Seedance et Suno pour les médias sociaux

Prérequis
  • Token Bot Telegram
  • Informations d'identification Google Drive API
  • Peut nécessiter les informations d'identification d'authentification de l'API cible
  • Informations d'identification Google Sheets API
  • Clé API OpenAI
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "id": "9Ts6qVznkrvr6G0h",
  "meta": {
    "instanceId": "a2b23892dd6989fda7c1209b381f5850373a7d2b85609624d7c2b7a092671d44",
    "templateCredsSetupCompleted": true
  },
  "name": "💥 Create viral Ads with NanoBanana & Seedance, publish on socials via upload-post VIDE II",
  "tags": [],
  "nodes": [
    {
      "id": "e8ef42d0-825f-43a3-91a3-6f0921f77fcd",
      "name": "Telegram : Obtenir le fichier image",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -768,
        -144
      ],
      "webhookId": "7270a625-b35a-4c3d-824e-e9d98cbe793f",
      "parameters": {
        "fileId": "={{ $json.message.photo[2].file_id }}",
        "resource": "file",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "3mty87fduTdA6SKM",
          "name": "Telegram account 13 - nanobanana II"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "d768709c-4dd1-4698-a653-5aafd58e2126",
      "name": "Google Drive : Téléverser l'image",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -512,
        -144
      ],
      "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": "657506bc-4d83-4b76-938a-eb649601c639",
      "name": "LLM : Analyseur de sortie structurée",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        320,
        192
      ],
      "parameters": {
        "jsonSchemaExample": "{\n\t\"image_prompt\": \"string\"\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "9cf13394-f27b-4c28-9894-695cb705d1be",
      "name": "LLM : OpenAI Chat",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        80,
        192
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-5-mini",
          "cachedResultName": "gpt-5-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "6h3DfVhNPw9I25nO",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "ebaf73ce-731e-4e06-bf55-f15f18e101fe",
      "name": "Générer le prompt d'image",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        144,
        -64
      ],
      "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\n\nInclude optional overlay text in serif font in small font size:\n\"{{ $json.textOverlay }}\"\nCRITICAL: Stack the text in 4 SHORT LINES centered in the middle\nof the image. Each line must be very short to avoid cropping when\nconverted to 9:16. Keep all text in the center 40% of image\nwidth.",
        "options": {
          "systemMessage": "=ROLE: 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": "9d0412cc-55cf-437f-a2aa-87f8a02f52a6",
      "name": "NanoBanana : Créer l'image",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        480,
        -64
      ],
      "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": "38e06e0c-ffd0-42fd-b6bb-1903931d43d1",
      "name": "Attendre l'édition d'image",
      "type": "n8n-nodes-base.wait",
      "position": [
        704,
        -64
      ],
      "webhookId": "f2439e01-c63f-43a3-ae88-4f329a405c37",
      "parameters": {
        "amount": 2
      },
      "typeVersion": 1.1
    },
    {
      "id": "8cb4ec4e-1d1f-4f6b-89d0-4dcb294d85a8",
      "name": "Télécharger l'image éditée",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        704,
        192
      ],
      "parameters": {
        "url": "={{ $json.response_url }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "kNULkYDcOZG3X0be",
          "name": "Fal.ai"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "ea09e08d-f71c-485b-8420-ac045d2827e9",
      "name": "Note adhésive 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1072,
        384
      ],
      "parameters": {
        "width": 1020,
        "height": 320,
        "content": "# 🟢 Step 4 — Generate Product Video with Seedance"
      },
      "typeVersion": 1
    },
    {
      "id": "271188a5-fcd6-43fb-b382-c53e3833213e",
      "name": "Attendre le rendu",
      "type": "n8n-nodes-base.wait",
      "position": [
        -752,
        512
      ],
      "webhookId": "3ec9fd26-3bd2-438e-8918-dc2a179389e3",
      "parameters": {
        "amount": 20
      },
      "typeVersion": 1.1
    },
    {
      "id": "c32d6586-6730-404d-9d82-eb782e32fa12",
      "name": "Télécharger la vidéo depuis Seedance",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -496,
        512
      ],
      "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": "d65291c2-25e3-47a1-a28e-4db5b085befc",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -16,
        384
      ],
      "parameters": {
        "width": 908,
        "height": 320,
        "content": "# 🟢 Step 5 — Generate Background Music with Suno"
      },
      "typeVersion": 1
    },
    {
      "id": "37fa5194-f024-4501-b671-8379328813bd",
      "name": "Note adhésive 5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1072,
        -224
      ],
      "parameters": {
        "width": 1020,
        "height": 288,
        "content": "# 🟢 Step 1 — Input"
      },
      "typeVersion": 1
    },
    {
      "id": "02a0927c-5fc3-48b0-be1c-de72d50ece24",
      "name": "Note adhésive 6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -16,
        -224
      ],
      "parameters": {
        "width": 908,
        "height": 576,
        "content": "# 🟢 Step 2 — Generate Product Image"
      },
      "typeVersion": 1
    },
    {
      "id": "620bd3a5-d7bd-46fc-a955-af7a1fd9e71b",
      "name": "Note adhésive 7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1072,
        80
      ],
      "parameters": {
        "color": 5,
        "width": 1020,
        "height": 272,
        "content": "# 🟢 Step 3 — Publish Product Image on Instagram & X"
      },
      "typeVersion": 1
    },
    {
      "id": "61f952e4-b77f-44fd-9076-effe6e30a5ac",
      "name": "Note adhésive 8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1072,
        736
      ],
      "parameters": {
        "width": 1964,
        "height": 320,
        "content": "# 🟢 Step 6 — Merge Video & Audio into Final Ad"
      },
      "typeVersion": 1
    },
    {
      "id": "68433349-3fce-4a26-9889-d79eb0ff8dec",
      "name": "Note adhésive 9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1072,
        1088
      ],
      "parameters": {
        "color": 5,
        "width": 1964,
        "height": 336,
        "content": "# 🟢 Step 7 — Publish Final Ad on Social Media"
      },
      "typeVersion": 1
    },
    {
      "id": "06b3d1aa-90df-4ca0-ac5e-732cce1a6f3a",
      "name": "Envoyer l'URL vidéo via Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -128,
        1184
      ],
      "webhookId": "d18e9567-ca34-49fe-968b-4c950b75bfed",
      "parameters": {
        "text": "=Url VIDEO : {{ $json['URL FINAL VIDEO'] }}",
        "chatId": "={{ $node[\"Trigger: Receive Idea via Telegram\"].json.message.chat.id }}\n",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "3mty87fduTdA6SKM",
          "name": "Telegram account 13 - nanobanana II"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "54650c76-a045-40a3-8aa1-9e96a2cab303",
      "name": "Envoyer l'aperçu vidéo final",
      "type": "n8n-nodes-base.telegram",
      "position": [
        80,
        1184
      ],
      "webhookId": "fe371505-fc1f-46de-8d03-098e4744617a",
      "parameters": {
        "file": "={{ $('Save Ad Data to Google Sheets').item.json['URL FINAL VIDEO'] }}",
        "chatId": "={{ $json.result.chat.id }}",
        "operation": "sendVideo",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "3mty87fduTdA6SKM",
          "name": "Telegram account 13 - nanobanana II"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "06d8b993-88a7-4c72-bd87-b18afe7de32a",
      "name": "Telegram : Envoyer la notification",
      "type": "n8n-nodes-base.telegram",
      "position": [
        704,
        1184
      ],
      "webhookId": "51d2c6a2-88a2-4879-b81b-b2a6ba9ac710",
      "parameters": {
        "text": "Published",
        "chatId": "={{ $node[\"Trigger: Receive Idea via Telegram\"].json.message.chat.id }}\n",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "3mty87fduTdA6SKM",
          "name": "Telegram account 13 - nanobanana II"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "efc613ab-75d1-4676-8903-ac2f8f4ea428",
      "name": "Déclencheur : Recevoir l'idée via Telegram",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -1008,
        -144
      ],
      "webhookId": "bde5c665-1b60-4fe6-b0a4-b450db8ec705",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "3mty87fduTdA6SKM",
          "name": "Telegram account 13 - nanobanana II"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "3e7bacee-43d5-4612-9126-2c44ab0275e3",
      "name": "Analyser l'idée en prompts",
      "type": "n8n-nodes-base.code",
      "position": [
        -272,
        -144
      ],
      "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],\ntextOverlay: parts[1],\nvideoPrompt: parts[2],\nmusicPrompt: parts[3]\n};\n"
      },
      "typeVersion": 2
    },
    {
      "id": "2ce93a63-78e9-4270-9581-b571d7c84394",
      "name": "Réécrire la légende (TikTok/Instagram)",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -992,
        176
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "GPT-4O"
        },
        "options": {},
        "messages": {
          "values": [
            {
              "content": "=You are rewriting a TikTok video script, caption, and overlay —\nnot inventing a new one. You must follow this format and obey\nthese rules strictly.\n---\n### CONTEXT:\nHere is the content idea to use:{{ $('Parse Idea Into Prompts').item.json.imagePrompt }}\n\nTitle is : {{ $('Parse Idea Into Prompts').item.json.textOverlay }}\n\n\n\nWrite the caption text using the topic.\n\n---\n- MUST be under 200 characters (yes \"Characters\" not wordcount)\nthis is an absolute MUST, no more than 200 characters!!! \n\n### FINAL OUTPUT FORMAT (no markdown formatting):\n\nDO NOT return any explanations. Only return the Caption Text"
            }
          ]
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "6h3DfVhNPw9I25nO",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "05e3c5a5-2bb8-47a5-aa3d-057512ca99e2",
      "name": "Publier l'image sur Instagram + X",
      "type": "n8n-nodes-upload-post.uploadPost",
      "position": [
        -272,
        176
      ],
      "parameters": {
        "user": "DRFIRAS",
        "title": "={{ $('Parse Idea Into Prompts').item.json.textOverlay }}",
        "photos": "={{ $('Download Edited Image').item.json.images[0].url }}",
        "caption": "={{ $json.message.content }}",
        "platform": [
          "instagram",
          "x"
        ]
      },
      "credentials": {
        "uploadPostApi": {
          "id": "tx0iFC5hVeA9z2YP",
          "name": "Upload Post account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "97832793-340b-41ee-ae40-1a1633597ac3",
      "name": "Seedance : Générer une vidéo depuis l'image",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1008,
        512
      ],
      "parameters": {
        "url": "https://api.kie.ai/api/v1/jobs/createTask",
        "body": "={\n  \"model\": \"bytedance/v1-pro-image-to-video\",\n  \"input\": {\n    \"prompt\": \"{{ $('Parse Idea Into Prompts').item.json.videoPrompt }}\",\n    \"image_url\": \"{{ $json.images[0].url }}\",\n    \"resolution\": \"480p\",\n    \"duration\": \"8\",\n    \"aspect_ratio\": \"9:16\",\n    \"camera_fixed\": false,\n    \"seed\": -1,\n    \"enable_safety_checker\": true\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": "2c3a1c91-8adc-4eba-ac10-108776a6276c",
      "name": "Définir : URL vidéo",
      "type": "n8n-nodes-base.set",
      "position": [
        -272,
        512
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "={{\n  JSON.stringify({\n    url_video: (()=>{\n      const o = JSON.parse($json.data.resultJson);\n      return o?.resultObject?.video?.url\n          || o?.resultUrls?.[0]\n          || '';\n    })()\n  })\n}}\n"
      },
      "typeVersion": 3.4
    },
    {
      "id": "ab226033-c1ab-4506-b9cf-2901b08ffb23",
      "name": "Suno : Générer la musique",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        64,
        512
      ],
      "parameters": {
        "url": "https://api.kie.ai/api/v1/generate",
        "body": "={\n  \"model\": \"V3_5\",\n  \"callBackUrl\": \"https://YOUR_DOMAIN.com/api/kie-callback\",\n  \"customMode\": true,\n  \"instrumental\": true,\n  \"input\": {\n    \"prompt\": \"{{ $('Parse Idea Into Prompts').item.json.musicPrompt }}\",\n    \"style\": \"Classical\",\n    \"title\": \"Peaceful Piano Meditation\",\n    \"styleWeight\": 0.65,\n    \"weirdnessConstraint\": 0.65,\n    \"audioWeight\": 0.65\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": "45950718-2989-409c-847d-fda4851b793c",
      "name": "Définir : URL audio",
      "type": "n8n-nodes-base.set",
      "position": [
        704,
        512
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "03eb77a5-6838-408e-9e6e-58242501c238",
              "name": "url_audio",
              "type": "string",
              "value": "={{ $json.data.response.sunoData[0].audioUrl }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "74f7db08-09ce-4590-8d6e-44f3a9e21f47",
      "name": "Télécharger le fichier audio",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        480,
        512
      ],
      "parameters": {
        "url": "https://api.kie.ai/api/v1/generate/record-info",
        "options": {},
        "sendQuery": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "taskId",
              "value": "={{ $json.data.taskId }}"
            }
          ]
        }
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "ho8ZjaYj1SY0icGT",
          "name": "Kie AI"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "a6dac88d-9b62-4808-a22b-8a34c5e9fdf7",
      "name": "Attendre : Rendu audio",
      "type": "n8n-nodes-base.wait",
      "position": [
        256,
        512
      ],
      "webhookId": "26c2098e-9adb-4d89-ab2a-fe03299d8ad2",
      "parameters": {
        "amount": 120
      },
      "typeVersion": 1.1
    },
    {
      "id": "7dd8ac51-6121-4e6e-8d2d-bfef50f35d41",
      "name": "Fusionner audio + vidéo",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1008,
        800
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/ffmpeg-api/merge-audio-video",
        "body": "= {\n    \"video_url\": \"{{ $('Set: Video URL').item.json.url_video }}\",\n    \"audio_url\": \"{{ $json.url_audio }}\",\n    \"start_offset\": 0\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": "41bd5d79-3bdd-4036-a8a8-59a41b2feabb",
      "name": "Attendre : Processus de fusion",
      "type": "n8n-nodes-base.wait",
      "position": [
        -752,
        800
      ],
      "webhookId": "cdc66d12-12f4-460d-86e9-9fe5ec061e38",
      "parameters": {
        "amount": 2
      },
      "typeVersion": 1.1
    },
    {
      "id": "1342bf6a-2f31-4748-b14c-6397423b6e0c",
      "name": "Vérifier l'état de fusion",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -496,
        800
      ],
      "parameters": {
        "url": "={{ $json.status_url }}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "kNULkYDcOZG3X0be",
          "name": "Fal.ai"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e8f55717-0f40-4dc4-80fa-d10749ff252d",
      "name": "Si fusion terminée",
      "type": "n8n-nodes-base.if",
      "position": [
        -272,
        800
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "4532b4f1-bd84-4896-b36b-929e925c80f7",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.status }}",
              "rightValue": "COMPLETED"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "249b72cb-3239-4971-a412-549ff289ffed",
      "name": "Télécharger la vidéo finale",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        480,
        784
      ],
      "parameters": {
        "url": "={{ $json.video.url }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "9e5eb804-fb80-42bf-a799-c3722c002e68",
      "name": "Vérifier l'état de fusion II",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        64,
        784
      ],
      "parameters": {
        "url": "={{$json.response_url}}",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "kNULkYDcOZG3X0be",
          "name": "Fal.ai"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "5731a023-3925-4f52-abe8-7a559438ecb8",
      "name": "Téléverser la vidéo finale sur Google Drive",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        704,
        784
      ],
      "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": "1ff9308c-e41c-4fc2-868a-5e5a88cda8f6",
      "name": "Lire les paramètres de marque",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -1008,
        1184
      ],
      "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": "2073a516-f1e4-4013-ba0d-255d11d89e8f",
      "name": "Extraire les infos de marque",
      "type": "n8n-nodes-base.code",
      "position": [
        -848,
        1184
      ],
      "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": "bff88b3b-cf60-4154-a441-aa35155d8311",
      "name": "Générateur de texte publicitaire (IA)",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -672,
        1184
      ],
      "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": "a365514a-114f-4919-a84f-c921796717dd",
      "name": "Sauvegarder les données pub dans Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -336,
        1184
      ],
      "parameters": {
        "columns": {
          "value": {
            "STATUS": "CREATE",
            "ADS TEXT": "={{ $json.message.content }}",
            "ID IMAGE": "={{ $node[\"Trigger: Receive Idea via Telegram\"].json.message.photo[2].file_unique_id }}\n",
            "URL IMAGE": "={{ $node[\"Download Edited Image\"].json.images[0].url }}\n",
            "URL VIDEO": "={{ $node[\"Set: Video URL\"].json.url_video }}\n",
            "URL FINAL VIDEO": "={{ $node[\"Download Final Video\"].json.video.url }}\n"
          },
          "schema": [
            {
              "id": "ID IMAGE",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "ID IMAGE",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "URL IMAGE",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "URL IMAGE",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "URL VIDEO",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "URL VIDEO",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "URL FINAL VIDEO",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "URL FINAL VIDEO",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "ADS TEXT",
              "type": "string",
              "display": true,
              "removed": false,
              "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": [
            "ID IMAGE"
          ],
          "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.6
    },
    {
      "id": "60791963-3ba2-4ad2-b88a-4047e7d5564f",
      "name": "Publier la vidéo sur les réseaux sociaux (FB, TikTok, YT)",
      "type": "n8n-nodes-upload-post.uploadPost",
      "position": [
        288,
        1184
      ],
      "parameters": {
        "user": "DRFIRAS",
        "title": "={{ $('Parse Idea Into Prompts').first().json.textOverlay }}",
        "video": "={{ $('Upload Final Video to Google Drive').first().json.webContentLink }}",
        "caption": "={{ $('Ads Copywriter Generator (AI)').item.json.message.content }}",
        "platform": [
          "facebook",
          "tiktok",
          "youtube"
        ],
        "operation": "uploadVideo",
        "facebookPageId": "101603614680195",
        "youtubeDescription": "={{ $('Ads Copywriter Generator (AI)').item.json.message.content }}",
        "youtubePrivacyStatus": "private",
        "facebookVideoDescription": "={{ $('Ads Copywriter Generator (AI)').item.json.message.content }}"
      },
      "credentials": {
        "uploadPostApi": {
          "id": "tx0iFC5hVeA9z2YP",
          "name": "Upload Post account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "0de87c01-99eb-4f3c-8b7d-46fedccfa680",
      "name": "Sauvegarder le statut de publication dans Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        496,
        1184
      ],
      "parameters": {
        "columns": {
          "value": {
            "STATUS": "Published",
            "ID IMAGE": "={{ $node[\"Trigger: Receive Idea via Telegram\"].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",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "URL IMAGE",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "URL VIDEO",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "URL VIDEO",
              "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
            },
            {
              "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.6
    },
    {
      "id": "51b8f1ef-971b-4fb1-838f-b394d6e90456",
      "name": "Réfléchir",
      "type": "@n8n/n8n-nodes-langchain.toolThink",
      "position": [
        224,
        192
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "a577cb57-4900-42b1-b1af-03d49d7125d8",
      "name": "Note adhésive 10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1792,
        -224
      ],
      "parameters": {
        "color": 6,
        "width": 700,
        "height": 1652,
        "content": "# 💥 Create Viral Ads with NanoBanana & Seedance — Publish on Socials via Upload-Post (By Dr. Firas)\n\n---\n\n## 🎥 Full Tutorial  \n\n## [Video Tutorial](https://youtu.be/4ec9WDCz9CY)  \n@[youtube](4ec9WDCz9CY)\n\n---\n\n## 📘 Documentation  \nAccédez aux instructions détaillées, guides API, connexions de plateformes et personnalisation du workflow :  \n\n📎 [Open full documentation on Notion](https://automatisation.notion.site/Create-viral-Ads-with-NanoBanana-Seedance-publish-on-socials-via-upload-post-2683d6550fd980ffa23ee340fdb3285e?source=copy_link)\n\n---\n\n## ⚙️ Requirements\n\n1. ✅ **Create an [Upload-Post](https://www.upload-post.com/) account** (Pro plan required for API access)  \n2. 🔑 **Generate your Upload-Post API Key** inside your dashboard (`Settings > API Keys`)  \n3. 📦 **Have n8n installed** (latest version recommended)  \n4. 🧩 **Install the Upload-Post node** in n8n ([integration here](https://n8n.io/integrations/upload-post/))  \n5. 🛠 **Create Upload-Post API credentials** inside your n8n credentials tab  \n6. 📄 **Prepare your video asset** generated with **NanoBanana** + enhanced by **Seedance**  \n7. ☁️ **Ensure video source is accessible** (public Drive, S3, or binary data in n8n)  \n8. 📌 **Follow the official [Upload-Post documentation](https://www.upload-post.com/)** for parameters and setup  \n9. 📊 **Duplicate this Google Sheet template** to log your ads:  \n   [Google Sheets à copier](https://docs.google.com/spreadsheets/d/1TCebBvfgvVJyxYXeOiFVpg0RJGP38CpLKNxcOiRwbfQ/edit?usp=sharing)\n\n---\n\n## 📝 Workflow Steps in n8n\n\n1. **Trigger / Start Node**  \n   Example: new video in Google Drive, or manual execution.  \n\n2. **Content Creation**  \n   - NanoBanana generates the creative (image/video/voice).  \n   - Seedance adds effects, transitions, and ad-style polish.  \n\n3. **Upload-Post Node / HTTP Request**  \n   Configure Upload-Post to send the final video to TikTok, Instagram, YouTube, etc.  \n\n---\n\n### ⚡ Example Configuration (HTTP Request Node)\n\n**Method:** `POST`  \n**URL:** `https://api.upload-post.com/api/upload`  \n**Headers:**  \n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "e9f05d86-a1c9-4a5e-bcf7-df21cb5d3aad",
  "connections": {
    "51b8f1ef-971b-4fb1-838f-b394d6e90456": {
      "ai_tool": [
        [
          {
            "node": "ebaf73ce-731e-4e06-bf55-f15f18e101fe",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "45950718-2989-409c-847d-fda4851b793c": {
      "main": [
        [
          {
            "node": "7dd8ac51-6121-4e6e-8d2d-bfef50f35d41",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2c3a1c91-8adc-4eba-ac10-108776a6276c": {
      "main": [
        [
          {
            "node": "ab226033-c1ab-4506-b9cf-2901b08ffb23",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9cf13394-f27b-4c28-9894-695cb705d1be": {
      "ai_languageModel": [
        [
          {
            "node": "ebaf73ce-731e-4e06-bf55-f15f18e101fe",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "1342bf6a-2f31-4748-b14c-6397423b6e0c": {
      "main": [
        [
          {
            "node": "e8f55717-0f40-4dc4-80fa-d10749ff252d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2073a516-f1e4-4013-ba0d-255d11d89e8f": {
      "main": [
        [
          {
            "node": "bff88b3b-cf60-4154-a441-aa35155d8311",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e8f55717-0f40-4dc4-80fa-d10749ff252d": {
      "main": [
        [
          {
            "node": "9e5eb804-fb80-42bf-a799-c3722c002e68",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "41bd5d79-3bdd-4036-a8a8-59a41b2feabb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "271188a5-fcd6-43fb-b382-c53e3833213e": {
      "main": [
        [
          {
            "node": "c32d6586-6730-404d-9d82-eb782e32fa12",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "74f7db08-09ce-4590-8d6e-44f3a9e21f47": {
      "main": [
        [
          {
            "node": "45950718-2989-409c-847d-fda4851b793c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7dd8ac51-6121-4e6e-8d2d-bfef50f35d41": {
      "main": [
        [
          {
            "node": "41bd5d79-3bdd-4036-a8a8-59a41b2feabb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1ff9308c-e41c-4fc2-868a-5e5a88cda8f6": {
      "main": [
        [
          {
            "node": "2073a516-f1e4-4013-ba0d-255d11d89e8f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "38e06e0c-ffd0-42fd-b6bb-1903931d43d1": {
      "main": [
        [
          {
            "node": "8cb4ec4e-1d1f-4f6b-89d0-4dcb294d85a8",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "41bd5d79-3bdd-4036-a8a8-59a41b2feabb": {
      "main": [
        [
          {
            "node": "1342bf6a-2f31-4748-b14c-6397423b6e0c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "249b72cb-3239-4971-a412-549ff289ffed": {
      "main": [
        [
          {
            "node": "5731a023-3925-4f52-abe8-7a559438ecb8",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ab226033-c1ab-4506-b9cf-2901b08ffb23": {
      "main": [
        [
          {
            "node": "a6dac88d-9b62-4808-a22b-8a34c5e9fdf7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9e5eb804-fb80-42bf-a799-c3722c002e68": {
      "main": [
        [
          {
            "node": "249b72cb-3239-4971-a412-549ff289ffed",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8cb4ec4e-1d1f-4f6b-89d0-4dcb294d85a8": {
      "main": [
        [
          {
            "node": "97832793-340b-41ee-ae40-1a1633597ac3",
            "type": "main",
            "index": 0
          },
          {
            "node": "2ce93a63-78e9-4270-9581-b571d7c84394",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ebaf73ce-731e-4e06-bf55-f15f18e101fe": {
      "main": [
        [
          {
            "node": "9d0412cc-55cf-437f-a2aa-87f8a02f52a6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a6dac88d-9b62-4808-a22b-8a34c5e9fdf7": {
      "main": [
        [
          {
            "node": "74f7db08-09ce-4590-8d6e-44f3a9e21f47",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3e7bacee-43d5-4612-9126-2c44ab0275e3": {
      "main": [
        [
          {
            "node": "ebaf73ce-731e-4e06-bf55-f15f18e101fe",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9d0412cc-55cf-437f-a2aa-87f8a02f52a6": {
      "main": [
        [
          {
            "node": "38e06e0c-ffd0-42fd-b6bb-1903931d43d1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "54650c76-a045-40a3-8aa1-9e96a2cab303": {
      "main": [
        [
          {
            "node": "60791963-3ba2-4ad2-b88a-4047e7d5564f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e8ef42d0-825f-43a3-91a3-6f0921f77fcd": {
      "main": [
        [
          {
            "node": "d768709c-4dd1-4698-a653-5aafd58e2126",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d768709c-4dd1-4698-a653-5aafd58e2126": {
      "main": [
        [
          {
            "node": "3e7bacee-43d5-4612-9126-2c44ab0275e3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "06b3d1aa-90df-4ca0-ac5e-732cce1a6f3a": {
      "main": [
        [
          {
            "node": "54650c76-a045-40a3-8aa1-9e96a2cab303",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c32d6586-6730-404d-9d82-eb782e32fa12": {
      "main": [
        [
          {
            "node": "2c3a1c91-8adc-4eba-ac10-108776a6276c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bff88b3b-cf60-4154-a441-aa35155d8311": {
      "main": [
        [
          {
            "node": "a365514a-114f-4919-a84f-c921796717dd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "657506bc-4d83-4b76-938a-eb649601c639": {
      "ai_outputParser": [
        [
          {
            "node": "ebaf73ce-731e-4e06-bf55-f15f18e101fe",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "a365514a-114f-4919-a84f-c921796717dd": {
      "main": [
        [
          {
            "node": "06b3d1aa-90df-4ca0-ac5e-732cce1a6f3a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2ce93a63-78e9-4270-9581-b571d7c84394": {
      "main": [
        [
          {
            "node": "05e3c5a5-2bb8-47a5-aa3d-057512ca99e2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "efc613ab-75d1-4676-8903-ac2f8f4ea428": {
      "main": [
        [
          {
            "node": "e8ef42d0-825f-43a3-91a3-6f0921f77fcd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5731a023-3925-4f52-abe8-7a559438ecb8": {
      "main": [
        [
          {
            "node": "1ff9308c-e41c-4fc2-868a-5e5a88cda8f6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "97832793-340b-41ee-ae40-1a1633597ac3": {
      "main": [
        [
          {
            "node": "271188a5-fcd6-43fb-b382-c53e3833213e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0de87c01-99eb-4f3c-8b7d-46fedccfa680": {
      "main": [
        [
          {
            "node": "06d8b993-88a7-4c72-bd87-b18afe7de32a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "60791963-3ba2-4ad2-b88a-4047e7d5564f": {
      "main": [
        [
          {
            "node": "0de87c01-99eb-4f3c-8b7d-46fedccfa680",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Avancé - Divers, IA Multimodale

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Workflows recommandés

💥 Générer des vidéos virales IA avec NanoBanana et VEO3, les partager sur les réseaux sociaux avec Blotato - Vidéo
Générez des vidéos virales IA avec NanoBanana et VEO3, et partagez-les sur les réseaux sociaux via Blotato
Set
Code
Wait
+
Set
Code
Wait
47 NœudsDr. Firas
Divers
💥 Automatisation des publicités vidéo avec NanoBanana, Seedream 4, ChatGPT Image et Veo 3 - VIDE
Utiliser l'IA (NanoBanana, Seedream, GPT-4o, Veo 3) pour automatiser et publier des campagnes publicitaires vidéo
Set
Code
Wait
+
Set
Code
Wait
63 NœudsDr. Firas
Création de contenu
💥 HeyGen II - Clone-moi - De l'idée à la publication : Automatisation de vidéos GPT-5 pour YouTube, TikTok et Instagram - Vidéo
Automatiser la création de vidéos à partir d'entrées vocales avec HeyGen, GPT-5 et la publication sociale
If
Set
Wait
+
If
Set
Wait
41 NœudsDr. Firas
Création de contenu
💥 HeyGen - De l'idée à la publication : Automatisation de vidéo GPT-5 pour YouTube, TikTok et Instagram - Vidéo
Générer et publier des vidéos d'avatar IA avec GPT-5 sur les plateformes de médias sociaux
If
Set
Wait
+
If
Set
Wait
41 NœudsDr. Firas
Création de contenu
💥 Créer et publier automatiquement des vidéos virales IA sur 9 plateformes avec VEO3 et Blotato
Générer des vidéos IA avec VEO3 et les distribuer sur plusieurs plateformes via Blotato
Set
Wait
Telegram
+
Set
Wait
Telegram
29 NœudsDr. Firas
Création de contenu
1. Configuration du robot pour les détails de la playlist
Créer des playlists de musique YouTube générées par l'IA avec Suno, GPT-4, Runway et Creatomate
If
Set
Code
+
If
Set
Code
203 NœudsJoseph
Création de contenu
Informations sur le workflow
Niveau de difficulté
Avancé
Nombre de nœuds45
Catégorie2
Types de nœuds16
Description de la difficulté

Adapté aux utilisateurs avancés, avec des workflows complexes contenant 16+ nœuds

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

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34