Schedule & auto-post videos to Instagram, LinkedIn & TikTok with Google Sheets
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
- β° Schedule Trigger β Runs twice daily at 9 AM and 9 PM
- π Google Sheets (Read) β Fetches posts with status "Listo para postear" (Ready to post)
- βοΈ Code Node β Converts trigger time to readable Spanish format (e.g., "16 de Octubre a las 9 am")
- π If Condition β Checks if current time matches the scheduled post time in the sheet
- π Format Drive Content β Extracts and organizes post data (Title, Copy, Video URL)
- π Social Media Account IDs β Prepares account identifiers (can be customized for specific accounts)
- π¬ Upload a video β Posts video simultaneously to Instagram, LinkedIn, and TikTok using UploadPost API
- π Google Sheets (Update) β Changes post status to "Posteado" (Posted) to avoid duplicates
- π± 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 titleCopyβ Post caption/descriptionVideo Linkβ Google Drive download URLStatusβ 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
-
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)
-
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)
- Get shareable download links (format:
-
Configure UploadPost API:
- Create account and get API credentials
- Connect your Instagram, LinkedIn, and TikTok accounts
- Add credentials to the "Upload a video" node
-
Set up Google Sheets credentials:
- Connect OAuth2 for both read and update operations
- Update
documentIdwith your spreadsheet ID - Verify sheet name matches (default: "Video")
-
Configure Telegram notifications:
- Create a Telegram bot via @BotFather
- Get your chat ID
- Add credentials to "Send a text message" node
-
Customize posting times:
- Modify Schedule Trigger hours (default: 9 AM and 9 PM)
- Times are in Santiago, Chile timezone (America/Santiago)
-
Test the workflow:
- Create a test entry with current time
- Run manually to verify all connections work
- Check Telegram for success notification
-
Activate the workflow β
π¨ How to customize
- Change posting schedule: Modify
triggerAtHourvalues in Schedule Trigger (add more times if needed) - Add more platforms: Extend the
platformarray 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
timeZoneparameter 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
returnFirstMatchoption 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_numbercolumn 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:
- Triggers on a Schedule: The workflow runs periodically (e.g., daily, hourly) to check for new videos to post.
- Reads from Google Sheets: It connects to a specified Google Sheet to retrieve video details, including video URLs, captions, and scheduled post times.
- 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.
- Prepares Video Data: It transforms and formats the data from Google Sheets into a usable structure for posting to social media platforms.
- Notifies via Telegram (Optional): It can send a notification to a Telegram chat, confirming which videos are being processed or if any issues occurred.
- 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
- Import the Workflow: Import the provided JSON into your n8n instance.
- Configure Credentials:
- Set up your Google Sheets credential.
- (Optional) Set up your Telegram credential if you want notifications.
- 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").
- 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.
- 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.
- 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.
- 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.
- 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.
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
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.