One-click YouTube shorts generator with Leonardo AI, GPT and ElevenLabs
🎬 What it does
This workflow creates an engaging YouTube Short with a single click — from script to voiceover, to visuals and background music.
It combines several AI tools to automate content creation and final video assembly.
⚙️ How it works
- Accepts an input prompt or topic
- Generates script using GPT
- Converts script to voiceover using ElevenLabs
- Generates b-roll style images via Leonardo.Ai
- Matches background music
- Assembles a vertical 1080×1920 MP4 video using JSON render config
- Optionally uploads to YouTube or saves to Cloudinary
🧰 Setup steps
-
Add your credentials:
- Leonardo API (image generation)
- ElevenLabs (voiceover)
- Cloudinary (upload destination)
- Any GPT-based text generator
-
Drop your audio/music file in the right node
-
Replace API expressions with your own credentials
> 🟨 Full step-by-step instructions are in sticky notes inside the workflow.
n8n YouTube Shorts Generator with Leonardo AI, GPT, and ElevenLabs
This n8n workflow automates the creation of engaging YouTube Shorts from a given topic. It leverages the power of AI to generate scripts, create stunning images, and produce natural-sounding voiceovers, streamlining the entire content creation process.
What it does
This workflow orchestrates a series of AI-powered steps to transform a simple topic into a ready-to-publish YouTube Short:
- Manual Trigger: The workflow is initiated manually, allowing you to provide a topic for your YouTube Short.
- Edit Fields (Set): Sets the initial topic for the short.
- OpenAI (Script Generation): Uses OpenAI's GPT to generate a concise script for the YouTube Short based on the provided topic.
- OpenAI (Image Prompt Generation): Generates a descriptive image prompt for Leonardo AI based on the generated script.
- HTTP Request (Leonardo AI Image Generation): Sends the image prompt to Leonardo AI to generate an image.
- Wait: Pauses the workflow for a short period to allow Leonardo AI to process the image generation request.
- HTTP Request (Retrieve Leonardo AI Image): Retrieves the generated image from Leonardo AI.
- Split Out: Separates the image generation results, handling multiple images if generated.
- Aggregate: Combines the image URLs into a single output.
- OpenAI (Voiceover Script Generation): Refines the script specifically for ElevenLabs voiceover.
- HTTP Request (ElevenLabs Voiceover Generation): Sends the refined script to ElevenLabs to generate an audio file.
- Wait: Pauses the workflow to allow ElevenLabs to process the voiceover generation.
- HTTP Request (Retrieve ElevenLabs Voiceover): Retrieves the generated audio file from ElevenLabs.
- Merge: Combines all the generated assets (script, image, voiceover) into a final output.
Prerequisites/Requirements
To use this workflow, you will need API keys and accounts for the following services:
- OpenAI: For script and image prompt generation (GPT-3.5 or GPT-4).
- Leonardo AI: For AI image generation.
- ElevenLabs: For AI voiceover generation.
Setup/Usage
- Import the workflow: Download the JSON provided and import it into your n8n instance.
- Configure Credentials:
- For the OpenAI nodes, create an OpenAI credential and provide your API Key.
- For the HTTP Request nodes interacting with Leonardo AI, you will need to set up an HTTP Request credential with your Leonardo AI API key and any necessary headers.
- For the HTTP Request nodes interacting with ElevenLabs, you will need to set up an HTTP Request credential with your ElevenLabs API key and any necessary headers.
- Activate the workflow: Ensure the workflow is active.
- Execute Manually: Click "Execute workflow" on the "When clicking ‘Execute workflow’" node.
- Provide Topic: In the "Edit Fields (Set)" node, replace the placeholder topic with your desired YouTube Short topic.
- Run: The workflow will then proceed to generate the script, image, and voiceover.
- Review Output: The final "Merge" node will contain all the generated assets, ready for you to download and combine into your YouTube Short.
Related Templates
Automate RSS to social media pipeline with AI, Airtable & GetLate for multiple platforms
Overview Automates your complete social media content pipeline: sources articles from Wallabag RSS, generates platform-specific posts with AI, creates contextual images, and publishes via GetLate API. Built with 63 nodes across two workflows to handle LinkedIn, Instagram, and Bluesky—with easy expansion to more platforms. Ideal for: Content marketers, solo creators, agencies, and community managers maintaining a consistent multi-platform presence with minimal manual effort. How It Works Two-Workflow Architecture: Content Aggregation Workflow Monitors Wallabag RSS feeds for tagged articles (to-share-linkedin, to-share-instagram, etc.) Extracts and converts content from HTML to Markdown Stores structured data in Airtable with platform assignment AI Generation & Publishing Workflow Scheduled trigger queries Airtable for unpublished content Routes to platform-specific sub-workflows (LinkedIn, Instagram, Bluesky) LLM generates optimized post text and image prompts based on custom brand parameters Optionally generates AI images and hosts them on Imgbb CDN Publishes via GetLate API (immediate or draft mode) Updates Airtable with publication status and metadata Key Features: Tag-based content routing using Wallabag's native system Swappable AI providers (Groq, OpenAI, Anthropic) Platform-specific optimization (tone, length, hashtags, CTAs) Modular design—duplicate sub-workflows to add new platforms in \~30 minutes Centralized Airtable tracking with 17 data points per post Set Up Steps Setup time: \~45-60 minutes for initial configuration Create accounts and get API keys (\~15 min) Wallabag (with RSS feeds enabled) GetLate (social media publishing) Airtable (create base with provided schema—see sticky notes) LLM provider (Groq, OpenAI, or Anthropic) Image service (Hugging Face, Fal.ai, or Stability AI) Imgbb (image hosting) Configure n8n credentials (\~10 min) Add all API keys in n8n's credential manager Detailed credential setup instructions in workflow sticky notes Set up Airtable database (\~10 min) Create "RSS Feed - Content Store" base Add 19 required fields (schema provided in workflow sticky notes) Get Airtable base ID and API key Customize brand prompts (\~15 min) Edit "Set Custom SMCG Prompt" node for each platform Define brand voice, tone, goals, audience, and image preferences Platform-specific examples provided in sticky notes Configure platform settings (\~10 min) Set GetLate account IDs for each platform Enable/disable image generation per platform Choose immediate publish vs. draft mode Adjust schedule trigger frequency Test and deploy Tag test articles in Wallabag Monitor the first few executions in draft mode Activate workflows when satisfied with the output Important: This is a proof-of-concept template. Test thoroughly with draft mode before production use. Detailed setup instructions, troubleshooting tips, and customization guidance are in the workflow's sticky notes. Technical Details 63 nodes: 9 Airtable operations, 8 HTTP requests, 7 code nodes, 3 LangChain LLM chains, 3 RSS triggers, 3 GetLate publishers Supports: Multiple LLM providers, multiple image generation services, unlimited platforms via modular architecture Tracking: 17 metadata fields per post, including publish status, applied parameters, character counts, hashtags, image URLs Prerequisites n8n instance (self-hosted or cloud) Accounts: Wallabag, GetLate, Airtable, LLM provider, image generation service, Imgbb Basic understanding of n8n workflows and credential configuration Time to customize prompts for your brand voice Detailed documentation, Airtable schema, prompt examples, and troubleshooting guides are in the workflow's sticky notes. Category Tags social-media-automation, ai-content-generation, rss-to-social, multi-platform-posting, getlate-api, airtable-database, langchain, workflow-automation, content-marketing
Publishing videos across multiple platforms with Blotato (Instagram, YouTube)
Description This workflow automates video distribution to 9 social platforms simultaneously using Blotato's API. It includes both a scheduled publisher (checks Google Sheets for videos marked "Ready") and a subworkflow (can be called from other workflows). Perfect for creators and marketers who want to eliminate manual posting across Instagram, YouTube, TikTok, Facebook, LinkedIn, Threads, Twitter, Bluesky, and Pinterest. --- How It Works Scheduled Publisher Workflow Schedule Trigger – Runs daily at 10 PM (configurable). Fetch Video – Pulls video URL and description from Google Sheets where "ReadyToPost" = "Ready". Upload to Blotato – Sends video to Blotato's media service. Broadcast to 9 Platforms – Publishes simultaneously to all connected social accounts. Update Sheet – Changes "ReadyToPost" to "Finished" so it won't repost. --- Subworkflow: Video Publisher (Reusable) Receive Input – Gets URL, title, and description from parent workflow. Fetch Credentials – Pulls Blotato API key from n8n Data Table. Upload & Distribute – Uploads to Blotato, then posts to all platforms. Completion Signal – Returns to parent workflow when done. > 💡 Tip: The subworkflow can be called from ANY workflow - great for posting videos generated by AI workflows, webhook triggers, or manual forms. --- Test Workflow (Optional) Form Submission – Upload a video file with title and description. Upload to Dropbox – Generates shareable URL via "[SUB] Dropbox Upload Link" subworkflow. Trigger Publisher – Calls the subworkflow above to distribute the video. --- Setup Instructions Estimated Setup Time: 20-25 minutes Step 1: Blotato Account Setup Create account at Blotato Dashboard Connect all your social media accounts (most time-consuming step) Go to Settings and copy your account IDs for each platform Go to API Settings and copy your API key Step 2: Configure Workflow Update Social IDs: Open "Assign Social Media IDs" node Replace placeholder IDs with your actual Blotato account IDs: json { "instagramid": "YOURID", "youtubeid": "YOURID", "tiktokid": "YOURID", ... } Create Data Table: Create n8n Data Table named "Credentials" Add columns: service and token Add row: service = blotato, token = YOURAPIKEY Set Up Google Sheet: Create sheet with columns: URL VIDEO, ReadyToPost, Description, Titre (Title) Add video data Set ReadyToPost to "Ready" for videos you want to post Connect Your Sheet: Update "Get my video" node with your Google Sheet ID > ⚙️ Pro Tip: If you don't need the scheduled version, just use the subworkflow and call it from other workflows. --- Use Cases AI Video Workflows: Automatically post videos generated by Veo, Sora, or other AI models to all platforms. Content Schedulers: Queue videos in Google Sheets, let the scheduler post them automatically. Batch Publishing: Generate 10 videos, mark them all "Ready", and let the workflow distribute them. Marketing Campaigns: Coordinate multi-platform launches with a single click. Agencies: Manage multiple client accounts by swapping Blotato credentials in the Data Table. --- Customization Options Remove Unused Platforms: Disconnect any social media nodes you don't use (speeds up execution). Change Schedule: Modify the Schedule Trigger to run multiple times per day or on specific days. Different File Hosts: Replace Dropbox with Google Drive, S3, or Cloudinary in the test workflow. Platform-Specific Captions: Add IF nodes before each platform to customize descriptions or add hashtags. Add Approval Step: Insert a WhatsApp or Telegram notification before posting for manual review. Watermarks: Add a Code node to overlay branding before uploading to Blotato. --- Important Notes ⚠️ Two Workflows in One File: Lines 1-600: Scheduled publisher (checks Google Sheets) Lines 600+: Subworkflow (called by other workflows) ⚠️ Data Table vs. Hardcoding: Scheduled workflow: Hardcoded API keys in HTTP nodes Subworkflow: Uses Data Table for API keys (recommended approach) ⚠️ Why Use the Subworkflow? Can be called from ANY workflow Easier to manage API keys (one place to update) More flexible for complex automation systems
Ai-optimized travel itinerary generator with Skyscanner, Booking.com and Gmail
Introduction Automates travel planning by aggregating flights, hotels, activities, and weather via APIs, then uses AI to generate professional itineraries delivered through Gmail and Slack. How It Works Webhook receives requests, searches APIs (Skyscanner, Booking.com, Kiwi, Viator, weather), merges data, AI builds itineraries, scores options, generates HTML emails, delivers via Gmail/Slack. Workflow Template Webhook → Extract → Parallel Searches (Flights/Hotels/Activities/Weather) → Merge → Build Itinerary → AI Processing → Score → Generate HTML → Gmail → Slack → Response Workflow Steps Trigger & Extract: Receives destination, dates, preferences, extracts parameters. Data Gathering: Parallel APIs fetch flights, hotels, activities, weather, merges responses. AI Processing: Analyzes data, creates itinerary, ranks recommendations. Delivery: Generates HTML email, sends via Gmail/Slack, confirms completion. Setup Instructions API Configuration: Add keys for Skyscanner, Booking.com, Kiwi, Viator, OpenWeatherMap, OpenRouter. Communication: Connect Gmail OAuth2, Slack webhook. Customization: Adjust endpoints, AI prompts, HTML template, scoring criteria. Prerequisites API keys: Skyscanner, Booking.com, Kiwi, Viator, OpenWeatherMap, OpenRouter Gmail account Slack workspace n8n instance Use Cases Corporate travel planning Vacation itinerary generation Group trip coordination Customization Add sources (Airbnb, TripAdvisor) Filter by budget preferences Add PDF generation Customize Slack format Benefits Saves 3-5 hours per trip Real-time pricing aggregation AI-powered personalization Automated multi-channel delivery