AutomationFlowsAI & RAG › Ai-powered Youtube Shorts Automation: Create & Publish with Openai & Elevenlabs

Ai-powered Youtube Shorts Automation: Create & Publish with Openai & Elevenlabs

ByJonas Busch @jonasbusch on n8n.io

Digital marketers, content creators, social media managers, and businesses who want to use AI marketing automation for YouTube Shorts without spending hours on production. This AI workflow helps anyone looking to create more short-form video marketing content without needing…

Event trigger★★★★★ complexityAI-powered76 nodesOpenAIHTTP RequestOpenAI ChatTelegram TriggerTelegramOutput Parser StructuredMemory Buffer WindowAgent
AI & RAG Trigger: Event Nodes: 76 Complexity: ★★★★★ AI nodes: yes Added:

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

This workflow follows the Agent → HTTP Request 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
{
  "id": "Kq4o4tyxTr9gTnC9",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "AI-Powered YouTube Shorts Automation: Create & Publish with OpenAI & ElevenLabs",
  "tags": [
    {
      "id": "BWx2NDzRFhBsHTKb",
      "name": "AI",
      "createdAt": "2025-03-14T18:23:58.150Z",
      "updatedAt": "2025-03-14T18:23:58.150Z"
    },
    {
      "id": "wKmj0lewEas67M0s",
      "name": "Marketing",
      "createdAt": "2025-02-19T00:27:35.090Z",
      "updatedAt": "2025-02-19T00:27:35.090Z"
    }
  ],
  "nodes": [
    {
      "id": "54bc0252-2e09-4d64-b109-b335492cf8c9",
      "name": "Ideator \ud83e\udde0",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        3220,
        -340
      ],
      "parameters": {},
      "typeVersion": 1.7
    },
    {
      "id": "27cd155f-b505-4c57-a424-67580515f2d5",
      "name": "Chunk Script",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4060,
        -400
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "8bbe3ada-50bb-4dcf-a4fc-d2d0f0a547a8",
      "name": "Image Prompter \ud83d\udcf7",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        920,
        600
      ],
      "parameters": {},
      "typeVersion": 1.7
    },
    {
      "id": "87f87cc7-a5b2-42b5-a736-7546e72a9795",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        4300,
        -220
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "4a6aed32-8cbd-4a03-a39b-7626a7db389f",
      "name": "Get Final Video",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4240,
        600
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "242dac8b-333b-41fe-b073-51f449c37fa9",
      "name": "Set JSON Variable",
      "type": "n8n-nodes-base.set",
      "position": [
        3580,
        600
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "b3bc7e66-3113-49a6-8628-e53b9991119a",
      "name": "Upload to Cloudinary",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4060,
        -200
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "a3d92c95-5462-49c3-a1c1-df5ffca4c2ff",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1200,
        -260
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "e794782b-4acf-4e10-9514-84be4e77110d",
      "name": "Input Variables",
      "type": "n8n-nodes-base.set",
      "position": [
        2760,
        -480
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "c71845f7-0e34-451f-b2ca-ef728503d1a5",
      "name": "Merge Video Variables",
      "type": "n8n-nodes-base.merge",
      "position": [
        4620,
        620
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "d577b7b8-da74-4e94-b7f7-a83d2544f287",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        520,
        -580
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "dd264420-d6e0-41a8-ae47-c872dc0ebf19",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        580,
        -520
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "a994fd4a-2a5e-4ac2-bedb-b55e34e6fd2a",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1620,
        -640
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "5e6d73c5-e7d8-4bb2-9b8f-1ec3485d5e0d",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1140,
        -320
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "51a59321-f1ae-4ec6-8a31-2ad85eef72cb",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3200,
        -420
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "1e322dd5-e4fc-4dae-aede-547c433214a4",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        900,
        520
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "2e07c78c-484d-4919-8a32-eea0520d9b09",
      "name": "Sticky Note16",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4820,
        560
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d43e5269-44be-4a45-acc8-9592f68d8b5d",
      "name": "Sticky Note19",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        5720,
        440
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "03cc42f4-98be-4e8b-b2fc-c26b6b2cc79c",
      "name": "Sticky Note21",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        5960,
        440
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "e793f7fc-3a05-4cef-a73d-7ac960fee1a0",
      "name": "Sticky Note25",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -160,
        -1060
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "11b1c21c-ecee-47df-be90-e20c7c94406b",
      "name": "Sticky Note26",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -160,
        -860
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "3ff1a006-d4df-4842-ae7c-caca9616f277",
      "name": "Sticky Note17",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        5280,
        720
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "0eef54da-125a-40cd-bdb8-144a3f68f9c8",
      "name": "Sticky Note27",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        5560,
        40
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "5ed08eac-6621-4a11-80c3-d31a1faab677",
      "name": "Sticky Note31",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -160,
        -360
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "f0ea4142-5643-4ccb-8a17-72a296b800e7",
      "name": "Sticky Note32",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3620,
        -780
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "281d2198-ad26-4d38-bcd6-5c0092e17855",
      "name": "Sticky Note29",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -160,
        -580
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "a0cc2ef7-6786-48c6-b09a-8059b1d3deff",
      "name": "Sticky Note24",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        900,
        200
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "e15acf94-1d4c-4d5a-8e19-a8216aa43802",
      "name": "Sticky Note33",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1220,
        200
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "c2fdd24b-0d0c-41ea-a98a-c760fc5b2efe",
      "name": "Sticky Note34",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1860,
        200
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "2bb96727-cb86-4596-9c1f-7c25240f8edc",
      "name": "Sticky Note35",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3700,
        440
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "874fbb13-c1a4-4c9f-8a1d-a30ff2dd8000",
      "name": "Set API Keys",
      "type": "n8n-nodes-base.set",
      "notes": "SET BEFORE STARTING",
      "position": [
        2340,
        -380
      ],
      "parameters": {},
      "notesInFlow": true,
      "typeVersion": 3.4
    },
    {
      "id": "eddc83ef-d265-440b-a5fb-3a8492d51838",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        500,
        -1060
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "e63a1938-c1e5-4922-93a6-46892c8328ed",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3100,
        -1060
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "0ab389df-7203-4a94-8d39-508be1e2f9a5",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        500,
        -40
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "52a54070-5389-4ad4-aabf-b3b980f883fb",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3100,
        -40
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "8c32fe7f-713b-490b-bcea-e3c04b8f0532",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4480,
        -40
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "79d37b9f-c776-480d-a902-bf409dfcda90",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2040,
        -440
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "ab5d0959-4d07-431e-a97e-3818d42b8762",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2700,
        -320
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "6a926b91-b146-4111-9864-fe5fe9e2dcde",
      "name": "Sticky Note36",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3140,
        -780
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "69a5ab38-6b08-4aa4-b09f-5a8df6cbbc06",
      "name": "Sticky Note37",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -820,
        -40
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "bfdbaadb-378d-4333-a4dc-77409416518e",
      "name": "If No Video Idea",
      "type": "n8n-nodes-base.if",
      "position": [
        1460,
        -500
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "46b617c7-c442-41e7-89bb-d2ad9a4a952b",
      "name": "If Message From User",
      "type": "n8n-nodes-base.if",
      "position": [
        800,
        -520
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "bb439785-ad7a-4eea-a3f5-7b9c43daf3fa",
      "name": "Telegram: Approve Idea",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1680,
        -360
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "083f4e7b-c413-44b4-be4c-312b16a50bb6",
      "name": "Telegram: Conversational Response",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1680,
        -580
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "d6d3f514-eb33-48b9-9f59-0289271ea3ca",
      "name": "Structure Model Output",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1500,
        -260
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "dbc3cc57-a749-4c5d-a23e-9dcf6e0fe1e0",
      "name": "Track Conversation Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        1360,
        -260
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "d6a0d169-a688-4e23-9556-e5e3b494b213",
      "name": "Idea Denied",
      "type": "n8n-nodes-base.set",
      "position": [
        920,
        -320
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "df76a617-08f1-441f-bf64-8e8109291410",
      "name": "Telegram: Processing Started",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2100,
        -380
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "346cadaf-fd6a-4d7b-a590-5f9ecca478ee",
      "name": "If All API Keys Set",
      "type": "n8n-nodes-base.if",
      "position": [
        2540,
        -360
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "86ca7938-bf02-4969-9202-d3d8abe03693",
      "name": "Telegram: API Keys Missing",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2760,
        -260
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "59395bf9-5d55-4075-ad99-7a6315ee1a0e",
      "name": "Discuss Ideas \ud83d\udca1",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1100,
        -500
      ],
      "parameters": {},
      "typeVersion": 1.7
    },
    {
      "id": "7aae508d-a7b7-485a-81e4-1b38c69f1f20",
      "name": "Missing API Keys",
      "type": "n8n-nodes-base.stopAndError",
      "position": [
        2940,
        -240
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "61cbabe0-1c7c-415c-8209-c8110465afb2",
      "name": "Script",
      "type": "n8n-nodes-base.set",
      "position": [
        3580,
        -340
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "3582171f-da82-4b59-b99e-b08185b282e7",
      "name": "Convert Script to Audio",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3780,
        -340
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "c58401a3-4221-46a5-8385-8b206c863f9a",
      "name": "Generating Images",
      "type": "n8n-nodes-base.wait",
      "position": [
        1480,
        600
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "39635cbb-4a4f-48d6-930d-ca3f4571b2ff",
      "name": "Generating Videos",
      "type": "n8n-nodes-base.wait",
      "position": [
        2140,
        600
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "c6a87258-2a2a-4cfa-8015-92264dac6e07",
      "name": "Request Images",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1280,
        600
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "19eccce4-c57d-4d82-ab88-67baeaf5d866",
      "name": "Get Images",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1700,
        600
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "0398e3c4-e85c-43dd-8d3a-c66a36fbace1",
      "name": "Request Videos",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1920,
        600
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "f5a64e4c-a574-4be5-9d70-2ebe41f02f36",
      "name": "Get Videos",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2360,
        600
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "e030de72-0591-4aad-b6a8-29387edf0717",
      "name": "Aggregate Prompts",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1200,
        840
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "272a14f5-72d2-42a6-9374-ea2ad86eda39",
      "name": "Aggregate Videos",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        2580,
        600
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "75c301ae-66c7-4948-80c0-0c719781cfec",
      "name": "Generate Render JSON",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3360,
        600
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "6d975638-93da-4e2c-bf2d-9211b34b1e57",
      "name": "Merge Videos and Audio",
      "type": "n8n-nodes-base.merge",
      "position": [
        3140,
        600
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "3da71ba4-4e12-43c3-9936-d91e73f31b18",
      "name": "Send to Creatomate",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3800,
        600
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "921a4842-bf4e-4d5e-adc0-20d88c15e40b",
      "name": "Generating Final Video",
      "type": "n8n-nodes-base.wait",
      "position": [
        4020,
        600
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "0a872efd-f0f0-4c8d-aa51-5791dbcbad5a",
      "name": "Telegram: Approve Final Video",
      "type": "n8n-nodes-base.telegram",
      "position": [
        4880,
        620
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "dcba8ace-654d-41c4-9722-f2e7bbad32b9",
      "name": "If Final Video Approved",
      "type": "n8n-nodes-base.if",
      "position": [
        5100,
        620
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "e0680bbe-99d3-42a9-930a-a9b8da39df41",
      "name": "If Idea Approved",
      "type": "n8n-nodes-base.if",
      "position": [
        1880,
        -300
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "15b3f1fb-1695-4a0c-910d-edf35cb2c49c",
      "name": "Telegram: Video Declined",
      "type": "n8n-nodes-base.telegram",
      "position": [
        5340,
        780
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "da579f73-c462-421b-b891-6d65996093e5",
      "name": "Decode Base64 to File",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        5560,
        500
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "e8721454-3f6a-4953-bf25-093a3f47f6c9",
      "name": "Convert Video to Base64",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        5340,
        500
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "3319985b-7aee-44ea-b3d7-0bb4578e0a9b",
      "name": "Upload to YouTube",
      "type": "n8n-nodes-base.youTube",
      "position": [
        5780,
        500
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "95e49656-2405-4e03-abac-51bd487084bd",
      "name": "Telegram: Video Uploaded",
      "type": "n8n-nodes-base.telegram",
      "position": [
        6020,
        500
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "e3793ce0-a7c5-4bdb-b496-43fef2599080",
      "name": "Sticky Note18",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -820,
        -1200
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "b2adccd6-82e3-4d54-bebc-67166aca2e50",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2280,
        -440
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "5cb0d4c8-c40e-422c-9138-bdefda60deb8",
  "connections": {
    "Script": {
      "main": [
        [
          {
            "node": "Convert Script to Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "Image Prompter \ud83d\udcf7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Images": {
      "main": [
        [
          {
            "node": "Request Videos",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Videos": {
      "main": [
        [
          {
            "node": "Aggregate Videos",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Idea Denied": {
      "main": [
        [
          {
            "node": "Discuss Ideas \ud83d\udca1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Chunk Script": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Ideator \ud83e\udde0": {
      "main": [
        [
          {
            "node": "Script",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set API Keys": {
      "main": [
        [
          {
            "node": "If All API Keys Set",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Request Images": {
      "main": [
        [
          {
            "node": "Generating Images",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Request Videos": {
      "main": [
        [
          {
            "node": "Generating Videos",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Final Video": {
      "main": [
        [
          {
            "node": "Merge Video Variables",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Input Variables": {
      "main": [
        [
          {
            "node": "Ideator \ud83e\udde0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate Videos": {
      "main": [
        [
          {
            "node": "Merge Videos and Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Idea Approved": {
      "main": [
        [
          {
            "node": "Telegram: Processing Started",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Idea Denied",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If No Video Idea": {
      "main": [
        [
          {
            "node": "Telegram: Conversational Response",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Telegram: Approve Idea",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "If Message From User",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate Prompts": {
      "main": [
        [
          {
            "node": "Merge Video Variables",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Generating Images": {
      "main": [
        [
          {
            "node": "Get Images",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generating Videos": {
      "main": [
        [
          {
            "node": "Get Videos",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Discuss Ideas \ud83d\udca1",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Set JSON Variable": {
      "main": [
        [
          {
            "node": "Send to Creatomate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to YouTube": {
      "main": [
        [
          {
            "node": "Telegram: Video Uploaded",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Discuss Ideas \ud83d\udca1": {
      "main": [
        [
          {
            "node": "If No Video Idea",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send to Creatomate": {
      "main": [
        [
          {
            "node": "Generating Final Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If All API Keys Set": {
      "main": [
        [
          {
            "node": "Input Variables",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Telegram: API Keys Missing",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Image Prompter \ud83d\udcf7": {
      "main": [
        [
          {
            "node": "Aggregate Prompts",
            "type": "main",
            "index": 0
          },
          {
            "node": "Request Images",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Render JSON": {
      "main": [
        [
          {
            "node": "Set JSON Variable",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Message From User": {
      "main": [
        [
          {
            "node": "Discuss Ideas \ud83d\udca1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to Cloudinary": {
      "main": [
        [
          {
            "node": "Merge Videos and Audio",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Decode Base64 to File": {
      "main": [
        [
          {
            "node": "Upload to YouTube",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge Video Variables": {
      "main": [
        [
          {
            "node": "Telegram: Approve Final Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generating Final Video": {
      "main": [
        [
          {
            "node": "Get Final Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge Videos and Audio": {
      "main": [
        [
          {
            "node": "Generate Render JSON",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structure Model Output": {
      "ai_outputParser": [
        [
          {
            "node": "Discuss Ideas \ud83d\udca1",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Telegram: Approve Idea": {
      "main": [
        [
          {
            "node": "If Idea Approved",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert Script to Audio": {
      "main": [
        [
          {
            "node": "Chunk Script",
            "type": "main",
            "index": 0
          },
          {
            "node": "Upload to Cloudinary",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert Video to Base64": {
      "main": [
        [
          {
            "node": "Decode Base64 to File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Final Video Approved": {
      "main": [
        [
          {
            "node": "Convert Video to Base64",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Telegram: Video Declined",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Track Conversation Memory": {
      "ai_memory": [
        [
          {
            "node": "Discuss Ideas \ud83d\udca1",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Telegram: API Keys Missing": {
      "main": [
        [
          {
            "node": "Missing API Keys",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram: Processing Started": {
      "main": [
        [
          {
            "node": "Set API Keys",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram: Approve Final Video": {
      "main": [
        [
          {
            "node": "If Final Video Approved",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

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

How this works

Marketers and content creators use this workflow to generate and publish YouTube Shorts automatically, turning a topic into a finished short-form video without manual scripting or editing. It starts by using OpenAI to create a script and visual prompts, then calls external services to assemble the video before uploading the finished clip to Cloudinary. The process removes hours of repetitive production work and keeps a steady flow of short marketing content.

Use it when you need regular Shorts output on a set schedule or for multiple topics at once. Skip it if your brand requires tight creative control or highly custom visuals that AI cannot deliver reliably. A common variation replaces the final upload step with a direct post to YouTube or another platform.

About this workflow

Digital marketers, content creators, social media managers, and businesses who want to use AI marketing automation for YouTube Shorts without spending hours on production. This AI workflow helps anyone looking to create more short-form video marketing content without needing…

Source: https://n8n.io/workflows/3553/ — 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

Generate AI viral videos with NanoBanana & VEO3, shared on socials via Blotato 2. Uses @blotato/n8n-nodes-blotato, googleSheets, lmChatOpenAi, toolThink. Event-driven trigger; 94 nodes.

@Blotato/N8N Nodes Blotato, Google Sheets, OpenAI Chat +9
AI & RAG

RAG CHATBOT Main. Uses telegram, telegramTrigger, lmChatOpenAi, n8n-nodes-mcp. Event-driven trigger; 87 nodes.

Telegram, Telegram Trigger, OpenAI Chat +8
AI & RAG

How it Works

Memory Buffer Window, Agent, Output Parser Structured +9
AI & RAG

Transform your salon/service business with this streamlined Telegram automation system featuring Claude integration, zero-setup database management, and intelligent conversation handling. Claude MCP I

Redis, Agent Tool, Google Calendar +10
AI & RAG

Jarvis is a powerful multi-agent productivity assistant built in n8n. It works directly from Telegram and can understand both text messages and voice notes.

Telegram Trigger, Telegram, OpenAI +10