by Bakdaulet Abdikhan
Generate and publish Instagram carousels automatically Turn a single topic into a published Instagram Carousel in minutes. Creating educational carousel posts usually takes hours: writing the script, designing the slides in Figma/Canva, exporting images, and scheduling. This workflow automates the entire pipeline using Gemini AI, Google Slides, and the Meta Graph API. It generates the content, designs the visuals by manipulating a template, and publishes the carousel directly to your Instagram Business account. 🚀 What this workflow does Script Generation: Runs daily (or on demand) to prompt Google Gemini to write a 6-slide educational script (Hook, Mistake, Why It Matters, Value, Tip, CTA). Design Automation: Copies a master Google Slides template. Uses a "Find & Replace" operation to insert the AI-generated text into the correct placeholders. Generates thumbnail images for each slide. Image Hosting: Uploads the slide images to ImgBB to get public URLs (required by Meta's API). Publishing: Creates a carousel container on Instagram using the Meta Graph API. Checks the container status until it is "FINISHED". Publishes the media to your feed. Logging: Records the post details, captions, and status in Google Sheets. 💡 Key Features True Design Automation:** Doesn't just overlay text on images; it uses real Google Slides templates, allowing for complex layouts and branding. Smart Polling:** Includes a "Wait & Check" loop to ensure the media container is fully processed by Facebook before attempting to publish (prevents API errors). Structured Content:** The AI is prompted to follow a proven "Viral Educational" framework (Hook -> Value -> Action). Asset Management:** Automatically organizes generated slide images and links in Google Sheets for your archives. 🛠️ Prerequisites Google Cloud:** Enabled APIs for Drive, Slides, Sheets, and Gemini. Meta Developer App:** An Instagram Business account connected to a Facebook Page, with a System User token (instagram_basic, instagram_content_publish, pages_read_engagement). ImgBB Account:** A free API key for temporary image hosting. Templates:** A Google Sheet and Google Slide template (links provided in the workflow sticky notes). 📝 Setup Instructions Resources: Copy the provided Google Sheet and Slide templates to your Drive. Credentials: Authenticate Google, Meta, and ImgBB in n8n. Configuration: Update the Google Drive node with your Slide Template ID. Update the Google Sheets nodes with your Sheet ID. Update the HTTP Request nodes with your ImgBB API Key and Instagram Account ID. Run: Activate the schedule or click "Execute" to generate your first post! Need help setting this up or want a custom automation for your agency? I specialize in building agentic workflows for consultants and agencies. 📧 Contact me: bakdaulet.mph@gmail.com
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 Ruben AI
LinkedIn DM Automation Overview Effortlessly scale personalized LinkedIn outreach using a no-code automation stack. This template provides a powerful, user-friendly system for harvesting leads from LinkedIn posts and managing outreach—all within Airtable and n8n. Features & Highlights Actionable Input:** Simply enter a LinkedIn post URL to kickstart the engine—no browser scraping or manual work needed. Lead Harvesting:** Automatically scrape commenters, likers, and profile data using Unipile’s API access. Qualification Hub:** Easily review and qualify leads right inside Airtable using custom filters and statuses. Automated Campaign Flow:** n8n handles the sequence—from sending connection requests (adhering to LinkedIn limits) to delivering personalized DMs upon acceptance. Unified Dashboard:** Monitor campaign progress, connection status, and messaging performance in real time. Flexible & Reusable:** Fully customizable for your own messaging, filters, or UD campaigns—clone, adapt, and deploy. Why Use This Template? ++Zero-code friendly:++ Ideal for entrepreneurs, sales professionals, and growth teams looking for streamlined, scalable outreach. ++Transparent and compliant:++ Built with Airtable UI and compliant API integration—no reliance on browser automation or unofficial methods. ++Rapid Deployment:++ Clone and launch your automation in under 30 minutes—no dev setup required. Setup Instructions Import the template into your n8n workspace. Connect your Airtable and Unipile credentials. Configure LinkedIn post input, filters, and DM templates in Airtable. Run the workflow and monitor results directly from Airtable or n8n. Use Cases Capture inbound leads from your viral LinkedIn posts. Qualify and nurture prospects seamlessly without manual follow-ups. Scale outreach with precision and personalization. YouTube Explanation You can access the video explanation of how to use the workflow: Explanation Video
by System Admin
Grab our list of chats from Airtable to send a random recipe. If the chat ID isn't in our airtable, we add it. This is to send a new recipe daily. . https://spoonacular.com/food-api/docs. https://spoo...
by Xiaoyuan Zhang
Description This workflow transforms your quick event notes into polished LinkedIn posts. Simply send a message via Telegram with your event name and personal notes, and the system will match it with your calendar events, generate a professional LinkedIn post. And even if you don't feel like posting it on LinkedIn, it still serves you because it saves everything to your database for future reference. In this way you can build a personal library of your professional networking activities and insights! Who Is This For? Professional Networkers: Business professionals who attend events regularly and want to share insights on LinkedIn without spending time on content creation. Event Enthusiasts: Conference attendees, meetup participants, and workshop goers who want to document and share their experiences professionally. Busy Professionals: Anyone who wants to maintain an active LinkedIn presence but lacks time to craft posts from scratch after events. What Problem Does This Workflow Solve? After attending events, I struggle with several challenges: Time Constraints: Writing thoughtful LinkedIn posts takes time. Writer's Block: Difficulty transforming my raw notes and experiences into engaging social media content. Data Organization: Keeping track of event details, personal insights, and networking opportunities in one place. How It Works Telegram Input: Send a message to your Telegram bot with the format "Event Name: Your personal notes" Message Parsing: The system extracts the event name and your personal notes from the message Calendar Matching: Searches your Google Calendar for events from the past 7 days that match the event name Data Enrichment: Combines your personal notes with event details (date, location, attendees) from your calendar AI Content Generation: Uses Claude Opus 4 to transform your notes into a professional LinkedIn post with relevant hashtags Database Storage: Saves the complete event information and generated LinkedIn post to Supabase Ready to Post: Provides you with a polished LinkedIn post ready for publication Setup Instructions n8n (Cloud or self-hosted) Telegram Bot (Create via @BotFather) Google Calendar API (OAuth2 credentials) Anthropic API (Claude access) Supabase (Database and API credentials) My Supabase table consists these columns: Event Date (datetime) Event Title (text) Location (text) Personal Notes (text) LinkedIn Post (text) Created Date (datetime) This workflow transforms the tedious task of creating LinkedIn content into an automated, intelligent system that helps you maintain an active professional presence while building a valuable archive of your networking and learning experiences.
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 ConnectSafely
Send Personalized DMs to LinkedIn Profile Visitors Who's it for This workflow is built for sales professionals, recruiters, founders, and networkers who want to automatically reach out to people who viewed their LinkedIn profile. Perfect for anyone who knows that profile visitors are warm leads but doesn't have time to manually check who visited, craft personalized messages, and send outreach one by one. If you're doing outbound sales, recruiting talent, building partnerships, or simply want to convert curiosity into conversations, this automation turns passive profile views into active outreach opportunities. How it works The workflow automatically identifies LinkedIn profile visitors and sends them personalized messages based on their connection status. The process flow: Scheduled trigger runs weekly (or manually) to fetch recent profile visitors ConnectSafely.ai API retrieves all visitors from the past 7 days Splits visitors into individual records for processing Checks Google Sheets to avoid messaging the same person twice Routes based on connection degree: 1st-degree connections → Sends a personalized DM 2nd/3rd-degree connections → Sends a connection request with message Logs all outreach to Google Sheets for tracking Waits between messages to maintain natural activity patterns Loop continues until all visitors are processed Setup steps Step 1: Configure ConnectSafely.ai API Credentials Obtain API Key Create an account at ConnectSafely.ai Connect your LinkedIn account in the dashboard Navigate to Settings → API Keys Generate a new API key Add Bearer Auth Credential in n8n Go to Credentials in n8n Click Add Credential → HTTP Bearer Auth Name it "ConnectSafely.ai API" Paste your API key Save the credential This credential is used by all three HTTP Request nodes: Fetch Profile Visitors, Send DM, and Send Connection Request. Step 2: Configure Google Sheets Integration 2.1 Create Your Tracking Sheet Create a new Google Sheet with the following columns: | Column Name | Description | |-------------|-------------| | Name | Visitor's full name | | Linkedin URL | Visitor's profile URL | | Status | Outreach status (DONE) | 2.2 Connect Google Sheets Account Go to Credentials → Add Credential → Google Sheets OAuth2 Follow the OAuth flow to connect your Google account Grant access to Google Sheets 2.3 Update All Google Sheets Nodes There are three Google Sheets nodes that need configuration: Check if Already Contacted - Looks up existing contacts Log DM Sent to Sheet - Records DMs sent Log Connection Request to Sheet - Records connection requests For each node: Open the node Replace YOUR_GOOGLE_SHEET_ID with your actual sheet ID (from the URL) Select the correct sheet name Save Step 3: Customize Your Message Templates The workflow includes two Code nodes with message templates that you must customize: For Connected Users (DMs) Open the "Generate DM for Connected User" node and update: // Sender footer - CUSTOMIZE THIS const footer = \n\n— Your Name; // Message bodies - CUSTOMIZE THESE const messages = [ "Noticed you recently checked out my profile... I've been working on [YOUR PRODUCT] — [BRIEF DESCRIPTION].", // Add more variations... ]; For New Connections (Connection Requests) Open the "Generate Message for New Connection" node and update the same sections with your product/service details. Tips for good messages: Keep under 300 characters for connection requests Personalize with their name (already included) Mention something specific about why you're reaching out Include a clear but soft call-to-action Have 3-5 variations to avoid repetitive messaging Step 4: Adjust the Schedule Open the Weekly Schedule Trigger node Adjust based on your profile traffic: High traffic: Daily Medium traffic: Every 3 days Low traffic: Weekly (default) Step 5: Test the Workflow Click Test Workflow on the Schedule Trigger or add a Manual Trigger Verify: Profile visitors are fetched correctly Deduplication works (no existing contacts get messaged) Connection degree routing works properly Messages are personalized with visitor names Google Sheets logs entries correctly Customization Time Range for Visitors Edit the JSON body in the Fetch Profile Visitors node: {"timeRange":"past_7_days","start":0,"fetchAll":true} Options: past_7_days - Last week's visitors (default) past_30_days - Last month's visitors past_90_days - Last quarter's visitors Message Personalization Both Code nodes support multiple message variations. The workflow randomly selects one for each visitor, making your outreach feel more natural. To add more variations: Open the relevant Code node Add new message strings to the messages array Use placeholders like [YOUR PRODUCT] and replace with your actual content Wait Time Between Messages The Wait Between Messages node adds delays between outreach. Adjust the duration to: Increase if you want more conservative pacing Decrease if you have premium LinkedIn and higher limits Recommended: 1-5 minutes between messages Add More Tracking Fields To track additional data in Google Sheets: Add columns to your sheet (e.g., Message Sent, Connection Degree, Date) Update the Google Sheets nodes to map these new fields Pull data from the workflow context using expressions Filter by Company or Title Want to only message visitors from specific companies or with certain titles? Add an IF node after Skip if Already Contacted Add conditions based on visitor data fields Route non-matching visitors directly to the Wait node Use Cases Sales Prospecting**: Automatically reach out to decision-makers who are researching you before a sales cycle Recruiting**: Engage passive candidates who are checking out your profile after seeing job posts Founder Networking**: Connect with investors, partners, and potential hires who show interest Consulting/Freelance**: Convert profile visitors into discovery calls by reaching out while you're top of mind Personal Branding**: Build your network by engaging everyone who takes time to view your profile Troubleshooting Common Issues & Solutions Issue: No visitors returned from API Solution**: Ensure your LinkedIn account is connected in ConnectSafely.ai dashboard. Also verify you've had recent profile views (check LinkedIn's native viewer count). Issue: Duplicate messages being sent Solution**: Verify the Google Sheets lookup is working correctly. Check that the Linkedin URL column matches exactly what the API returns. Make sure all three Google Sheets nodes point to the same sheet. Issue: Messages not sending Solution**: Check your ConnectSafely.ai API key is valid. Verify the HTTP Request nodes have the Bearer Auth credential attached. Check the API response for error messages. Issue: Wrong message type sent (DM vs Connection Request) Solution: The routing is based on connectionDegree field. Verify this field is being returned correctly from the API. Check the **Check if 1st Degree Connection node conditions. Issue: Profile ID extraction failing Solution: The **Extract Profile ID from URL Code node parses the LinkedIn URL. Check that visitors have valid navigationUrl values. Issue: Google Sheets not updating Solution**: Verify your Google Sheets credential has write access. Check that the sheet ID is correct and the sheet name matches. Issue: Rate limit errors Solution: Increase the wait time in the **Wait Between Messages node. Consider reducing the frequency of the schedule trigger. Rate Limiting Best Practices LinkedIn monitors automated activity. To stay safe: Start slow**: Begin with 10-15 messages per day Gradually increase**: Add 5 more per week up to 50/day max Use random delays**: The workflow includes built-in waits Pause if warned**: If LinkedIn shows any warnings, stop for 24-48 hours Keep messages personal**: Avoid spammy, salesy language Don't run 24/7**: Schedule during business hours Costs & Considerations | Service | Cost | |---------|------| | ConnectSafely.ai | Free trial available, then subscription | | Google Sheets | Free | | n8n | Free (self-hosted) or cloud pricing | No per-message costs - ConnectSafely.ai subscription includes API access for messaging. Documentation & Resources Official Documentation ConnectSafely.ai Docs**: https://connectsafely.ai/docs ConnectSafely.ai API Reference**: Available in dashboard Google Sheets API**: https://developers.google.com/sheets Support Channels Email Support**: support@connectsafely.ai Documentation**: https://connectsafely.ai/docs Custom Workflows**: Contact us for custom automation Connect With Us Stay updated with the latest automation tips and LinkedIn strategies: LinkedIn**: linkedin.com/company/connectsafelyai YouTube**: youtube.com/@ConnectSafelyAI-v2x Instagram**: instagram.com/connectsafely.ai Facebook**: facebook.com/connectsafelyai X (Twitter)**: x.com/AiConnectsafely Bluesky**: connectsafelyai.bsky.social Mastodon**: mastodon.social/@connectsafely Need Custom Workflows? Looking to build sophisticated LinkedIn automation workflows tailored to your business needs? Contact our team for custom automation development, strategy consulting, and enterprise solutions. We specialize in: Multi-channel engagement workflows AI-powered personalization at scale Lead scoring and qualification automation CRM integration and data synchronization Custom reporting and analytics pipelines
by giangxai
Description Automatically turn a simple Telegram message into fully researched, AI-generated visual content and publish it to multiple social platforms using Blotato — with async processing control and built-in status validation. This workflow creates a complete: Telegram → AI → Research → Visual → Publish → Confirm automation pipeline. Who is this for? This template is ideal for: Content creators automating daily posting Solopreneurs building a 24/7 AI content engine Agencies managing multiple social accounts AI automation builders integrating Telegram + Blotato Teams that want a Chat → Publish pipeline If you want to control your entire content system from a single Telegram chat, this workflow is for you. What problem is this workflow solving? Manual content production usually requires: Researching topics manually Switching between AI writing tools and design tools Waiting for rendering without clear status updates Posting separately to each platform No centralized confirmation system This workflow connects research, media generation, publishing, and confirmation into one automated orchestration system. What this workflow does This automation workflow: Accepts a topic or request via Telegram Bot Sends the message to an AI Content Orchestrator Uses AI model + conversation memory for context Creates a Source job via Blotato (research stage) Waits for structured content extraction Retrieves processed research data Creates a Visual generation job (infographic or slideshow) Waits for AI rendering Retrieves final media asset Publishes automatically to: Instagram LinkedIn Sends confirmation back to Telegram Workflow pattern used Trigger → Analyze → Create → Wait → Retrieve → Validate → Publish → Confirm Setup 1. Configure Telegram Trigger Use Telegram Bot Trigger Connect your Telegram Bot token Set update type to message Ensure bot permissions are enabled This is the entry point of the system. 2. Configure AI Core (Orchestrator) Connect: AI Chat Model Conversation Memory storage Ensure: User message is mapped correctly into the AI prompt Memory is attached for contextual responses Output is structured for downstream routing 3. Configure Blotato Research Engine Create Source Connect Blotato credentials Map topic/content request correctly Store Source ID Wait for Source Processing Add a Wait node Adjust delay based on API performance Get Source Retrieve structured research output Validate status = completed Only completed sources proceed to visual generation. 4. Configure Blotato Media Engine Create Visual Connect Blotato credentials Map structured content into visual prompt Select infographic or slideshow format Wait for Rendering Adjust timing based on rendering duration Get Visual Retrieve generated media Validate status = completed 5. Configure Distribution Publish to Instagram Connect Instagram credentials Verify posting permissions Publish to LinkedIn Connect LinkedIn credentials Confirm correct profile or page selection Both platforms publish automatically once media is validated. 6. Configure Telegram Response Use Telegram Response Sender Send success confirmation Optionally include published links Add failure branch notification if needed This keeps the entire workflow controlled from one chat interface. How to customize this workflow You can extend this workflow by: Adding Telegram approval before publishing Generating AI captions and hashtags dynamically Adding retry logic for failed jobs Logging execution results into Google Sheets Expanding to Facebook or TikTok Adding analytics tracking Best practices Keep wait durations aligned with API speed Always validate job status before proceeding Maintain consistent ID mapping (Source ID / Visual ID) Monitor failed execution branches Test with simple content before scaling Nodes used in workflow Telegram Trigger AI Chat Model Memory Store HTTP Request (Blotato API) Wait Switch If Sticky Note Free or Paid? Depends on: Blotato plan AI model usage Social platform API limits This workflow transforms a Telegram message into a fully automated, multi-platform AI content system running 24/7 — including research, visual creation, publishing, and confirmation. (Watch the tutorial video on YouTube)[https://youtu.be/WdTimRjiiH8]
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
by Jamot
Send one WhatsApp message → Get AI-optimized content across 7+ social platforms. Who It's For Solopreneur managing multiple platforms on the go (X/Twitter, Instagram, LinkedIn, Facebook, TikTok, Threads, YouTube Shorts). What It Solves Eliminates 80% of manual content creation work while maintaining brand consistency across all channels. How It Works AI Content Generation GPT-4/Gemini creates platform-specific posts with hashtags, CTAs, and emojis Auto-generates images via OpenAI/Pollinations.ai SERP API finds relevant trending content Approval Workflow HTML email previews for human review Double-approval system via Gmail integration One-Click Publishing Instagram/Facebook (Graph API) X/Twitter (Official API) LinkedIn (Sales Navigator) Setup Requirements API keys: OpenAI, Gemini, social platform tokens, ImgBB, SERP API Gmail and Telegram for notifications Replace "your-unique-id" placeholders in API nodes Customization Content**: Edit AI prompts for brand voice Approval**: Modify email templates and thresholds Analytics**: Connect Google Sheets for tracking Images**: Switch between AI image generators
by ConnectSafely
Who's it for This workflow is built for sales professionals, recruiters, founders, and growth marketers who need to build targeted prospect lists from LinkedIn without risking their accounts. Perfect for anyone who wants to find decision-makers, build lead lists, or research target audiences at scale. If you're running outbound campaigns, building ABM lists, sourcing candidates, or doing competitive research, this automation handles LinkedIn searches and exports results directly to your Google Sheet—no browser cookies, no session hijacking, no ban risk. How it works The workflow automates LinkedIn people searches by leveraging ConnectSafely.ai's compliant API, then exports structured results to Google Sheets or JSON files. The process flow: Define your search parameters (keywords, location, job title, result limit) Execute the search via ConnectSafely.ai API Process and normalize the response data Export to Google Sheets for CRM import or further automation Optionally save as JSON file for data backup or processing No LinkedIn cookies required. No browser automation. Platform-compliant searches that won't get your account restricted. Watch the complete step-by-step implementation guide: LinkedIn Search Export Automation Tutorial Setup steps Step 1: Get Your ConnectSafely.ai API Credentials Obtain API Key: Log into ConnectSafely.ai Dashboard Navigate to Settings → API Keys Generate a new API key Copy your API key (you'll need this in the next step) Add Bearer Auth Credential in n8n: Go to Credentials in n8n Click Add Credential → HTTP Bearer Auth Paste your ConnectSafely.ai API key Save the credential Step 2: Configure Search Parameters Open the Set Search Parameters node and customize your search: | Parameter | Description | Example | |-----------|-------------|---------| | keywords | Search terms for profiles | CEO SaaS, Marketing Director | | location | Geographic filter | United States, San Francisco Bay Area | | title | Job title filter | Head of Growth, VP Sales | | limit | Maximum results to return | 100 (max varies by plan) | Pro Tips: Use specific keywords for better targeting Combine title + keywords for precision (e.g., keywords: "B2B" + title: "VP Sales") Start with smaller limits (25-50) for testing Step 3: Configure Google Sheets Integration 3.1 Connect Google Sheets Account Go to Credentials → Add Credential → Google Sheets OAuth2 Follow the OAuth flow to connect your Google account Grant access to Google Sheets 3.2 Prepare Your Google Sheet Create a new Google Sheet with the following columns (the workflow will auto-populate these): | Column Name | Description | |-------------|-------------| | profileUrl | LinkedIn profile URL | | fullName | Contact's full name | | firstName | First name | | lastName | Last name | | headline | LinkedIn headline/tagline | | currentPosition | Current job title | | company | Company name (extracted from headline) | | location | Geographic location | | connectionDegree | 1st, 2nd, or 3rd degree connection | | isPremium | LinkedIn Premium member (true/false) | | isOpenToWork | Open to work badge (true/false) | | profilePicture | Profile image URL | | extractedAt | Timestamp of extraction | 3.3 Configure the Export Node Open the Export to Google Sheets node Select your Google Sheets credential Enter your Document ID (from the sheet URL) Select the Sheet Name The column mapping is pre-configured for auto-mapping Step 4: Test the Workflow Click the Manual Trigger node Click Test Workflow Verify: Search executes successfully Results appear in the Format Results output Data exports to your Google Sheet JSON file is generated (optional) Customization Search Parameter Combinations Sales Prospecting: keywords: "B2B SaaS" location: "United States" title: "VP of Sales" limit: 100 Recruiting: keywords: "Python Machine Learning" location: "San Francisco Bay Area" title: "Senior Engineer" limit: 50 Founder Networking: keywords: "Seed Series A" location: "New York City" title: "Founder CEO" limit: 100 Extending the Workflow Add to CRM: Connect the Format Results output to HubSpot, Salesforce, or Pipedrive nodes Enrich Data: Add a loop to fetch full profile details for each result using the /linkedin/profile endpoint Chain with Outreach: Connect to the LinkedIn Connection Request Workflow to automatically send personalized invites to your search results Schedule Searches: Replace Manual Trigger with a Schedule Trigger to run daily/weekly searches Output Data Format Each result includes: { "profileUrl": "https://www.linkedin.com/in/johndoe", "profileId": "johndoe", "profileUrn": "urn:li:member:123456789", "fullName": "John Doe", "firstName": "John", "lastName": "Doe", "headline": "VP of Sales at TechCorp | B2B SaaS", "currentPosition": "VP of Sales", "company": "TechCorp", "location": "San Francisco, California", "connectionDegree": "2nd", "isPremium": true, "isOpenToWork": false, "profilePicture": "https://media.licdn.com/...", "extractedAt": "2024-01-15T10:30:00.000Z" } Use Cases Sales Prospecting: Build targeted lead lists of decision-makers at companies matching your ICP Recruiting & Talent Sourcing: Find passive candidates with specific skills and experience levels Market Research: Analyze competitor employee profiles and organizational structures Event Planning: Build invite lists for webinars, conferences, or virtual events Partnership Development: Identify potential partners and integration opportunities Investor Research: Find founders and executives at companies in specific stages/verticals Troubleshooting Common Issues & Solutions Issue: "No results found" error Solution:** Broaden your search parameters; try removing one filter at a time Issue: Empty company field in results Solution:** Company is extracted from headline; some profiles may not include company in their headline format Issue: API authentication errors Solution:** Verify your ConnectSafely.ai API key is valid and has proper permissions; check Bearer Auth credential format Issue: Google Sheets not updating Solution:** Confirm OAuth credentials are valid; check that the sheet has write permissions Issue: Fewer results than expected Solution:** LinkedIn limits search results; try more specific parameters or upgrade your ConnectSafely.ai plan Issue: Rate limit errors Solution:** Add delay between multiple searches; check your API plan limits Documentation & Resources Official Documentation ConnectSafely.ai Docs:** https://connectsafely.ai/docs API Reference:** Available in ConnectSafely.ai dashboard n8n HTTP Request Node:** https://docs.n8n.io/nodes/n8n-nodes-base.httpRequest Support Channels Email Support:** support@connectsafely.ai Documentation:** https://connectsafely.ai/docs Custom Workflows:** Contact us for custom automation Connect With Us Stay updated with the latest automation tips, LinkedIn strategies, and platform updates: LinkedIn:** linkedin.com/company/connectsafelyai YouTube:** youtube.com/@ConnectSafelyAI-v2x Instagram:** instagram.com/connectsafely.ai Facebook:** facebook.com/connectsafelyai X (Twitter):** x.com/AiConnectsafely Bluesky:** connectsafelyai.bsky.social Mastodon:** mastodon.social/@connectsafely Need Custom Workflows? Looking to build sophisticated LinkedIn automation workflows tailored to your business needs? Contact our team for custom automation development, strategy consulting, and enterprise solutions. We specialize in: Multi-channel prospecting workflows AI-powered lead scoring and qualification CRM integration and data synchronization Custom search and enrichment pipelines Bulk outreach automation with personalization
by Shreya Bhingarkar
What it does This workflow finds local businesses from Google Maps and automatically enriches them with emails, social profiles, AI summaries, and personalized outreach messages — all saved to Google Sheets. How it works Searches Google Maps using your custom queries Scrapes each business website for emails and contact info Finds missing social profiles (Instagram, Facebook, LinkedIn, Twitter, TikTok, YouTube) Validates emails and removes invalid ones Uses AI to generate a business summary and services list Writes a personalized outreach message for each lead Scores each lead from 0 to 10 based on digital presence Exports everything clean and organized to Google Sheets Who it is for Lead generation agencies Freelancers offering outreach as a service B2B sales and marketing teams Automation consultants Requirements Serper API key Google Sheets OAuth Email validation API Ollama or any LLM endpoint How to set up Connect your credentials in n8n Add your Google Sheet ID to the Sheets node Add your search queries like "bakery in Ohio" or "gyms in Delhi" Hit run and leads start filling your sheet automatically!