by Trung Tran
Beginner’s Tutorial: Manage Google Cloud Storage Buckets and Objects with n8n Watch the demo video below: Who’s it for Beginners who want to learn how to automate Google Cloud Storage (GCS) operations with n8n. Developers who want to combine AI image generation with cloud storage management. Anyone looking for a simple introduction to working with Buckets and Objects in GCS. How it works / What it does This workflow demonstrates end-to-end usage of Google Cloud Storage with AI integration: Trigger: Start manually by clicking Execute Workflow. Edit Fields: Provide input values (e.g., bucket name or image description). List Buckets: Retrieve all existing buckets in the project (branch: view only). Create Bucket: If needed, create a new bucket to store objects. Prompt Generation Agent: Use an AI model to generate a creative text prompt. Generate Image: Convert the AI-generated prompt into an image. Upload Object: Store the generated image as an object in the selected bucket. Delete Object: Clean up by removing the uploaded object if required. This shows the full lifecycle: Bucket → Object (Create/Upload/Delete) combined with AI image generation. How to set up Trigger the workflow: Use the When clicking Execute workflow node to start manually. Provide inputs: In Edit Fields, specify details such as bucket name or description text for the image. List buckets: Use the List Buckets node to see what exists. Create a bucket: Use Create Bucket if you want a new storage bucket. Generate prompt & image: The Prompt Generation Agent uses an OpenAI Chat Model to create an image prompt. The Generate an Image node turns this prompt into an actual image. Upload to bucket: Use Create Object to upload the generated image into your GCS bucket. Delete object (optional): Use Delete Object to remove the file from the bucket as a cleanup step. Requirements An active Google Cloud account with Cloud Storage API enabled. A Service Account Key (JSON) credential added in n8n for GCS. An OpenAI API Key configured in n8n for the prompt and image generation nodes. Basic familiarity with running workflows in n8n. How to customize the workflow Different object types:** Instead of images, upload PDFs, logs, or text files. Automatic cleanup:** Skip the delete step if you want objects to persist. Schedule trigger:** Replace manual execution with a weekly or daily schedule. Dynamic prompts:** Accept user input from a form or webhook to generate images. Multi-bucket management:** Extend the logic to manage multiple buckets across projects. Notifications:** Add a Slack/Email step after upload to notify your team with the object URL. ✅ By the end of this tutorial, you’ll understand how to: Work with Buckets (list, create). Work with Objects (upload, delete). Integrate AI image generation with Google Cloud Storage.
by Rully Saputra
Automated SEO Watchlist: Continuous Audits Powered by Decodo, Gemini and Google Sheets Automate continuous SEO audits with Decodo and Gemini AI — live data, smart insights, and Google Sheets tracking with team alerts. Who’s it for This workflow is designed for SEO specialists, marketing teams, agencies, and website owners who want an effortless, automated way to monitor SEO health. It’s perfect for ongoing audits, content monitoring, and proactive SEO management — without the manual workload. How it works / What it does Every five days, the workflow: Reads a list of URLs from Google Sheets. Uses Decodo to fetch live on-page data — titles, meta descriptions, headings, schema, links, and Core Web Vitals. Passes that data to Gemini AI for an advanced SEO analysis and scoring based on key factors (content, metadata, links, speed, and structure). Parses results via a Structured Output Parser for clean JSON output. Stores findings in Google Sheets and sends a Telegram alert when the audit completes. Why Decodo matters Decodo is the backbone of this workflow. It powers the real-time page inspection, ensuring Gemini AI has complete, accurate data to analyze. Decodo transforms static audits into live, intelligent monitoring — making your SEO insights far more actionable and reliable. How to set up Connect your Decodo API credentials. Add your Google Sheets URL list. Configure your Telegram bot credentials. Enable the workflow — it runs automatically every 5 days. Requirements Decodo API credentials Google Sheets OAuth connection Telegram Bot token n8n instance (Cloud or Self-hosted) How to customize the workflow Change the trigger interval in the Schedule Trigger node. Modify the SEO Analyzer (LLM Chain) weights for different scoring. Extend the Store Result node to integrate with dashboards or databases. Adjust the AI prompt for additional SEO checks (e.g., backlinks, readability, image optimization). ✅ Highlights Automated SEO auditing Real-time data from Decodo Smart analysis powered by Gemini AI Structured reporting in Google Sheets Team notifications via Telegram
by Madame AI
Analyze job market data with AI to find matching jobs This n8n template helps you stay on top of the job market by matching scraped job offers with your resume using an AI Agent. This workflow is perfect for job seekers, recruiters, or market analysts who need to find specific job opportunities without manually sifting through countless listings. Steps to Take Create BrowserAct Workflow:* Set up the *Job Market Intelligence** template in your BrowserAct account. Add BrowserAct Token:* Connect your BrowserAct account credentials to the *HTTP Request** node. Update Workflow ID:* Change the workflow_id value in the *HTTP Request** node to match the one from your BrowserAct workflow. Connect Gemini:* Add your Google Gemini credentials and update your *resume* inside the prompt in the *AI Agent** node. Configure Telegram:* Connect your Telegram account and add your Channel ID to the *Send a text message** node. How it works The workflow is triggered manually by clicking "Execute workflow," but you can easily set it to run on a schedule. It uses an HTTP Request node to start a web scraping task via the BrowserAct API to collect the latest job offers. A series of If and Wait nodes monitor the scraping job, ensuring the full data is ready before proceeding. An AI Agent node, powered by Google Gemini, processes the job listings and filters them to find the best matches for your resume. A Code node then transforms the AI's output into a clean, readable format. Finally, the filtered job offers are sent directly to you via Telegram. Requirements BrowserAct** API account BrowserAct* *“Job Market Intelligence”** Template Gemini** account Telegram** credentials Need Help ? How to Find Your BrowseAct API Key & Workflow ID How to Connect n8n to Browseract How to Use & Customize BrowserAct Templates Workflow Guidance and Showcase Never Manually Search for a Job Again (AI Automation Tutorial)
by Madame AI
Find & Qualify Funded Leads with BrowserAct & Gemini This n8n template helps you find new investment leads by automatically scraping articles for funding announcements and analyzing them with an AI Agent. This workflow is ideal for venture capitalists, sales teams, or market researchers who need to automatically track and compile lists of recently funded companies. Self-Hosted Only This Workflow uses a community contribution and is designed and tested for self-hosted n8n instances only. How it works The workflow is triggered manually but can be set to a Cron node to run on a schedule. A Google Sheet node loads a list of keywords (e.g., "Series A," "Series B") and geographic locations to search for. The workflow loops through each keyword, initiating BrowserAct web scraping tasks to collect relevant articles. A second set of BrowserAct nodes patiently monitors the scraping jobs, waiting for them to complete before proceeding. Once all articles are collected, they are merged and fed into an AI Agent node, powered by Google Gemini. The AI Agent processes the articles to identify companies that recently received funding, extracting the Company Name, the Field of Investment, and the source URL. A Code node transforms the AI's JSON output into a clean, itemized format. An If node filters out any entries where no company was found, ensuring data quality. The qualified leads are automatically added or updated in a Google Sheet, matching by "Company" to prevent duplicates. Finally, a Slack message is sent to a channel to notify your team that the lead list has been updated. Requirements BrowserAct** API account for web scraping BrowserAct** n8n Community Node -> (n8n Nodes BrowserAct) BrowserAct* "Funding Announcement to Lead List (TechCrunch)*" Template (or a similar scraping workflow) Gemini** account for the AI Agent Google Sheets** credentials for input and output Slack** credentials for sending notifications Need Help? How to Find Your BrowseAct API Key & Workflow ID How to Connect n8n to Browseract How to Use & Customize BrowserAct Templates How to Use the BrowserAct n8n Community Node Workflow Guidance and Showcase How to Automatically Find Leads from Funding News (n8n Workflow Tutorial)
by Madame AI
AI-Powered Top GitHub Talent Sourcing (by Language & Location) to Google Sheet This n8n template is a powerful talent sourcing engine that finds, analyzes, and scores GitHub contributors using a custom AI formula. This workflow is ideal for technical recruiters, hiring managers, and team leads who want to build a pipeline of qualified candidates based on specific technical skills and location. Self-Hosted Only This Workflow uses a community contribution and is designed and tested for self-hosted n8n instances only. How it works The workflow runs on a Schedule Trigger (e.g., hourly) to constantly find new candidates. A BrowserAct node ("Run a workflow task") initiates a scraping job on GitHub based on your criteria (e.g., "Python" developers in "Berlin"). A second BrowserAct node ("Get details") waits for the scraping to complete. If the job fails, a Slack alert is sent. A Code node processes the raw scraped data, splitting the list of developers into individual items. An AI Agent, powered by Google Gemini, analyzes each profile. It scores their resume/summary and calculates a final weighted FinalScore based on their followers, repositories, and resume quality. The structured and scored candidate data is then saved to a Google Sheet, using the "Name" column to prevent duplicates. A final Slack message is sent to notify you that the GitHub contributors list has been successfully updated. Requirements BrowserAct** API account for web scraping BrowserAct* "Source Top GitHub Contributors by Language & Location*" Template BrowserAct** n8n Community Node -> (n8n Nodes BrowserAct) Gemini** account for the AI Agent Google Sheets** credentials for saving leads Slack** credentials for sending notifications Need Help? How to Find Your BrowseAct API Key & Workflow ID How to Connect n8n to Browseract How to Use & Customize BrowserAct Templates How to Use the BrowserAct N8N Community Node Workflow Guidance and Showcase Automate Talent Sourcing: Find GitHub Devs with n8n & Browseract
by Feras Dabour
AI LinkedIn Content Bot with Approval Loop This n8n workflow transforms your Telegram messenger into a personal assistant for creating and publishing LinkedIn posts. You can simply send an idea as a text or voice message, collaboratively edit the AI's suggestion in a chat, and then publish the finished post directly to LinkedIn just by saying "Okay." What You'll Need to Get Started Before you can use this workflow, you'll need a few prerequisites set up. This workflow connects three different services, so you will need API credentials for each: Telegram Bot API Key: You can get this by talking to the "BotFather" on Telegram. It will guide you through creating your new bot and provide you with the API token. New Chat with Telegram BotFather OpenAI API Key: This is required for the "Speech to Text" and "AI Agent" nodes. You'll need an account with OpenAI to generate this key. [OpenAI API Platform](https://platform.openai.com ) Blotato API Key: This service is used to publish the final post to LinkedIn. You'll need a Blotato account and to connect your LinkedIn profile there to get the key. Blotato platform for social media publishing Once you have these keys, you can add them to the corresponding credentials in your n8n instance. How the Workflow Operates, Step-by-Step Here is a detailed breakdown of how the workflow processes your request and handles the publishing. 1\. Input & Initial Processing This phase captures your idea and converts it into usable text. | Node Name | Role in Workflow | | :--- | :--- | | Start: Telegram Message | This Telegram Trigger node initiates the entire process upon receiving any message from you in the bot. | | Prepare Input | Consolidates the message content, ensuring the AI receives only one clean text input. | | Check: ist it a Voice? | Checks the incoming message for text. If text is empty, it proceeds to voice handling. | | Get Voice File | If a voice note is detected, this node downloads the raw audio file from Telegram. | | Speech to Text | This node uses the OpenAI Whisper API to convert the downloaded audio file into a text string. | 2\. AI Core & Iteration Loop This is the central dialogue system where the AI drafts the content and engages in the feedback loop. | Node Name | Role in Workflow | | :--- | :--- | | AI: Draft & Revise Post | The main logic agent. It analyzes your request, applies the "System Prompt" rules, drafts the post, and handles revisions based on your feedback. | | OpenAI Chat Model | Defines the large language model (LLM) used for generating and revising the post. | | Window Buffer Memory | A memory buffer that stores the last turns of the conversation, allowing the AI to maintain context when you request changes (e.g., "Make it shorter"). | | Check if Approved | This crucial node detects the specific JSON structure the AI outputs only when you provide an approval keyword (like "ok" or "approved"). | | Post Suggestion Or Ask For Approval | Sends the AI's post draft back to your Telegram chat for review and feedback. | AI Agent System Prompt (Internal Instructions - English) The agent operates under a strict prompt that dictates its behavior and formatting (found within the AI: Draft & Revise Post node): > You are a LinkedIn Content Creator Agent for Telegram. > Keep the confirmation process, but change the output format as follows: > > Your Task > Analyze the user's message: > > * Topic > * Goal (e.g., reach, show expertise, recruiting, personal branding, leads) > * Target Audience > * Tonality (e.g., factual, personal, bold, inspiring) > > Create a LinkedIn post as ONE continuous text: > > * Strong hook in the first 1–2 lines. > * Clear main part with added value, story, example, or insight. > * Optional Call-to-Action (e.g., question to the community, invitation to exchange). > * Integrate hashtags at the end of the post (5–12 suitable hashtags, mix of niche + somewhat broader). > * Readable on LinkedIn: short paragraphs, emojis only sparingly. > > Present the suggestion to the user in the following format: > > Headline: Post Proposal: > Below that, the complete LinkedIn post (incl. hashtags at the end in the same text). > > Ask for feedback: > For example: > "Any changes? (Tone, length, formality, personal vs. professional, more technical content, different hashtags?)" > > If the user requests changes: > Adjust the post specifically based on the feedback. > Again, output only: > Post Proposal: > the revised complete post. > > If the user says “approved”, “ok”, “sounds good”, or similar: > Return exclusively this JSON, without additional text, without Markdown: > > > { > "Post": "The final LinkedIn post as one text, including hashtags at the end" > } > > > Important: > > * Never output JSON before approval, only normal suggestion text. > * The final output after approval consists of only one field: Post. 3\. Publishing & Status Check Once approved, the workflow handles the publication and monitors the post's status in real-time. | Node Name | Role in Workflow | | :--- | :--- | | Approval: Extract Final Post Text | Parses the incoming JSON, extracting only the clean text ready for publishing. | | Create post with Blotato | Uses the Blotato API to upload the finalized content to your connected LinkedIn account. | | Give Blotat 5s :) | A brief pause to allow the publishing service to start processing the request. | | Check post status | Checks back with Blotato to determine if the post is published, in progress, or failed. | | Published? | Checks if the status is "published" to send the success message. | | In Progress? | Checks if the post is still being processed. If so, it loops back to the next wait period. | | Give Blotat other 5s :) | Pauses the workflow before re-checking the post status, preventing unnecessary API calls. | 4\. Final Notification | Node Name | Role in Workflow | | :--- | :--- | | Send a confirmation message | Sends a confirmation message and the direct link to the published LinkedIn post. | | Send an error message | Sends a notification if the post failed to upload or encountered an error during processing. | 🛠️ Personalizing Your Content Bot The true power of this n8n workflow lies in its flexibility. You can easily modify key components to match your unique brand voice and technical preferences. 1\. Tweak the Content Creator Prompt The personality, tone, and formatting rules for your LinkedIn content are all defined in the System Prompt. Where to find it: Inside the AI: Draft & Revise Post node, under the System Message setting. What to personalize: Adjust the tone, change the formatting rules (e.g., number of hashtags, required emojis), or insert specific details about your industry or target audience. 2\. Switch the AI Model or Provider You can easily swap the language model used for generation. Where to find it: The OpenAI Chat Model node. What to personalize: Model: Swap out the default model for a more powerful or faster alternative (e.g., gpt-4 family, or models from other providers if you change the node). Provider: You can replace the entire Langchain block (including the AI Model and Window Buffer Memory nodes) with an equivalent block using a different provider's Chat/LLM node (e.g., Anthropic, Cohere, or Google Gemini), provided you set up the corresponding credentials and context flow. 3\. Modify Publishing Behavior (Schedule vs. Post) The final step is currently set to publish immediately, but you might prefer to schedule posts. Where to find it: The Create post with Blotato node. What to personalize: Consult the Blotato documentation for alternative operations. Instead of choosing the "Create Post" operation (which often posts immediately), you can typically select a "Schedule Post" or "Add to Queue" operation within the Blotato node. If scheduling, you will need to add a step (e.g., a Set node or another agent prompt) before publishing to calculate and pass a Scheduled Time parameter to the Blotato node.
by Onur
Template Description: > Never run out of high-quality LinkedIn content again. This workflow is a complete content factory that takes a simple topic from a Google Sheet, uses AI to research a trending angle, writes a full post, generates a unique and on-brand image, and publishes it directly to your LinkedIn profile. This template is designed for brands and creators who want to maintain a consistent, high-quality social media presence with minimal effort. The core feature is its ability to generate visuals that adhere to a specific, customizable brand style guide. 🚀 What does this workflow do? Pulls content ideas from a Google Sheet acting as your content calendar. Uses an AI Researcher (OpenAI + SerpAPI) to find the most recent and engaging news or trends related to your topic. Employs an AI Writer to draft a complete, professional LinkedIn post with a catchy title, engaging text, and relevant hashtags. Generates a unique, on-brand image for every post using Replicate, based on a customizable style guide (colors, composition, mood) defined within the workflow. Publishes the post with its image** directly to your LinkedIn profile. Updates the status** in your Google Sheet to "done" to avoid duplicate posts. 🎯 Who is this for? Marketing Teams:** Automate your content calendar and ensure brand consistency across all visuals. Social Media Managers:** Save hours of research, writing, and design work. Solopreneurs & Founders:** Maintain an active, professional LinkedIn presence without a dedicated content team. Content Creators:** Scale your content production and focus on strategy instead of execution. ✨ Benefits End-to-End Automation:** From a single keyword to a published post, the entire process is automated. Brand Consistency:** The AI image generator follows a strict, customizable style guide, ensuring all your visuals feel like they belong to your brand. Always Relevant Content:** The AI research step ensures your posts are based on current trends and news, increasing engagement. Massive Time Savings:** Automates research, copywriting, and graphic design in one seamless flow. Content Calendar Integration:** Easily manage your content pipeline using a simple Google Sheet. ⚙️ How it Works Get Topic: The workflow fetches the next "Pending" topic from your Google Sheet. AI Research: An AI Agent uses SerpAPI to research the topic and identify a viral angle. AI Writing: A second AI Agent takes the research and writes the full LinkedIn post. Generate Image Prompt: A Code node constructs a detailed prompt, merging the post's content with your defined brand style guide. Generate Image: The prompt is sent to Replicate. The workflow waits and checks periodically until the image is ready. Publish: The generated text and image are published to your LinkedIn account. Update Status: The workflow archives the image to Google Drive and updates the topic's status in your Google Sheet to "done". 📋 n8n Nodes Used Google Sheets Langchain Agent (with OpenAI & SerpAPI) Code HTTP Request Wait / If LinkedIn Google Drive 🔑 Prerequisites An active n8n instance. Google Account** with Sheets & Drive access (OAuth2 Credentials). OpenAI Account & API Key**. SerpAPI Account & API Key** (for the research tool). Replicate Account & API Token**. LinkedIn Account** (OAuth2 Credentials). A Google Sheet** with "Topic" and "Status" columns. 🛠️ Setup Import the workflow into your n8n instance. Configure All Credentials: Go through the workflow and connect your credentials for Google, OpenAI, SerpAPI, Replicate, and LinkedIn in their respective nodes. Link Your Google Sheet: In the 1. Get Pending Topic... node, select your spreadsheet and sheet. Do the same for the final 8. ...Update Status node. Customize Your Brand Style (Highly Recommended): In the 4. Generate Branded Image Prompt (Code) node, edit the fixedImageStyleDetails variable. Change the RAL color codes and descriptive words to match your brand's visual identity. Populate Your Content Calendar: Add topics to your Google Sheet and set their status to "Pending". Activate the workflow!
by Simeon Penev
Who’s it for Growth, marketing, sales, and founder teams that want a decision-ready Ideal Customer Profile (ICP)—grounded in their own site content. How it works / What it does On form submission* collects *Website URL* and *Business Name** and redirects to Google Drive Folder after the final node. Crawl and Scrape the Website Content* - crawls and scrape *20 pages** from the website. ICP Creator* builds a *Markdown ICP** with: A) Executive Summary B) One-Pager ICP C) Tiering & Lead Scoring D) Demand Gen & ABM Plays E) Evidence Log F) Section Confidence Facts vs. Inferences, confidence scores and tables. Markdown to Google Doc* converts Markdown to Google Docs batchUpdate requests. Then this is used in *Update a document** for updating the empty doc. Create a document* + *Update a document* generate *“ICP for <Business Name>”** in your Drive folder and apply formatting. How to set up 1) Add credentials: Firecrawl (Authorization header), OpenAI (Chat), Google Docs OAuth2. 2) Replace placeholders: {{API_KEY}}, {{google_drive_folder_id}}, {{google_drive_folder_url}}. 3) Publish and open the Form URL to test. Requirements Firecrawl API key • OpenAI API key • Google account with access to the target Drive folder. Resources Google OAuth2 Credentials Setup - https://docs.n8n.io/integrations/builtin/credentials/google/oauth-generic/ OpenAI API key - https://docs.n8n.io/integrations/builtin/credentials/openai/ Firecrawl API key - https://take.ms/lGcUp
by Easy8.ai
Auto-Generate SEO FAQ Answers from Google Sheets with OpenAI Intro/Overview This workflow automates the process of generating SEO-optimized FAQ answers using AI, pulling questions from a Google Sheet and writing answers back into the same sheet. It’s ideal for content marketers, SEO specialists, and digital teams looking to scale FAQ content generation with minimal manual input. By combining the power of Google Sheets, AI, and WordPress, the workflow transforms raw questions into structured, keyword-targeted answers tailored for specific audiences — ready for use on landing pages, blogs, or help centers, and automatically publishes them as WordPress posts. How it works Schedule Trigger**: Executes the workflow at a set interval to check for new or unprocessed questions in the Google Sheet. Get Questions from Sheet**: Reads from a specific Google Sheet, targeting columns for: Question (FAQ prompt) KW (target SEO keyword) Audience (intended reader) Article (desired WordPress post title) Filter**: Ensures only rows without an existing answer are processed (i.e., empty "Answer" column). Generate FAQ Answer**: Passes the question, keyword, and audience to the OpenAI Chat Model using a structured prompt to generate: A concise TL;DR-style summary A detailed, SEO-optimized markdown-formatted answer OpenAI Chat Model**: Utilizes GPT-4 Turbo with a controlled temperature (0.7) and token limit (1000) to produce structured, on-brand, keyword-optimized content. Parse FAQ Answer**: Extracts and formats the AI response into separate fields for writing back to the sheet. Update Sheet with Answer**: Writes the AI-generated answer into the Answer column of the same row in the source Google Sheet. WordPress Node**: Publishes each generated answer as a new WordPress post Uses “Create Post” operation Title: Taken from the Article column in the sheet Content: Uses the detailed AI-generated answer Requires valid WordPress credentials (REST API / Application Password) How to Use Importing the Workflow Download or import the workflow JSON into your n8n instance. Credential Setup Connect your Google Sheets credentials. Add your OpenAI API Key in the relevant node. Connect your WordPress credentials for content publishing. Node Assignment Update the following: Google Sheet ID Sheet range (ensure it includes all relevant columns) Timezone & Schedule Adjust the Schedule Trigger node to match your preferred time and frequency (e.g., every weekday at 9 AM). Testing Guidance Add a few sample FAQ entries in your sheet. Run the workflow manually to verify: Prompt quality Answer accuracy Proper sheet update Successful WordPress post creation Example Use Cases Marketing teams generating bulk FAQ content for landing pages SEO professionals creating keyword-optimized responses for user queries Agencies producing personalized FAQ sections for multiple client niches SaaS companies automating knowledge base content with targeted messaging Content teams publishing AI-generated FAQs directly to WordPress blogs Requirements ✅ Google Account with access to the target Google Sheet ✅ OpenAI API Key (GPT-4 Turbo or equivalent) ✅ WordPress account with REST API or Application Password access ✅ Google Sheet with the following columns: Question: The FAQ prompt KW: Target keyword for SEO Audience: Intended reader persona Article: Desired WordPress post title Answer: Output column (leave empty initially) Customization (Optional Section) Tone & Style**: Modify the system prompt to reflect your brand voice (e.g., friendly, expert, concise). Model**: Use a different AI model (e.g., Gemini, Claude, or OpenAI GPT-4.1). Output Format**: Adjust the markdown output to use different heading levels, bullet styles, or HTML if required. Audience Logic**: Expand the input options to fine-tune responses for more specific demographics or buyer personas. Multi-output Options**: Extend the workflow to post content to Notion, CMS, or documentation platforms alongside Google Sheets and WordPress. This automation accelerates content creation, automatically keeps your FAQ sections SEO-friendly, and publishes the results directly to WordPress — keeping your content pipeline running hands-free once deployed.
by plemeo
Who’s it for Social-media managers, growth hackers, and brands who want to keep their Instagram accounts active by auto-liking posts from specific profiles they track—without scrolling feeds manually. How it works / What it does Schedule Trigger runs every 2 h. Profile Post Extractor pulls up to 20 recent posts from each Instagram profile in your CSV. Select Cookie rotates Instagram session-cookies. Get Random Post picks one and checks against instagram_posts_already_liked.csv. Builds instagram_posts_to_like.csv, uploads to SharePoint. Phantombuster Autolike Agent likes the post. Liked URLs are appended to prevent duplicates. Wait nodes throttle activity (~12 likes/profile/day). How to set up Add credentials: Phantombuster API, SharePoint OAuth2. In SharePoint › “Phantombuster” folder create: • instagram_session_cookies.txt (one per line). • instagram_posts_already_liked.csv (header postUrl). • profiles_instagram.csv with profile URLs. Adjust schedule if needed. Activate the workflow—likes will run automatically. Requirements n8n 1.33+ Phantombuster Growth plan Microsoft 365 SharePoint tenant How to customize Add/remove tracked profiles in profiles_instagram.csv. Adjust throttle by changing Wait intervals. Swap SharePoint for Google Drive/Dropbox if needed.
by Oneclick AI Squad
This n8n workflow automates task creation and scheduled reminders for users via a Telegram bot, ensuring timely notifications across multiple channels like email and Slack. It streamlines task management by validating inputs, storing tasks securely, and delivering reminders while updating statuses for seamless follow-up. Key Features Enables users to create tasks directly in chat via webhook integration. Triggers periodic checks for due tasks and processes them individually for accurate reminders. Routes reminders to preferred channels (Telegram, email, or Slack) based on user settings. Validates inputs, handles errors gracefully, and logs task data for persistence and auditing. Workflow Process The Webhook Entry Point node receives task creation requests from users via chat (e.g., Telegram bot), including details like user ID, task description, and channel preferences. The Input Validation node checks for required fields (e.g., user ID, task description); if validation fails, it routes to the Error Response node. The Save to Database node stores validated task data securely in a database (e.g., PostgreSQL, MongoDB, or MySQL) for persistence. The Success Response node (part of Response Handlers) returns a confirmation message to the user in JSON format. The Schedule Trigger node runs every 3 minutes to check for pending reminders (with a 5-minute buffer for every hour to avoid duplicates). The Fetch Due Tasks node queries the database for tasks due within the check window (e.g., reminders set for within 3 minutes). The Tasks Check node verifies if fetched tasks exist and are eligible for processing. The Split Items node processes each due task individually to handle them in parallel without conflicts. The Channel Router node directs reminders to the appropriate channel based on task settings (e.g., email, Slack, or Telegram). The Email Sender node sends HTML-formatted reminder emails with task details and setup instructions. The Slack Sender node delivers Slack messages using webhooks, including task formatting and user mentions. The Telegram Sender node sends Telegram messages via bot API, including task ID, bot setup, and conversation starters. The Update Task Status node marks the task as reminded in the database (e.g., updating status to "sent" with timestamp). The Workflow Complete! node finalizes the process, logging completion and preparing for the next cycle. Setup Instructions Import the workflow into n8n and configure the Webhook Entry Point with your Telegram bot's webhook URL and authentication. Set up database credentials in the Save to Database and Fetch Due Tasks nodes (e.g., connect to PostgreSQL or MongoDB). Configure channel-specific credentials: Telegram bot token for Telegram Sender, email SMTP for Email Sender, and Slack webhook for Slack Sender. Adjust the Schedule Trigger interval (e.g., every 3 minutes) and add any custom due-time logic in Fetch Due Tasks. Test the workflow by sending a sample task creation request via the webhook and simulating due tasks to verify reminders and status updates. Monitor executions in n8n dashboard and tweak validation rules or response formats as needed for your use case. Prerequisites Telegram bot setup with webhook integration for task creation and messaging. Database service (e.g., PostgreSQL, MongoDB, or MySQL) for task storage and querying. Email service (e.g., SMTP provider) and Slack workspace for multi-channel reminders. n8n instance with webhook and scheduling enabled. Basic API knowledge for bot configuration and channel routing. Modification Options Customize the Input Validation node to add fields like priority levels or recurring task flags. Extend the Channel Router to include additional channels (e.g., Microsoft Teams or SMS via Twilio). Modify the Schedule Trigger to use dynamic intervals based on task urgency or user preferences. Enhance the Update Task Status node to trigger follow-up actions, like archiving completed tasks. Adjust the Telegram Sender node for richer interactions, such as inline keyboards for task rescheduling. Explore More AI Workflows: Get in touch with us for custom n8n automation!
by Jose Bossa
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 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 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) 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 documentId with 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 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