AutomationFlowsAI & RAG › Create & Publish Affiliate Product Videos with Sora-2, Gpt & Youtube

Create & Publish Affiliate Product Videos with Sora-2, Gpt & Youtube

ByAmjid Ali @amjid on n8n.io

Turn your affiliate links or product catalog into a 24/7 AI video marketing machine. This n8n workflow auto-creates human-presenter promo videos using AI and publishes them directly to YouTube with SEO — completely hands-free. ✅

Cron / scheduled trigger★★★★★ complexityAI-powered34 nodesGoogle SheetsOpenAI ChatHTTP RequestAgentYouTubeOutput Parser StructuredTelegram
AI & RAG Trigger: Cron / scheduled Nodes: 34 Complexity: ★★★★★ AI nodes: yes Added:

This workflow corresponds to n8n.io template #10372 — we link there as the canonical source.

This workflow follows the Agent → Google Sheets recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "31bc03f8-da7d-4a1d-8acc-222ac1963e08",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        800,
        112
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d47233d2-7e94-4292-b2e6-b700fcb3f662",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -192,
        992
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "ffa0d0e8-9cdd-45df-9439-ee4c95b6c22c",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -208,
        -16
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "30848600-9243-4a47-8206-597495209bbf",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        912,
        416
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "f4354ce4-b32f-4d8b-ac51-813f9360ad02",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -208,
        96
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "f3910037-8646-4522-9bc1-f782398d1fb2",
      "name": "Get row(s) in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1152,
        416
      ],
      "parameters": {},
      "typeVersion": 4.6
    },
    {
      "id": "96211aa6-27be-4a08-8a92-77c3c4e8a81f",
      "name": "Limit",
      "type": "n8n-nodes-base.limit",
      "position": [
        2352,
        416
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "7e425fb9-4fed-468a-8ba6-e676c2f78ee5",
      "name": "OpenAI Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        48,
        1584
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "e0a20a5f-e41d-4001-b6ee-63dbe31b8436",
      "name": "Get Product Details",
      "type": "n8n-nodes-base.set",
      "position": [
        1792,
        416
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "fd2d4269-8bd3-4290-a756-a29d7d09a1d2",
      "name": "Partnership Active and Not Published",
      "type": "n8n-nodes-base.filter",
      "position": [
        1392,
        416
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "41469cc5-967d-4048-bba0-2b560b56f9d0",
      "name": "Get Product Details from Website",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueErrorOutput",
      "position": [
        992,
        704
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "7fc74493-f03a-4e73-8437-9edeb4eed6fa",
      "name": "Parse Product Data",
      "type": "n8n-nodes-base.code",
      "position": [
        2384,
        704
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "f0c90a16-876c-4d26-8046-7e4af25cbe2c",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        1504,
        656
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "d070dc1d-1bb4-4276-ad06-f3135054b2a2",
      "name": "Update about Error",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1280,
        752
      ],
      "parameters": {},
      "typeVersion": 4.7
    },
    {
      "id": "9183c459-cbbe-4d4a-bceb-16b13c27230f",
      "name": "Sora2 Prompt Generator",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        96,
        1360
      ],
      "parameters": {},
      "typeVersion": 1.8
    },
    {
      "id": "d1a5d4bf-49ee-4df8-8971-dd7774d166e2",
      "name": "Text to Video2",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        848,
        1360
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "ea0fe3d2-8950-4a1e-814b-56339136d9ea",
      "name": "Wait4",
      "type": "n8n-nodes-base.wait",
      "position": [
        1136,
        1360
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "dc03699b-cbe6-4ee0-88e1-29f21759a346",
      "name": "Get Video4",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1376,
        1360
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "a7313c2f-2049-43c6-9e6f-c2861d841f34",
      "name": "If4",
      "type": "n8n-nodes-base.if",
      "position": [
        1440,
        1584
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "817e8ed0-b350-4c55-8ad6-950f9e9186dd",
      "name": "Download Video",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1872,
        1488
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "dd5182dd-6285-456b-a38a-28bcb83442db",
      "name": "Upload a video",
      "type": "n8n-nodes-base.youTube",
      "position": [
        2416,
        1680
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "b84508e4-50b8-44f3-a611-5fad320d686e",
      "name": "Update Youtube Meta Data",
      "type": "n8n-nodes-base.youTube",
      "position": [
        1856,
        2720
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "b2b25b35-3425-4984-85cf-eb2981cbea0a",
      "name": "Update row in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2304,
        2736
      ],
      "parameters": {},
      "typeVersion": 4.6
    },
    {
      "id": "af5ea8d8-8067-4709-90f0-22456f3feb26",
      "name": "AI Agent for Meta Data of Youtube",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1040,
        2672
      ],
      "parameters": {},
      "typeVersion": 1.8
    },
    {
      "id": "92180066-e80c-430b-981d-1bd2e3311ffc",
      "name": "Get Video",
      "type": "n8n-nodes-base.set",
      "position": [
        1664,
        1488
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "2d608042-b231-463f-901a-2f40207e5dac",
      "name": "Structured Output Parser1",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1264,
        2912
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "d15f730b-983f-4ebd-89bc-5003996cda0c",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        848,
        2912
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "ebc0e7ed-2cb5-49aa-9535-8fc87d31055a",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        688,
        1920
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "7b627e39-5507-4526-94a8-15983ad62bad",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -176,
        1936
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d17600c6-2776-4ca6-89f1-2748960de15f",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1696,
        1936
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "21071d9b-7836-43c4-99d1-23c95453e0f8",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        704,
        1008
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "c465c615-6a6a-4fdc-aa08-db9d033c8b8b",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2112,
        1008
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "b650d75e-4a53-4e61-973b-aabadfb13bf5",
      "name": "Send message and wait for response",
      "type": "n8n-nodes-base.telegram",
      "position": [
        160,
        2688
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "3f70e2c6-a199-438c-b7d1-48cc2ec7fb85",
      "name": "Wait",
      "type": "n8n-nodes-base.wait",
      "position": [
        -320,
        2704
      ],
      "parameters": {},
      "typeVersion": 1.1
    }
  ],
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Parse Product Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If4": {
      "main": [
        [
          {
            "node": "Get Video",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait": {
      "main": [
        [
          {
            "node": "Send message and wait for response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Limit": {
      "main": [
        [
          {
            "node": "Get Product Details from Website",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait4": {
      "main": [
        [
          {
            "node": "Get Video4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Video": {
      "main": [
        [
          {
            "node": "Download Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Video4": {
      "main": [
        [
          {
            "node": "If4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Video": {
      "main": [
        [
          {
            "node": "Upload a video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Text to Video2": {
      "main": [
        [
          {
            "node": "Wait4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload a video": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Get row(s) in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent for Meta Data of Youtube",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Sora2 Prompt Generator",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Parse Product Data": {
      "main": [
        [
          {
            "node": "Sora2 Prompt Generator",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Product Details": {
      "main": [
        [
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet": {
      "main": [
        [
          {
            "node": "Partnership Active and Not Published",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Sora2 Prompt Generator": {
      "main": [
        [
          {
            "node": "Text to Video2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update Youtube Meta Data": {
      "main": [
        [
          {
            "node": "Update row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser1": {
      "ai_outputParser": [
        [
          {
            "node": "AI Agent for Meta Data of Youtube",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Get Product Details from Website": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Update about Error",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent for Meta Data of Youtube": {
      "main": [
        [
          {
            "node": "Update Youtube Meta Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send message and wait for response": {
      "main": [
        [
          {
            "node": "AI Agent for Meta Data of Youtube",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Partnership Active and Not Published": {
      "main": [
        [
          {
            "node": "Get Product Details",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Turn your affiliate links or product catalog into a 24/7 AI video marketing machine. This n8n workflow auto-creates human-presenter promo videos using AI and publishes them directly to YouTube with SEO — completely hands-free. ✅

Source: https://n8n.io/workflows/10372/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

This n8n automation workflow automates the creation, scripting, production, and posting of YouTube videos. It leverages AI (OpenAI), image generation (PIAPI), video rendering (Shotstack), and platform

Agent, OpenAI Chat, Airtable Tool +7
AI & RAG

This n8n template streamlines the creation of high-quality, faceless videos, automating the entire process from scriptwriting to final video production. Leveraging AI tools like Leonardo AI and Creato

YouTube, HTTP Request, Agent +3
AI & RAG

This n8n workflow is designed for content creators, digital marketers, and social media managers who want to automate their entire content creation and publishing process across multiple platforms. It

Google Sheets, WordPress, Edit Image +13
AI & RAG

Automate the entire YouTube content creation pipeline — from video idea to AI-generated avatar video, upload, metadata generation, and publishing — with zero manual intervention!

Output Parser Structured, HTTP Request, OpenAI Chat +4
AI & RAG

//ASMR AI Workflow

HTTP Request, Tool Think, OpenAI Chat +6