Back to Catalog

Create & publish affiliate product videos with Sora-2, GPT & YouTube

Amjid AliAmjid Ali
292 views
2/3/2026
Official Page

πŸš€ Affiliate AI-Powered Video Funnel Fully Automated Product Video Creation & Publishing

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. βœ…


🎯 What This Automation Does

  • πŸ”„ Fetches product or affiliate data from Google Sheets / Airtable / Database
  • πŸŽ™οΈ Generates human-presenter video prompts (Sora-style) using AI Agents
  • 🎬 Renders promotional videos automatically via AI video generation
  • ⏳ Polls render completion & handles errors safely
  • πŸ“€ Uploads videos to YouTube (draft, unlisted, or public)
  • 🧠 Auto-generates SEO metadata (titles, descriptions, tags, hashtags)
  • βœ… Human approval flow before public publishing
  • πŸ“ Updates catalog status to prevent duplicates
  • ⏱️ Runs daily, weekly, or per request via form or trigger

This workflow eliminates all repetitive editing, uploading, and SEO work β€” your channel grows while you sleep. πŸ˜΄πŸ“ˆ


πŸ§‘β€πŸ« Step-by-Step Video Tutorial

πŸŽ₯ Complete Implementation Demo πŸ‘‰ https://youtu.be/pOxcVbYdr0w

πŸ“Œ Covers full setup, rendering, approval, publishing, and automation scheduling.


🌐 Useful Links


πŸ›  Prerequisites

  • βœ… n8n (Self-Hosted or Cloud)

  • βœ… AI Agent inside n8n configured

  • βœ… YouTube API credentials

  • βœ… Product/Affiliate data source:

    • Google Sheets OR Airtable OR Database
  • βœ… AI Video Rendering: Sora-style provider API

πŸ“ Recommended product fields:

> Title, Summary, Brand, Landing Page, Affiliate Link (if using monetization)


πŸ“‹ How This Workflow Works β€” Step by Step

1️⃣ Product Input & Filtering

  • Fetch unpublished product/item
  • Skip rows marked β€œPublished” or with error codes
  • Ideal for drip publishing content every day

2️⃣ AI Promo Script + Presenter Prompt

  • Converts product benefits β†’ human script
  • Adds overlays + camera movement + style cues
  • Presenter looks professional, friendly & trusted

3️⃣ AI Video Rendering

  • Send prompt, wait for result
  • Retry & timeout safety built-in

4️⃣ YouTube Upload

  • Uploads automatically as Unlisted
  • βœ… Sends Human-In-The-Loop (HITL) approval
  • After approval β†’ Public Publish

5️⃣ SEO Enhancement

  • Generates tags, hashtags & optimized titles
  • Inserts affiliate link into description
  • Updates video via YouTube API

6️⃣ Mark As Published

  • Saves record in sheet/db
  • Avoids duplicate publishing

πŸ’° Affiliate / Monetization Features

  • πŸ›’ Add PartnerStack / Amazon Associates links
  • πŸ”— Auto-insert affiliate URLs per product
  • 🧩 Optional dynamic UTM tracking
  • πŸ“ˆ Ready for performance dashboards (CTR, views)

You create zero videos, yet grow daily affiliate revenue. πŸ”₯


πŸ’‘ Advanced Customizations

| Idea | Benefit | | ------------------------------- | ------------------------------- | | Multi-platform publishing | Expand reach beyond YouTube | | Multi-language voice & captions | Increase global audience | | Category-based styles | Better storytelling per product | | Bulk overnight generation | Boost weekly content output | | Analytics integration | Track growth & ROI easily |


⚠️ Troubleshooting

| Issue | Fix | | ----------------- | ------------------------------ | | No video returned | Check AI render provider quota | | Upload fails | Verify YouTube OAuth scopes | | Duplicate uploads | Confirm Published tag update | | Video quality | Adjust prompt style profile |


πŸ™Œ Why This Template

You can scale affiliate & product-based video content without editing tools, creators, or extra headcount:

βœ… Saves hours per video βœ… Builds traffic and trust automatically βœ… Generates recurring affiliate income βœ… Turns your product list into a money-making content engine


πŸš€ Get Started in Minutes

Import the workflow β†’ Connect APIs β†’ Approve β†’ Publish β†’ Earn πŸ’Έ

πŸ‘‰ More AI + n8n Workflows & Support https://syncbricks.com

πŸ‘‰ Subscribe for Tutorials https://youtube.com/@syncbricks

πŸ‘‰ Connect with the creator (Amjid Ali) https://linkedin.com/in/amjidali


πŸ”– Knowledge Base Tags

ai_video_automation, affiliate_marketing, youtube_api, handsfree_automation, ecommerce_video_marketing, n8n_ai_agents, social_video_automation, product_video_generator, workflow_automation, marketing_scaling

n8n Workflow: Affiliate Product Video Creation and Publishing

This n8n workflow automates the process of generating and publishing affiliate product videos. It retrieves product information from a Google Sheet, uses an AI agent to create video scripts, and then publishes the videos to YouTube. It also includes notification features via Telegram and robust error handling.

What it does

This workflow streamlines the following steps:

  1. Triggers on a Schedule: The workflow runs periodically to check for new product video requests.
  2. Reads Product Data from Google Sheets: It fetches product details (e.g., product name, description, affiliate links) from a specified Google Sheet.
  3. Filters for New Products: It identifies products that have not yet been processed for video creation.
  4. Generates Video Script with AI: For each new product, it leverages an AI Agent (likely powered by OpenAI) to generate a video script based on the product information.
  5. Parses AI Output: It uses a Structured Output Parser to extract relevant data from the AI-generated script.
  6. Publishes Video to YouTube: The generated video content (or a placeholder indicating it's ready for video generation) is then published to a YouTube channel.
  7. Updates Google Sheet: The Google Sheet is updated to mark the product as "processed" or "video published."
  8. Sends Telegram Notifications: It sends notifications to a Telegram chat for successful video publications or in case of errors.
  9. Error Handling: The workflow includes logic to handle cases where products might not be suitable for video generation or if there are issues during the process.
  10. Rate Limiting/Waiting: A Wait node is included, likely to manage API rate limits or introduce delays between operations.
  11. Data Manipulation: Edit Fields (Set) and Code nodes are used for data transformation and custom logic throughout the workflow.

Prerequisites/Requirements

To use this workflow, you will need:

  • n8n Instance: A running n8n instance.
  • Google Sheets Account: Access to a Google Sheet containing your affiliate product data.
  • YouTube Account: A YouTube channel where the videos will be published.
  • OpenAI API Key: For the AI Agent (specifically the OpenAI Chat Model) to generate video scripts.
  • Telegram Bot Token and Chat ID: To receive notifications.
  • n8n Langchain Nodes: Ensure the @n8n/n8n-nodes-langchain package is installed in your n8n instance for the AI Agent and Structured Output Parser nodes.

Setup/Usage

  1. Import the Workflow: Download the provided JSON and import it into your n8n instance.
  2. Configure Credentials:
    • Google Sheets: Set up a Google Sheets credential to access your product data spreadsheet.
    • YouTube: Configure a YouTube credential for publishing videos.
    • OpenAI: Set up an OpenAI credential with your API key for the AI Chat Model.
    • Telegram: Configure a Telegram credential with your bot token.
  3. Update Node Settings:
    • Google Sheets (Node 18): Specify your spreadsheet ID, sheet name, and the range/columns containing product data.
    • AI Agent (Node 1119): Configure the prompt for the AI to generate video scripts, referencing the product data from the Google Sheet.
    • Structured Output Parser (Node 1179): Define the schema for the expected output from the AI Agent (e.g., video title, description, tags).
    • YouTube (Node 357): Map the AI-generated video title, description, and tags to the YouTube upload fields.
    • Telegram (Node 49): Enter your Telegram Chat ID for notifications.
    • Schedule Trigger (Node 839): Adjust the schedule as needed (e.g., once a day, every hour).
    • Filter (Node 844): Configure the condition to identify new products (e.g., a column in Google Sheets indicating "processed" status).
    • Edit Fields (Set) (Node 38): Adjust any data transformations if necessary.
    • Code (Node 834): Review and modify custom JavaScript logic if required.
    • Wait (Node 514): Adjust the delay duration if needed.
  4. Activate the Workflow: Once configured, activate the workflow to start the automated process.

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

Mikal Hayden-GatesBy Mikal Hayden-Gates
188

Translate documents to multiple languages with Google Drive and DeepL

Who's it for This workflow is perfect for content creators, international teams, and businesses that need to translate documents into multiple languages automatically. Whether you're localizing documentation, translating marketing materials, or creating multilingual content, this workflow saves hours of manual work. What it does Automatically monitors a Google Drive folder for new documents (PDF, DOCX, TXT, or Markdown) and translates them into multiple languages using DeepL API. Each translated document is saved with a language-specific filename (e.g., documenten.pdf, documentzh.pdf) in a designated folder. You receive an email notification when all translations are complete. How it works Monitors a Google Drive folder for new files Detects file format (PDF/DOCX/TXT/Markdown) and extracts text Translates the content into your chosen languages (default: English, Chinese, Korean, Spanish, French, German) Saves translated files with language codes in the filename Sends an email notification with translation summary Optional: Records translation history in Notion database Set up instructions Requirements Google Drive account (for file storage) DeepL API key (free tier: 500,000 characters/month) Gmail account (for notifications) Notion account (optional, for tracking translation history) Setup steps Create Google Drive folders: Create a "Source" folder for original files Create a "Translated" folder for output Copy the folder IDs from the URLs Get DeepL API key: Sign up at DeepL API Copy your API key Configure the workflow: Open the "Configuration (Edit Here)" node (yellow node) Replace folder IDs with your own Set your notification email Choose target languages Set up credentials: Add Google Drive OAuth2 credentials Add DeepL API credentials Add Gmail OAuth2 credentials Activate the workflow and upload a test file! Customization options Change target languages: Edit the targetLanguages array in the Configuration node (supports 30+ languages) Adjust polling frequency: Change trigger from "every minute" to hourly or daily for batch processing Enable Notion tracking: Set enableNotion to true and provide your database ID Add more file formats: Extend the Switch node to handle additional file types Filter by file size: Add conditions to skip files larger than a certain size Supported languages EN (English), ZH (Chinese), KO (Korean), JA (Japanese), ES (Spanish), FR (French), DE (German), IT (Italian), PT (Portuguese), RU (Russian), and 20+ more. Performance Short files (1 page): ~30 seconds for 6 languages Medium files (10 pages): ~2 minutes for 6 languages Large files (100 pages): ~15 minutes for 6 languages Technical Details Trigger: Google Drive folder monitoring (1-minute polling) Translation: DeepL API with automatic source language detection Loop implementation: Split Out + Aggregate pattern for parallel translation Error handling: Catches API failures and sends email alerts Storage: Original file format preserved in translated outputs Notes DeepL free tier provides 500,000 characters/month (approximately 250 pages) For high-volume translation, consider upgrading to DeepL Pro The workflow creates new files instead of overwriting, preserving translation history Google Docs are automatically converted to the appropriate format before translation What You'll Learn This workflow demonstrates several n8n patterns: File format detection and routing (Switch node) Loop implementation with Split Out + Aggregate Binary data handling for file operations Conditional logic with IF nodes (optional features) Cross-node data references Error handling and user notifications Perfect for learning automation best practices while solving a real business problem!

Daiki TakayamaBy Daiki Takayama
341

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

AnthonyBy Anthony
159