{
  "name": "Generate & auto-post social videos to multiple platforms with GPT-4 and Kling AI",
  "nodes": [
    {
      "id": "c8cbe0d7-50d5-44a8-9552-ef2531f324d2",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        -280
      ],
      "parameters": {
        "width": 2640,
        "height": 420,
        "content": "# 🟫 STEP 1 — Create Video Using AI\n## This step handles the full video creation pipeline using AI.\n### It starts from a Telegram message containing a prompt, \n### refines the prompt with GPT-4 to suit"
      }
    },
    {
      "id": "127b9d89-c7ef-4dfc-8431-3da68ce098a8",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        180
      ],
      "parameters": {
        "width": 2640,
        "height": 260,
        "content": "# 🟫 STEP 2 — Add Voice-Over to Video\n## Here, a short-form voice-over script is generated using GPT-4 based on the topic.\n### The script is converted to speech, uploaded, and merged with the AI-genera"
      }
    },
    {
      "id": "f2406554-ea6c-4664-aa2a-562dc2bc5b39",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        1080
      ],
      "parameters": {
        "width": 2640,
        "height": 540,
        "content": "# 🟥 STEP 5 — Auto-Publish to 9 Social Platforms\n## The final step automates distribution using Blotato’s API.\n## The video is auto-published to Instagram, YouTube, TikTok, Facebook, \n## LinkedIn, Thre"
      }
    },
    {
      "id": "ceb59771-dd83-40f8-bbda-872ca5d81000",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        780
      ],
      "parameters": {
        "width": 2640,
        "height": 260,
        "content": "# 🟫 STEP 4 — Save Video & Notify via Telegram\n## This step generates a title and caption for the video, \n## saves the content metadata to a Google Sheet for future tracking, \n### And sends both the fi"
      }
    },
    {
      "id": "f837f9d4-e072-44e2-813a-16c18e05ecb8",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        480
      ],
      "parameters": {
        "width": 2640,
        "height": 260,
        "content": "# 🟫 STEP 3 — Add Captions to Enhance Engagement\n## To increase accessibility and boost social engagement, \n## this step overlays professional-looking subtitles on the video using a styling template.\n#"
      }
    },
    {
      "id": "5f13f1cd-b16b-4427-965e-91e2343213d0",
      "name": "Trigger: Telegram Prompt",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -180,
        -160
      ]
    },
    {
      "id": "64b2ff19-595e-434f-a71d-70be7c1a9a1d",
      "name": "Extract Prompt & Caption",
      "type": "n8n-nodes-base.code",
      "position": [
        140,
        -160
      ]
    },
    {
      "id": "d52f9138-df37-477b-b86b-7a1dd1cb2e7e",
      "name": "Transform Prompt for Kling (GPT-4)",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        480,
        -160
      ]
    },
    {
      "id": "afac6532-4683-4515-9464-faf44bbfc470",
      "name": "OpenAI Model Bridge",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        500,
        0
      ]
    },
    {
      "id": "388c97e3-6c00-4a35-9ee9-85b7db71d221",
      "name": "Generate Video via Kling API",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        940,
        -160
      ]
    },
    {
      "id": "a6a6c4bf-a382-4a53-bec9-8291f09c9679",
      "name": "Wait for Video Generation",
      "type": "n8n-nodes-base.wait",
      "position": [
        1240,
        -160
      ]
    },
    {
      "id": "07c6e882-131d-4547-9bf7-51b6df8b5527",
      "name": "Get Generated Video URL",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1520,
        -160
      ]
    },
    {
      "id": "53c76bb9-eadc-4e9e-886a-acb3f14e9b50",
      "name": "Generate Voice-Over Script",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        140,
        200
      ]
    },
    {
      "id": "8993c2b5-bf34-4ce3-80e0-9a0b1bdc8569",
      "name": "Convert Script to Audio (TTS)",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        500,
        200
      ]
    },
    {
      "id": "e17a25fd-704a-4c1e-9a43-e3fe84ec2d73",
      "name": "Upload Audio to Cloudinary",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        700,
        200
      ]
    },
    {
      "id": "12c785d5-fab8-41cb-9387-3d5f698448b8",
      "name": "Merge Audio + Video",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        940,
        200
      ]
    },
    {
      "id": "7fdfd093-3cb4-47cf-a333-c17ebd896295",
      "name": "Wait for Audio/Video Fusion",
      "type": "n8n-nodes-base.wait",
      "position": [
        1240,
        200
      ]
    },
    {
      "id": "bacce3e0-547e-45e5-ae4b-127f1e8c3c0d",
      "name": "Get Video URL with Audio",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1520,
        200
      ]
    },
    {
      "id": "1bcfd35d-f746-40b6-9caf-0bd86c47b57e",
      "name": "Wait Before Captioning",
      "type": "n8n-nodes-base.wait",
      "position": [
        700,
        500
      ]
    },
    {
      "id": "7fb36e35-5d96-4fce-9a7d-e3dc5801b838",
      "name": "Add Captions/Subtitles to Video",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        940,
        500
      ]
    },
    {
      "id": "116ec15c-c611-4fba-ab61-5090d777827e",
      "name": "Wait for Caption Render",
      "type": "n8n-nodes-base.wait",
      "position": [
        1240,
        500
      ]
    },
    {
      "id": "05ea1d12-50d3-48cf-8b2a-416bcb3dd7a7",
      "name": "Get Final Video URL (Audio + Captions)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1520,
        500
      ]
    },
    {
      "id": "466e2c7c-f50b-4fd8-a862-d2cecb255579",
      "name": "Generate Social Caption from Voiceover",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        160,
        840
      ]
    },
    {
      "id": "6591e8e3-db92-4725-ab78-24cbfaf8bebd",
      "name": "Generate YouTube-Style Title",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        560,
        840
      ]
    },
    {
      "id": "6b32d227-6d63-409f-ad17-0d24ea5dd2e1",
      "name": "Save Video Metadata to Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        940,
        840
      ]
    },
    {
      "id": "6ff5ebe5-b95d-4977-947e-5fce267dd73d",
      "name": "Send Final Video to Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1240,
        840
      ]
    },
    {
      "id": "1886cd48-2486-4507-882e-0b0eb602a78e",
      "name": "Send Caption Link via Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1520,
        840
      ]
    },
    {
      "id": "570303c5-190c-450c-8fb7-1a33f3bfaa7a",
      "name": "Assign Social Media IDs",
      "type": "n8n-nodes-base.set",
      "position": [
        160,
        1300
      ]
    },
    {
      "id": "5ee6edcf-936d-42ba-bb28-7c02ea28b7ee",
      "name": "Upload Video to Blotato",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        380,
        1300
      ]
    },
    {
      "id": "b9eb6f28-d2d3-40f7-98aa-e00db4ede869",
      "name": "Post to Instagram",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        940,
        1120
      ]
    },
    {
      "id": "b379365c-832a-422c-b42d-6a6ed5dc90d5",
      "name": "Post to YouTube",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1240,
        1120
      ]
    },
    {
      "id": "859b0b81-2b92-47b7-8858-e748b92f1091",
      "name": "Post to TikTok",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1520,
        1120
      ]
    },
    {
      "id": "bd94c7cb-a9f9-44e2-94e0-e717e8dd2534",
      "name": "Post to Facebook Page",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        940,
        1300
      ]
    },
    {
      "id": "b13a95eb-998e-445a-a27c-0a474d95bf2b",
      "name": "Post to Threads",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1240,
        1300
      ]
    },
    {
      "id": "d8a0f1a1-3938-493e-8178-e86829571502",
      "name": "Post to Twitter (X)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1520,
        1300
      ]
    },
    {
      "id": "dd0e8c1d-b4dc-4f11-ac75-580ff7aa8fec",
      "name": "Post to LinkedIn",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        940,
        1460
      ]
    },
    {
      "id": "a404095d-47b7-464b-82b1-cbc732e6a0a5",
      "name": "Post to Bluesky",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1240,
        1460
      ]
    },
    {
      "id": "a23845dc-e81d-4eab-817d-d1d8b480e386",
      "name": "Post to Pinterest",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1520,
        1460
      ]
    }
  ],
  "connections": {
    "Post to Bluesky": {
      "main": [
        []
      ]
    },
    "Post to Threads": {
      "main": [
        []
      ]
    },
    "Post to YouTube": {
      "main": [
        []
      ]
    },
    "Post to LinkedIn": {
      "main": [
        []
      ]
    },
    "Post to Instagram": {
      "main": [
        []
      ]
    },
    "Merge Audio + Video": {
      "main": [
        [
          {
            "node": "Wait for Audio/Video Fusion",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Model Bridge": {
      "ai_languageModel": [
        [
          {
            "node": "Transform Prompt for Kling (GPT-4)",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Post to Facebook Page": {
      "main": [
        []
      ]
    },
    "Wait Before Captioning": {
      "main": [
        [
          {
            "node": "Add Captions/Subtitles to Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Assign Social Media IDs": {
      "main": [
        [
          {
            "node": "Upload Video to Blotato",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Generated Video URL": {
      "main": [
        [
          {
            "node": "Generate Voice-Over Script",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload Video to Blotato": {
      "main": [
        [
          {
            "node": "Post to Instagram",
            "type": "main",
            "index": 0
          },
          {
            "node": "Post to YouTube",
            "type": "main",
            "index": 0
          },
          {
            "node": "Post to TikTok",
            "type": "main",
            "index": 0
          },
          {
            "node": "Post to Facebook Page",
            "type": "main",
            "index": 0
          },
          {
            "node": "Post to Threads",
            "type": "main",
            "index": 0
          },
          {
            "node": "Post to Twitter (X)",
            "type": "main",
            "index": 0
          },
          {
            "node": "Post to LinkedIn",
            "type": "main",
            "index": 0
          },
          {
            "node": "Post to Bluesky",
            "type": "main",
            "index": 0
          },
          {
            "node": "Post to Pinterest",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Caption Render": {
      "main": [
        [
          {
            "node": "Get Final Video URL (Audio + Captions)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Prompt & Caption": {
      "main": [
        [
          {
            "node": "Transform Prompt for Kling (GPT-4)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Video URL with Audio": {
      "main": [
        [
          {
            "node": "Wait Before Captioning",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Trigger: Telegram Prompt": {
      "main": [
        [
          {
            "node": "Extract Prompt & Caption",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Video Generation": {
      "main": [
        [
          {
            "node": "Get Generated Video URL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Voice-Over Script": {
      "main": [
        [
          {
            "node": "Convert Script to Audio (TTS)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload Audio to Cloudinary": {
      "main": [
        [
          {
            "node": "Merge Audio + Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Audio/Video Fusion": {
      "main": [
        [
          {
            "node": "Get Video URL with Audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Video via Kling API": {
      "main": [
        [
          {
            "node": "Wait for Video Generation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate YouTube-Style Title": {
      "main": [
        [
          {
            "node": "Save Video Metadata to Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Final Video to Telegram": {
      "main": [
        [
          {
            "node": "Send Caption Link via Telegram",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert Script to Audio (TTS)": {
      "main": [
        [
          {
            "node": "Upload Audio to Cloudinary",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Caption Link via Telegram": {
      "main": [
        [
          {
            "node": "Assign Social Media IDs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Add Captions/Subtitles to Video": {
      "main": [
        [
          {
            "node": "Wait for Caption Render",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Transform Prompt for Kling (GPT-4)": {
      "main": [
        [
          {
            "node": "Generate Video via Kling API",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save Video Metadata to Google Sheets": {
      "main": [
        [
          {
            "node": "Send Final Video to Telegram",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Social Caption from Voiceover": {
      "main": [
        [
          {
            "node": "Generate YouTube-Style Title",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Final Video URL (Audio + Captions)": {
      "main": [
        [
          {
            "node": "Generate Social Caption from Voiceover",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}