Back to Catalog

Generate AI videos with Google Veo3, save to Google Drive and upload to YouTube

DavideDavide
237391 views
2/3/2026
Official Page

This workflow allows users to generate AI videos using Google Veo3, save them to Google Drive, generate optimized YouTube titles with GPT-4o, and automatically upload them to YouTube with Upload-Post. The entire process is triggered from a Google Sheet that acts as the central interface for input and output.

IT automates video creation, uploading, and tracking, ensuring seamless integration between Google Sheets, Google Drive, Google Veo3, and YouTube.


Benefits of this Workflow

  • 💡 No Code Interface: Trigger and control the video production pipeline from a simple Google Sheet.

  • ⚙️ Full Automation: Once set up, the entire video generation and publishing process runs hands-free.

  • 🧠 AI-Powered Creativity:

    • Generates engaging YouTube titles using GPT-4o.
    • Leverages advanced generative video AI from Google Veo3.
  • 📁 Cloud Storage & Backup: Stores all generated videos on Google Drive for safekeeping.

  • 📈 YouTube Ready: Automatically uploads to YouTube with correct metadata, saving time and boosting visibility.

  • 🧪 Scalable: Designed to process multiple video prompts by looping through new entries in Google Sheets.

  • 🔒 API-First: Utilizes secure API-based communication for all services.


How It Works

  1. Trigger: The workflow can be started manually ("When clicking ‘Test workflow’") or scheduled ("Schedule Trigger") to run at regular intervals (e.g., every 5 minutes).
  2. Fetch Data: The "Get new video" node retrieves unfilled video requests from a Google Sheet (rows where the "VIDEO" column is empty).
  3. Video Creation:
    • The "Set data" node formats the prompt and duration from the Google Sheet.
    • The "Create Video" node sends a request to the Fal.run API (Google Veo3) to generate a video based on the prompt.
  4. Status Check:
    • The "Wait 60 sec." node pauses execution for 60 seconds.
    • The "Get status" node checks the video generation status. If the status is "COMPLETED," the workflow proceeds; otherwise, it waits again.
  5. Video Processing:
    • The "Get Url Video" node fetches the video URL.
    • The "Generate title" node uses OpenAI (GPT-4.1) to create an SEO-optimized YouTube title.
    • The "Get File Video" node downloads the video file.
  6. Upload & Update:
    • The "Upload Video" node saves the video to Google Drive.
    • The "HTTP Request" node uploads the video to YouTube via the Upload-Post API.
    • The "Update Youtube URL" and "Update result" nodes update the Google Sheet with the video URL and YouTube link.

Set Up Steps

  1. Google Sheet Setup:

    • Create a Google Sheet with columns: PROMPT, DURATION, VIDEO, and YOUTUBE_URL.
    • Share the Sheet link in the "Get new video" node.
  2. API Keys:

    • Obtain a Fal.run API key (for Veo3) and set it in the "Create Video" node (Header: Authorization: Key YOURAPIKEY).
    • Get an Upload-Post API key (for YouTube uploads) and configure the "HTTP Request" node (Header: Authorization: Apikey YOUR_API_KEY).
  3. YouTube Upload Configuration:

    • Replace YOUR_USERNAME in the "HTTP Request" node with your Upload-Post profile name.
  4. Schedule Trigger:

    • Configure the "Schedule Trigger" node to run periodically (e.g., every 5 minutes).

👉 Subscribe to my new YouTube channel. Here I’ll share videos and Shorts with practical tutorials and FREE templates for n8n.

image


Need help customizing?

Contact me for consulting and support or add me on Linkedin.

Generate AI Videos with Google Veo 3, Save to Google Drive, and Upload to YouTube

This n8n workflow automates the process of generating AI-powered videos based on prompts from a Google Sheet, saving these videos to Google Drive, and then uploading them to YouTube. It leverages the power of Google Veo 3 (simulated via an HTTP Request to an OpenAI node for video generation) and integrates seamlessly with Google services.

What it does

This workflow performs the following steps:

  1. Triggers Manually or on Schedule: The workflow can be initiated manually or set to run on a defined schedule.
  2. Reads Video Prompts from Google Sheets: It retrieves video generation prompts from a specified Google Sheet.
  3. Generates AI Video: For each prompt, it sends a request to an AI model (simulated as OpenAI in this workflow) to generate a video.
  4. Filters Generated Videos: It checks if a video URL was successfully returned from the AI generation step.
  5. Saves Video to Google Drive: If a video URL is available, the generated video is downloaded and then uploaded to a designated folder in Google Drive.
  6. Waits for Processing: A short delay is introduced to allow Google Drive to process the uploaded video.
  7. Uploads Video to YouTube: The video from Google Drive is then uploaded to a YouTube channel with a title and description derived from the initial prompt.
  8. Updates Google Sheet: The Google Sheet is updated with the status of the video generation, Google Drive link, and YouTube link.

Prerequisites/Requirements

To use this workflow, you will need:

  • n8n Instance: A running instance of n8n.
  • Google Sheets Credential: An n8n credential configured for Google Sheets access.
  • Google Drive Credential: An n8n credential configured for Google Drive access.
  • YouTube Credential: An n8n credential configured for YouTube access.
  • OpenAI Credential: An n8n credential configured for OpenAI (or a similar AI video generation service).
  • Google Sheet: A Google Sheet with a column for video prompts and additional columns to store the Google Drive and YouTube links, and status.

Setup/Usage

  1. Import the workflow: Download the JSON content and import it into your n8n instance.
  2. Configure Credentials:
    • Set up your Google Sheets, Google Drive, YouTube, and OpenAI credentials within n8n.
  3. Update Node Parameters:
    • Google Sheets (Read Prompts): Specify the Spreadsheet ID and Sheet Name where your video prompts are located.
    • OpenAI (Generate Video): Configure the parameters for your AI video generation model, using the prompt from the Google Sheet.
    • Google Drive (Upload Video): Specify the Folder ID in Google Drive where you want to save the generated videos.
    • YouTube (Upload Video): Configure the YouTube channel details and map the video title and description from the workflow data.
    • Google Sheets (Update Status): Specify the Spreadsheet ID and Sheet Name to update the status, Google Drive link, and YouTube link.
  4. Activate the workflow: Once configured, activate the workflow. You can trigger it manually or enable the Schedule Trigger for automated runs.

Related Templates

🎓 How to transform unstructured email data into structured format with AI agent

This workflow automates the process of extracting structured, usable information from unstructured email messages across multiple platforms. It connects directly to Gmail, Outlook, and IMAP accounts, retrieves incoming emails, and sends their content to an AI-powered parsing agent built on OpenAI GPT models. The AI agent analyzes each email, identifies relevant details, and returns a clean JSON structure containing key fields: From – sender’s email address To – recipient’s email address Subject – email subject line Summary – short AI-generated summary of the email body The extracted information is then automatically inserted into an n8n Data Table, creating a structured database of email metadata and summaries ready for indexing, reporting, or integration with other tools. --- Key Benefits ✅ Full Automation: Eliminates manual reading and data entry from incoming emails. ✅ Multi-Source Integration: Handles data from different email providers seamlessly. ✅ AI-Driven Accuracy: Uses advanced language models to interpret complex or unformatted content. ✅ Structured Storage: Creates a standardized, query-ready dataset from previously unstructured text. ✅ Time Efficiency: Processes emails in real time, improving productivity and response speed. *✅ Scalability: Easily extendable to handle additional sources or extract more data fields. --- How it works This workflow automates the transformation of unstructured email data into a structured, queryable format. It operates through a series of connected steps: Email Triggering: The workflow is initiated by one of three different email triggers (Gmail, Microsoft Outlook, or a generic IMAP account), which constantly monitor for new incoming emails. AI-Powered Parsing & Structuring: When a new email is detected, its raw, unstructured content is passed to a central "Parsing Agent." This agent uses a specified OpenAI language model to intelligently analyze the email text. Data Extraction & Standardization: Following a predefined system prompt, the AI agent extracts key information from the email, such as the sender, recipient, subject, and a generated summary. It then forces the output into a strict JSON structure using a "Structured Output Parser" node, ensuring data consistency. Data Storage: Finally, the clean, structured data (the from, to, subject, and summarize fields) is inserted as a new row into a specified n8n Data Table, creating a searchable and reportable database of email information. --- Set up steps To implement this workflow, follow these configuration steps: Prepare the Data Table: Create a new Data Table within n8n. Define the columns with the following names and string type: From, To, Subject, and Summary. Configure Email Credentials: Set up the credential connections for the email services you wish to use (Gmail OAuth2, Microsoft Outlook OAuth2, and/or IMAP). Ensure the accounts have the necessary permissions to read emails. Configure AI Model Credentials: Set up the OpenAI API credential with a valid API key. The workflow is configured to use the model, but this can be changed in the respective nodes if needed. Connect the Nodes: The workflow canvas is already correctly wired. Visually confirm that the email triggers are connected to the "Parsing Agent," which is connected to the "Insert row" (Data Table) node. Also, ensure the "OpenAI Chat Model" and "Structured Output Parser" are connected to the "Parsing Agent" as its AI model and output parser, respectively. Activate the Workflow: Save the workflow and toggle the "Active" switch to ON. The triggers will begin polling for new emails according to their schedule (e.g., every minute), and the automation will start processing incoming messages. --- Need help customizing? Contact me for consulting and support or add me on Linkedin.

DavideBy Davide
1616

Generate Funny AI Videos with Sora 2 and Auto-Publish to TikTok

This automation creates a fully integrated pipeline to generate AI-powered videos, store them, and publish them on TikTok — all automatically. It connects OpenAI Sora 2, and Postiz (for TikTok publishing) to streamline content creation. --- Key Benefits ✅ Full Automation – From text prompt to TikTok upload, everything happens automatically with no manual intervention once set up. ✅ Centralized Control – Google Sheets acts as a simple dashboard to manage prompts, durations, and generated results. ✅ AI-Powered Creativity – Uses OpenAI Sora 2 for realistic video generation and GPT-5 for optimized titles. ✅ Social Media Integration – Seamlessly posts videos to TikTok via Postiz, ready for your audience. ✅ Scalable & Customizable – Can easily be extended to other platforms like YouTube, Instagram, or LinkedIn. ✅ Time-Saving – Eliminates repetitive steps like manual video uploads or caption writing. --- How it works This workflow automates the end-to-end process of generating AI videos and publishing them to TikTok. It is triggered either manually or on a recurring schedule. Trigger & Data Fetch: The workflow starts by checking a specified Form for new entries. It looks for rows where a video has been requested (a "PROMPT" is filled) but not yet generated (the "VIDEO" column is empty). AI Video Generation: For each new prompt found, the workflow sends a request to the Fal.ai Sora 2 model to generate a video. It then enters a polling loop, repeatedly checking the status of the generation request every 60 seconds until the video is "COMPLETED". Post-Processing & Upload: Once the video is ready, the workflow performs several actions in parallel: Fetch Video & Store: It retrieves the final video URL, downloads the video file Generate Title: It uses the OpenAI GPT-4o-mini model to analyze the original prompt and generate an optimized, engaging title for the video. Publish to TikTok: The video file is uploaded to Postiz, a social media scheduling tool, which then automatically publishes it to a connected TikTok channel, using the AI-generated title as the post's caption. --- Set up steps To make this workflow functional, you need to complete the following configuration steps: Prepare the Google Sheet: Create a Form with at least "PROMPT", "DURATION", and "VIDEO" fields. Configure Fal.ai for Video Generation: Create an account at Fal.ai and obtain your API key. In both the "Create Video" and "Get status" HTTP Request nodes, set up the "Header Auth" credential. Set the Name to Authorization and the Value to Key YOURAPIKEY. Set up TikTok Publishing via Postiz: Create an account on Postiz and connect your TikTok account to get a Channel ID. Obtain your Postiz API key. In the "Upload Video to Postiz" and "TikTok" (Postiz) nodes, configure the API credentials. In the "TikTok" node, replace the placeholder "XXX" in the integrationId field with your actual TikTok Channel ID from Postiz. (Optional) Configure AI Title Generation: The "Generate title" node uses OpenAI. Ensure you have valid OpenAI API credentials configured in n8n for this node to work. --- Need help customizing? Contact me for consulting and support or add me on Linkedin. Header 2

DavideBy Davide
24772

Automate Zoom 🎦 user onboarding with OAuth token management and data tables

This workflow automates the management of Zoom OAuth tokens and the creation of new Zoom users through the Zoom API. This workflow automates the process of creating a new Zoom user by first ensuring a valid OAuth access token is available. It is designed to handle the fact that Zoom access tokens are short-lived (1 hour) by using a longer-lived refresh token (90 days) stored in an n8n Data Table. It includes two main phases: Token Generation & Management The workflow initially requests a Zoom access token using the OAuth 2.0 “authorization code” method. The resulting access token (valid for 1 hour) and refresh token (valid for 90 days) are stored in an n8n Data Table. When executed again, the workflow checks for the most recent token, refreshes it using the refresh token, and updates the Data Table automatically. User Creation in Zoom Once a valid token is retrieved, the workflow collects the user’s first name, last name, and email (set in the “Data” node). It then generates a secure random password for the new user. Using the Zoom API, it sends a POST request to create the new user, automatically triggering an invitation email from Zoom. --- Key Features ✅ Full Automation of Zoom Authentication Eliminates manual token handling by automatically refreshing and updating OAuth credentials. ✅ Centralized Token Storage Securely stores access and refresh tokens in an n8n Data Table, simplifying reuse across workflows. ✅ Error Prevention Ensures that expired tokens are replaced before API requests, avoiding failed Zoom operations. 4.✅ Automatic User Provisioning Creates Zoom users automatically with prefilled credentials and triggers Zoom’s built-in invitation process. ✅ Scalability Can be easily extended to handle bulk user creation, role assignments, or integration with other systems (e.g., HR, CRM). ✅ Transparency & Modularity Each node is clearly labeled with “Sticky Notes” explaining every step, making maintenance and handover simple. --- How it works Trigger and Data Retrieval: The workflow starts manually. It first retrieves user data (first name, last name, email) from the "Data" node. In parallel, it fetches all stored token records from a Data Table. Token Management: The retrieved tokens are sorted and limited to get only the most recent one. This latest token (which contains the refreshtoken) is then used in an HTTP Request to Zoom's OAuth endpoint to generate a fresh, valid accesstoken. User Creation: The new accesstoken and refreshtoken are saved back to the Data Table for future use. The workflow then generates a random password for the new user, merges this password with the initial user data, and finally sends a POST request to the Zoom API to create the new user. If the creation is successful, Zoom automatically sends an invitation email to the new user. --- Set up steps Prepare the Data Table: Create a new Data Table in your n8n project. Add two columns to it: accessToken and refreshToken. Configure Zoom OAuth App: Create a standard OAuth app in the Zoom Marketplace (not a Server-to-Server app). Note your Zoom account_id. Encode your Zoom app's clientid and clientsecret in Base64 format (as clientid:clientsecret). In both the "Get new token" and "Zoom First Access Token" nodes, replace the "XXX" in the Authorization header with this Base64-encoded string. Generate Initial Tokens (First Run Only): Manually execute the "Zoom First Access Token" node once. This node uses an authorization code to fetch the first-ever access and refresh tokens and saves them to your Data Table. The main workflow will use these stored tokens from this point forward. Configure User Data: In the "Data" node, set the default values for the new Zoom user by replacing the "XXX" placeholders for firstname, lastname, and email. After these setup steps, the main workflow (triggered via "When clicking 'Execute workflow'") can be run whenever you need to create a new Zoom user. It will automatically refresh the token and use the provided user data to create the account. --- Need help customizing? Contact me for consulting and support or add me on Linkedin.

DavideBy Davide
111