Back to Catalog

Schedule & auto-post videos to Instagram, LinkedIn & TikTok with Google Sheets

Jose BossaJose Bossa
1815 views
2/3/2026
Official Page

Automated Social Media Video Posting

πŸ‘₯ Who's it for

This workflow is perfect for content creators, social media managers, and businesses who want to schedule and automatically post videos πŸ“Ή to multiple platforms (Instagram, LinkedIn, TikTok) without manual effort. Save hours every week! ⏰

πŸ€– What it does

It automatically reads scheduled posts from Google Sheets, checks if it's the right time to post, downloads videos from Google Drive, uploads them to multiple social media platforms simultaneously, updates the posting status, and sends you a Telegram notification with the results. Complete hands-free social media management! πŸš€

βš™οΈ How it works

  1. ⏰ Schedule Trigger – Runs twice daily at 9 AM and 9 PM
  2. πŸ“Š Google Sheets (Read) – Fetches posts with status "Listo para postear" (Ready to post)
  3. βš™οΈ Code Node – Converts trigger time to readable Spanish format (e.g., "16 de Octubre a las 9 am")
  4. πŸ” If Condition – Checks if current time matches the scheduled post time in the sheet
  5. πŸ“ Format Drive Content – Extracts and organizes post data (Title, Copy, Video URL)
  6. πŸ†” Social Media Account IDs – Prepares account identifiers (can be customized for specific accounts)
  7. 🎬 Upload a video – Posts video simultaneously to Instagram, LinkedIn, and TikTok using UploadPost API
  8. πŸ“Š Google Sheets (Update) – Changes post status to "Posteado" (Posted) to avoid duplicates
  9. πŸ“± Telegram Notification – Sends detailed success report with URLs for each platform

πŸ“‹ Requirements

  • Google Sheets with your content calendar
  • Google Drive to store your videos
  • UploadPost API account (supports Instagram, LinkedIn, TikTok):
  • Click aquΓ­ πŸ‘‰ UploadPost
  • Telegram Bot for notifications
  • n8n instance with required node packages

Google Sheets Structure

Your spreadsheet should have these columns:

  • Title – Post title
  • Copy – Post caption/description
  • Video Link – Google Drive download URL
  • Status – Post status ("Listo para postear" or "Posteado")
  • Fecha.Hora – Scheduled time (format: "16 de Octubre a las 9 am")
  • row_number – Auto-generated row identifier

πŸ› οΈ How to set up

  1. Create your Google Sheets calendar:

    • Set up columns as specified above
    • Use status "Listo para postear" for scheduled posts
    • Format dates as "DD de Mes a las HH am/pm" (Spanish format)
  2. Upload videos to Google Drive:

    • Get shareable download links (format: https://drive.google.com/uc?export=download&id=FILE_ID)
    • Ensure videos meet platform requirements (duration, format, size)
  3. Configure UploadPost API:

    • Create account and get API credentials
    • Connect your Instagram, LinkedIn, and TikTok accounts
    • Add credentials to the "Upload a video" node
  4. Set up Google Sheets credentials:

    • Connect OAuth2 for both read and update operations
    • Update documentId with your spreadsheet ID
    • Verify sheet name matches (default: "Video")
  5. Configure Telegram notifications:

    • Create a Telegram bot via @BotFather
    • Get your chat ID
    • Add credentials to "Send a text message" node
  6. Customize posting times:

    • Modify Schedule Trigger hours (default: 9 AM and 9 PM)
    • Times are in Santiago, Chile timezone (America/Santiago)
  7. Test the workflow:

    • Create a test entry with current time
    • Run manually to verify all connections work
    • Check Telegram for success notification
  8. Activate the workflow βœ…

🎨 How to customize

  • Change posting schedule: Modify triggerAtHour values in Schedule Trigger (add more times if needed)
  • Add more platforms: Extend the platform array in "Upload a video" node (supports YouTube, Facebook, Twitter)
  • Customize notification format: Edit the Telegram message template to include/exclude information
  • Change timezone: Modify the timeZone parameter in the Code node (default: "America/Santiago")
  • Filter by platform: Add a filter node before upload to post only to specific platforms on certain days
  • Add approval workflow: Insert an approval step before posting using Telegram or Slack
  • Multiple accounts per platform: Modify "Social Media Account IDs" node to specify different account IDs
  • Error handling: Add error notification paths to alert you if uploads fail
  • Batch posting: Remove returnFirstMatch option to post multiple videos at once

πŸ’‘ Pro Tips

  • Time format must match exactly between Schedule Trigger and Google Sheets for the workflow to trigger
  • Videos should be optimized for each platform before upload (aspect ratio, length, file size)
  • Test with a private account first before going live
  • Keep video files under 100MB for best performance across platforms
  • Use the row_number column to track and update specific posts
  • The workflow runs twice daily, so schedule posts accordingly (9 AM or 9 PM slots)

⚠️ Important Notes

  • Posts marked as "Posteado" won't be processed again (prevents duplicates)
  • Video must be publicly accessible from the Google Drive link
  • UploadPost API has rate limits depending on your plan
  • Telegram notifications show success status and post URLs for each platform
  • The Code node converts times to Spanish format - modify if you need different language/format

n8n Workflow: Automated Video Post Scheduler with Google Sheets and Telegram

This n8n workflow provides a robust solution for scheduling and automatically posting videos, leveraging Google Sheets for content management and Telegram for notifications. It simplifies the process of managing your video content pipeline by allowing you to define video details and publication schedules in a spreadsheet, and then automates the posting process.

What it does

This workflow automates the following steps:

  1. Triggers on a Schedule: The workflow runs periodically (e.g., daily, hourly) to check for new videos to post.
  2. Reads from Google Sheets: It connects to a specified Google Sheet to retrieve video details, including video URLs, captions, and scheduled post times.
  3. Filters for Scheduled Posts: It processes the retrieved data to identify videos that are scheduled to be posted now or in the near future, based on the current time.
  4. Prepares Video Data: It transforms and formats the data from Google Sheets into a usable structure for posting to social media platforms.
  5. Notifies via Telegram (Optional): It can send a notification to a Telegram chat, confirming which videos are being processed or if any issues occurred.
  6. Posts Videos (Placeholder): While the current JSON doesn't explicitly show nodes for specific social media platforms (like Instagram, LinkedIn, TikTok), the "Edit Fields" and "Code" nodes are likely used to prepare data for such integrations, which would be added as subsequent steps.

Prerequisites/Requirements

To use this workflow, you will need:

  • n8n Instance: A running instance of n8n.
  • Google Sheets Account: A Google account with access to Google Sheets.
  • Google Sheets Credential in n8n: A configured Google Sheets credential in your n8n instance.
  • Telegram Account (Optional): If you wish to receive notifications, a Telegram account and a configured Telegram credential in n8n.
  • Social Media Accounts (Implicit): Although not explicitly in the provided JSON, to fully realize the "auto-post videos" functionality, you would need accounts and corresponding n8n credentials for Instagram, LinkedIn, TikTok, or other desired platforms.

Setup/Usage

  1. Import the Workflow: Import the provided JSON into your n8n instance.
  2. Configure Credentials:
    • Set up your Google Sheets credential.
    • (Optional) Set up your Telegram credential if you want notifications.
  3. Configure Google Sheets Node (Node ID: 18):
    • Specify the Spreadsheet ID and Sheet Name where your video data is stored.
    • Ensure your sheet has columns for video URL, caption, and a scheduled post time (e.g., "Post Time").
  4. Configure Schedule Trigger Node (Node ID: 839):
    • Adjust the interval (e.g., every 15 minutes, hourly) according to how frequently you want the workflow to check for new posts.
  5. Configure If Node (Node ID: 20):
    • This node will contain the logic to compare the "Post Time" from your Google Sheet with the current time to determine if a video should be posted. You will need to define the conditions here based on your sheet's date/time format.
  6. Configure Edit Fields Node (Node ID: 38) and Code Node (Node ID: 834):
    • These nodes are used for data transformation. You might need to adjust them to extract and format the specific data points (video URL, caption, hashtags, etc.) required by your social media platforms.
  7. Add Social Media Nodes:
    • Connect appropriate social media nodes (e.g., Instagram, LinkedIn, TikTok) after the "Edit Fields" or "Code" node to handle the actual video posting. Configure these nodes with your credentials and map the data from the previous steps.
  8. Activate the Workflow: Once configured, activate the workflow to start the automated scheduling process.

Related Templates

Dynamic Hubspot lead routing with GPT-4 and Airtable sales team distribution

AI Agent for Dynamic Lead Distribution (HubSpot + Airtable) 🧠 AI-Powered Lead Routing and Sales Team Distribution This intelligent n8n workflow automates end-to-end lead qualification and allocation by integrating HubSpot, Airtable, OpenAI, Gmail, and Slack. The system ensures that every new lead is instantly analyzed, scored, and routed to the best-fit sales representative β€” all powered by AI logic, sir. --- πŸ’‘ Key Advantages ⚑ Real-Time Lead Routing Automatically assigns new leads from HubSpot to the most relevant sales rep based on region, capacity, and expertise. 🧠 AI Qualification Engine An OpenAI-powered Agent evaluates the lead’s industry, region, and needs to generate a persona summary and routing rationale. πŸ“Š Centralized Tracking in Airtable Every lead is logged and updated in Airtable with AI insights, rep details, and allocation status for full transparency. πŸ’¬ Instant Notifications Slack and Gmail integrations alert the assigned rep immediately with full lead details and AI-generated notes. πŸ” Seamless CRM Sync Updates the original HubSpot record with lead persona, routing info, and timeline notes for audit-ready history, sir. --- βš™οΈ How It Works HubSpot Trigger – Captures a new lead as soon as it’s created in HubSpot. Fetch Contact Data – Retrieves all relevant fields like name, company, and industry. Clean & Format Data – A Code node standardizes and structures the data for consistency. Airtable Record Creation – Logs the lead data into the β€œLeads” table for centralized tracking. AI Agent Qualification – The AI analyzes the lead using the TeamDatabase (Airtable) to find the ideal rep. Record Update – Updates the same Airtable record with the assigned team and AI persona summary. Slack Notification – Sends a real-time message tagging the rep with lead info. Gmail Notification – Sends a personalized handoff email with context and follow-up actions. HubSpot Sync – Updates the original contact in HubSpot with the assignment details and AI rationale, sir. --- πŸ› οΈ Setup Steps Trigger Node: HubSpot β†’ Detect new leads. HubSpot Node: Retrieve complete lead details. Code Node: Clean and normalize data. Airtable Node: Log lead info in the β€œLeads” table. AI Agent Node: Process lead and match with sales team. Slack Node: Notify the designated representative. Gmail Node: Email the rep with details. HubSpot Node: Update CRM with AI summary and allocation status, sir. --- πŸ” Credentials Required HubSpot OAuth2 API – To fetch and update leads. Airtable Personal Access Token – To store and update lead data. OpenAI API – To power the AI qualification and matching logic. Slack OAuth2 – For sending team notifications. Gmail OAuth2 – For automatic email alerts to assigned reps, sir. --- πŸ‘€ Ideal For Sales Operations and RevOps teams managing multiple regions B2B SaaS and enterprise teams handling large lead volumes Marketing teams requiring AI-driven, bias-free lead assignment Organizations optimizing CRM efficiency with automation, sir --- πŸ’¬ Bonus Tip You can easily extend this workflow by adding lead scoring logic, language translation for follow-ups, or Salesforce integration. The entire system is modular β€” perfect for scaling across global sales teams, sir.

MANISH KUMARBy MANISH KUMAR
113

Daily cash flow reports with Google Sheets, Slack & Email for finance teams

Simplify financial oversight with this automated n8n workflow. Triggered daily, it fetches cash flow and expense data from a Google Sheet, analyzes inflows and outflows, validates records, and generates a comprehensive daily report. The workflow sends multi-channel notifications via email and Slack, ensuring finance professionals stay updated with real-time financial insights. πŸ’ΈπŸ“§ Key Features Daily automation keeps cash flow tracking current. Analyzes inflows and outflows for actionable insights. Multi-channel alerts enhance team visibility. Logs maintain a detailed record in Google Sheets. Workflow Process The Every Day node triggers a daily check at a set time. Get Cash Flow Data retrieves financial data from a Google Sheet. Analyze Inflows & Outflows processes the data to identify trends and totals. Validate Records ensures all entries are complete and accurate. If records are valid, it branches to: Sends Email Daily Report to finance team members. Send Slack Alert to notify the team instantly. Logs to Sheet appends the summary data to a Google Sheet for tracking. Setup Instructions Import the workflow into n8n and configure Google Sheets OAuth2 for data access. Set the daily trigger time (e.g., 9:00 AM IST) in the "Every Day" node. Test the workflow by adding sample cash flow data and verifying reports. Adjust analysis parameters as needed for specific financial metrics. Prerequisites Google Sheets OAuth2 credentials Gmail API Key for email reports Slack Bot Token (with chat:write permissions) Structured financial data in a Google Sheet Google Sheet Structure: Create a sheet with columns: Date Cash Inflow Cash Outflow Category Notes Updated At Modification Options Customize the "Analyze Inflows & Outflows" node to include custom financial ratios. Adjust the "Validate Records" filter to flag anomalies or missing data. Modify email and Slack templates with branded formatting. Integrate with accounting tools (e.g., Xero) for live data feeds. Set different trigger times to align with your financial review schedule. Discover more workflows – Get in touch with us

Oneclick AI SquadBy Oneclick AI Squad
619

Track daily moods with AI analysis & reports using GPT-4o, Data Tables & Gmail

Track your daily mood in one tap and receive automated AI summaries of your emotional trends every week and month. Perfect for self-reflection, wellness tracking, or personal analytics. This workflow logs moods sent through a webhook (/mood) into Data Tables, analyzes them weekly and monthly with OpenAI (GPT-4o), and emails you clear summaries and actionable recommendations via Gmail. βš™οΈ How It Works Webhook – Mood β†’ Collects new entries (πŸ™‚, 😐, or 😩) plus an optional note. Set Mood Data β†’ Adds date, hour, and note fields automatically. Insert Mood Row β†’ Stores each record in a Data Table. Weekly Schedule (Sunday 20:00) β†’ Aggregates the last 7 days and sends a summarized report. Monthly Schedule (Day 1 at 08:00) β†’ Aggregates the last 30 days for a deeper AI analysis. OpenAI Analysis β†’ Generates insights, patterns, and 3 actionable recommendations. Gmail β†’ Sends the full report (chart + AI text) to your inbox. πŸ“Š Example Auto-Email Weekly Mood Summary (last 7 days) πŸ™‚ 5 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ 😐 2 β–ˆβ–ˆβ–ˆβ–ˆ 😩 0 Average: 1.7 (Positive πŸ™‚) AI Insights: You’re trending upward this week β€” notes show that exercise days improved mood. Try keeping short walks mid-week to stabilize energy. 🧩 Requirements n8n Data Tables enabled OpenAI credential (GPT-4o or GPT-4 Turbo) Gmail OAuth2 credential to send summaries πŸ”§ Setup Instructions Connect your credentials: Add your own OpenAI and Gmail OAuth2 credentials. Set your Data Table ID: Open the Insert Mood Row node and enter your own Data Table ID. Without this, new moods won’t be stored. Replace the email placeholder: In the Gmail nodes, replace your.email@example.com with your actual address. Deploy and run: Send a test POST request to /mood (e.g. { "mood": "πŸ™‚", "note": "productive day" }) to log your first entry. ⚠️ Before activating the workflow, ensure you have configured the Data Table ID in the β€œInsert Mood Row” node. 🧠 AI Analysis Interprets mood patterns using GPT-4o. Highlights trends, potential triggers, and suggests 3 specific actions. Runs automatically every week and month. πŸ”’ Security No personal data is exposed outside your n8n instance. Always remove or anonymize credential references before sharing publicly. πŸ’‘ Ideal For Personal mood journaling and AI feedback Therapists tracking client progress Productivity or self-quantification projects πŸ—’οΈ Sticky Notes Guide 🟑 Mood Logging Webhook POST /mood receives mood + optional note. ⚠️ Configure your own Data Table ID in the β€œInsert Mood Row” node before running. 🟒 Weekly Summary Runs every Sunday 20:00 β†’ aggregates last 7 days β†’ generates AI insights + emails report. πŸ”΅ Monthly Summary Runs on Day 1 at 08:00 β†’ aggregates last 30 days β†’ creates monthly reflection. 🟣 AI Analysis Uses OpenAI GPT-4o to interpret trends and recommend actions. 🟠 Email Delivery Sends formatted summaries to your inbox automatically.

Jose CastilloBy Jose Castillo
105