by CompanyEnrich
This n8n template automates turning your Closed-Won HubSpot deals into lookalike prospects using the CompanyEnrich Similar Companies API. Instead of manually guessing who looks like your best customers, this workflow takes your top-performing companies from HubSpot, finds highly similar companies and pushes the results into a Google Sheet ready for outreach or further enrichment. It’s ideal for GTM, sales, and growth teams who want to scale what already works. Good to know This workflow uses company domains as seeds for lookalike generation. Make sure your HubSpot company records have valid domains. Lookalike results are query-based, meaning the same company can appear in different runs if it matches the input at that moment. The Google Sheet uses the domain column to avoid duplicates when appending or updating rows. Credit usage depends on the number of similar companies returned by the CompanyEnrich API. How it works The Schedule Trigger runs the workflow on a defined interval (weekly by default). HubSpot companies are fetched using the HubSpot Get Companies node. A custom filter selects the top-performing companies (based on revenue percentile). Company domains are extracted and passed into the CompanyEnrich Similar Companies API. Similar companies are returned and split into individual rows. The enriched company data is cleaned and normalized. Results are appended or updated in a connected Google Sheet. How to use Connect your HubSpot app with company read access. Add your CompanyEnrich API key to the HTTP Request node. Connect your Google Sheets account and select a sheet with a domain column. Adjust the schedule or top-percentage filter if needed. Activate the workflow and let it run automatically. Requirements HubSpot app (Company read access) CompanyEnrich API key Google Sheets account n8n instance with HTTP and HubSpot nodes enabled Customising this workflow Change the Top_Percent value to control how many of your best customers are used as seeds. Modify the schedule interval to run daily, weekly, or on demand. Extend the workflow to push results into a CRM, enrichment pipeline, or outbound tool. Add additional filters (industry, location, employee size) before writing to Sheets.
by Ilyass Kanissi
🛠️ Smart Email Classifier Workflow Intelligent AI-powered email classification system that automatically sorts incoming Gmail messages into Business, Meetings, Cold Emails, and other categories using OpenAI. ⚡ Quick Setup Import this workflow into your n8n instance Setup your OpenAI credentials at: OpenAI api key Configure your Gmail credentials and you're ready to go: Google Cloud Console Activate the workflow to start automatic email classification 🔧 How it Works Gmail Trigger: Monitors incoming emails in real-time Text Classifier: AI-powered categorization using OpenAI Chat Model Smart Routing: Automatically sorts emails into predefined categories Gmail Integration: Adds appropriate labels and organizes emails automatically Fallback Handling: "No Operation" path for unclassifiable emails Every email gets intelligently sorted into: 🏢 Business Work-related correspondence Client communications Project updates 📅 Meetings Meeting invitations and requests Calendar-related emails Scheduling communications ❄️ Cold Emails Sales outreach and pitches Unsolicited business proposals Marketing communications 🔀 Random Personal emails Newsletters Miscellaneous content
by Neal Mcleod
🧠 FB Group Problem Solver - Auto - Generate Helpful Posts For: Business Owners, Community managers, coaches, consultants, and business owners who want to build authentic relationships in Facebook groups without spending hours scrolling and crafting responses. Pain Point Solved: Tired of manually browsing Facebook groups to find engagement opportunities? This workflow automatically discovers what your community is struggling with and writes genuine, helpful posts that position you as a trusted problem-solver. How It Works This workflow runs on autopilot to: Scan your target Facebook groups for recent posts Identify the most common problems and pain points Analyze the community's language and communication style Generate authentic, value-packed posts that solve real problems Save ready-to-publish content to your Google Sheet What You'll Need Google Sheets account (for group URLs and post storage) PAID Apify account with Facebook Groups Scraper actor OpenAI API key (GPT-4 recommended) n8n instance (self-hosted or cloud) Quick Setup Import workflow and connect your Google Sheets Add your Apify API key and configure the Facebook scraper Insert OpenAI API keys in the three AI nodes List your FB groups in the input sheet (URL, Name, Niche) Test manually, then schedule to run daily/weekly Results Get 2 post variations for each identified problem, written in the group's natural tone and style. Posts are non-promotional, genuinely helpful, and designed to spark engagement while building trust. Time saved: 3-5 hours per week of manual group monitoring and content creation
by Babish Shrestha
This Database SQL Query Agent convert natural language into sql query to get results Turn your PostgreSQL database into a conversational AI agent! Ask questions in plain English and get instant data results without writing SQL. ✨ What It Does Natural Language Queries**: "Show laptops under $500 in stock" → Automatic SQL generation Smart Column Mapping**: Understands your terms and maps them to actual database columns Conversational Memory**: Maintains context across multiple questions Universal Compatibility**: Works with any PostgreSQL table structure 🎯 Perfect For Business analysts querying data without SQL knowledge Customer support finding information quickly Product managers analyzing inventory/sales data Anyone who needs database insights fast 🚀 Quick Setup Step 1: Prerequisites n8n instance (cloud/self-hosted) PostgreSQL database with read access OpenAI API key/You can use other LLM as well Step 2: Import & Configure Import this workflow template into n8n Add Credentials: OpenAI API: Add your API key PostgreSQL: Configure database connection Set Table Name: Edit "Set Table Name" node → Replace "table_name" with your actual table Test Connection: Ensure your database user has SELECT permissions Step 3: Deploy & Use Start the workflow Open the chat interface Ask questions like: "Show all active users" "Find orders from last month over $100" "List products with low inventory" 🔧 Configuration Details Required Settings Table Name**: Update in "Set Table Name" node Database Schema**: Default is 'public' (modify SQL if different) Result Limit**: Default 50 rows (adjustable in system prompt) Optional Customizations Multi-table Support**: Modify system prompt and add table selection logic Custom Filters**: Add business rules to restrict data access Output Format**: Customize response formatting in the agent prompt 💡 Example Queries E-commerce "Show me all electronics under $200 that are in stock" HR Database "List employees hired in 2024 with salary over 70k" Customer Data "Find VIP customers from California with recent orders" 🛡️ Security Features Read-only Operations**: Only SELECT queries allowed SQL Injection Prevention**: Parameterized queries and validation Result Limits**: Prevents overwhelming queries Safe Schema Discovery**: Uses information_schema tables 🔍 How It Works Schema Discovery: Agent fetches table structure and column info Query Planning: Maps natural language to database columns SQL Generation: Creates safe, optimized queries Result Formatting: Returns clean, user-friendly data ⚡ Quick Troubleshooting No Results**: Check table name and ensure data exists Permission Error**: Verify database user has SELECT access Connection Failed**: Confirm PostgreSQL credentials and network access Unexpected Results**: Try more specific queries with exact column names 🎨 Use Cases Inventory Management**: "Show low-stock items by category" Sales Analysis**: "Top 10 products by revenue this quarter" Customer Support**: "Find customer orders with status 'pending'" Data Exploration**: "What are the unique product categories?" 🔧 Advanced Tips Performance**: Add database indexes on frequently queried columns Customization**: Modify the system prompt for domain-specific terminology Scaling**: Use read replicas for high-query volumes Integration**: Connect to Slack/Teams for team-wide data access Tags: AI, PostgreSQL, Natural Language, SQL, Business Intelligence, LangChain, Database Query Difficulty: Beginner to Intermediate Setup Time: 10-15 minutes
by InfyOm Technologies
✅ What problem does this workflow solve? Most e-commerce chatbots are transactional; they answer one question at a time and forget your context right after. This workflow changes that. It introduces a smart, memory-enabled shopping assistant that remembers user preferences, past orders, and previous queries to offer deeply personalized, natural conversations. ⚙️ What does this workflow do? Accepts real-time chat messages from users. Uses Zep Memory to store and recall personalized context. Integrates with: 🛒 Product Inventory 📦 Order History 📜 Return Policy Answers complex queries based on historical context. Provides: Personalized product recommendations Context-aware order lookups Seamless return processing Policy discussions with minimal user input 🧠 Why Context & Memory Matter Traditional bots: ❌ Forget what the user said 2 messages ago ❌ Ask repetitive questions (name, order ID, etc.) ❌ Can’t personalize beyond basic filters With Zep-powered memory, your bot: ✅ Remembers preferences (e.g., favorite categories, past questions) ✅ Builds persistent context across sessions ✅ Gives dynamic, user-specific replies (e.g., "You ordered this last week…") ✅ Offers a frictionless support experience 🔧 Setup Instructions 🧠 Zep Memory Setup Create a Zep instance and connect it via the Zep Memory node. It will automatically store user conversations and summarize facts. 💬 Chat Trigger Use the "When chat message received" trigger to initiate the conversation workflow. 🤖 AI Agent Configuration Connect: Chat Model → OpenAI GPT-4 or GPT-3.5 Memory → Zep Tools: Get_Orders – Fetch user order history from Google Sheets Get_Inventory – Recommend products based on stock and preferences Get_ReturnPolicy – Answer policy-related questions 📄 Google Sheets Store orders, inventory, and return policies in structured sheets. Use read access nodes to fetch data dynamically during conversations. 🧠 How it Works – Step-by-Step Chat Trigger – User sends a message. AI Agent (w/ Zep Memory): Reads past interactions to build context. Pulls memory facts (e.g., "User prefers men's sneakers"). Uses External Tools: Looks up orders, return policies, or available products. Generates Personalized Response using OpenAI. Reply Sent Back to the user through chat. 🧩 What the Bot Can Do 🛍 Suggest products based on past browsing or purchase behavior. 📦 Check order status and history without requiring the user to provide order IDs. 📃 Explain return policies in detail, adapting answers based on context. 🤖 Engage in more human-like conversations across multiple sessions. 👤 Who can use this? This is ideal for: 🛒 E-commerce store owners 🤖 Product-focused AI startups 📦 Customer service teams 🧠 Developers building intelligent commerce bots If you're building a chatbot that goes beyond canned responses, this memory-first shopping assistant is the upgrade you need. 🛠 Customization Ideas Connect with Shopify, WooCommerce, or Notion instead of Google Sheets. Add payment processing or shipping tracking integrations. Customize the memory expiration or fact-summarization rules in Zep. Integrate with voice AI to make it work as a phone-based shopping assistant. 🚀 Ready to Launch? Just connect: ✅ OpenAI Chat Model ✅ Zep Memory Engine ✅ Your Product/Order/Policy Sheets And you’re ready to deliver truly personalized shopping conversations.
by Khair Ahammed
Streamline your email list hygiene with this automated validation workflow that monitors Google Sheets for new email entries and instantly verifies their deliverability. Perfect for maintaining clean contact databases, reducing bounce rates, and ensuring successful email marketing campaigns. Key Features 📊 Real-Time Processing Monitors Google Sheets for new email entries every minute Automatic validation triggers when emails are added Instant deliverability status updates in the same spreadsheet 🔍 Dual Validation Sources Hunter.io API for comprehensive email verification EmailValidation.io API as backup validation service Cross-verification for higher accuracy ✅ Smart Filtering Skips empty email cells to prevent unnecessary API calls Processes only valid email formats Handles bulk email list uploads efficiently 📈 Seamless Integration Updates original spreadsheet with validation results Preserves existing data while adding deliverability status No manual intervention required after setup Workflow Components Processing Flow: Google Sheets Trigger monitors for new rows Filter removes empty email entries Email extraction and formatting Dual API validation (Hunter + EmailValidation.io) Status processing and formatting Automatic spreadsheet updates Use Cases Email Marketing: Clean lists before campaigns Lead Generation: Validate new prospect emails Database Maintenance: Regular email hygiene checks CRM Integration: Ensure contact data quality Setup Requirements Required: Google Sheets with email column Hunter.io API key EmailValidation.io API key Google Sheets OAuth2 credentials Benefits: Reduce email bounce rates Improve sender reputation Save costs on invalid email sends Maintain clean contact databases This workflow transforms manual email validation into an automated process, ensuring your email lists stay clean and deliverable without any manual effort. Tags: email-validation, google-sheets, hunter-io, data-cleaning, automation
by Robert Breen
🧑💻 Description This workflow connects SerpApi with OpenAI inside n8n to automate Google News monitoring and analysis. It’s built for market researchers, analysts, communications teams, and business leaders who need to stay on top of fast-changing news without wasting time scrolling through endless headlines. Instead of manually searching, this workflow automatically fetches news, groups it into meaningful categories, and recommends the most relevant articles. Problem it solves: Reduces time spent manually monitoring news. Helps track competitors, industries, or emerging trends. Provides structured, actionable insights from unstructured headline feeds. Disclaimer: this template can only be used on self-hosted installations. 📌 Use Cases Market Intelligence**: Track industry-specific news to guide strategy. Competitor Monitoring**: Automatically surface competitor mentions in the press. Research Support**: Organize articles into categories for academic or professional projects. Executive Briefings**: Deliver a curated daily digest to stakeholders. Trend Spotting**: Detect recurring topics to understand where coverage is growing. ⚙️ Setup Instructions Preconditions You need a self-hosted n8n instance (this template doesn’t run on n8n.cloud). A valid SerpApi account + API Key. An OpenAI API Key with billing enabled. Optional: Connected Slack, Email, or Google Sheets credentials if you plan to extend output. 1️⃣ Set Up SerpApi Connection Create a free account at SerpApi Copy your API Key from the dashboard In n8n → Credentials → New → SerpApi Paste your API Key → Save In the workflow, select your SerpApi credential in the Google News Search node. 2️⃣ Set Up OpenAI Connection Go to OpenAI Platform Navigate to Billing and ensure your account has credits/funding Copy your API Key into the OpenAI credentials in n8n 🧠 Workflow Breakdown Chat Trigger → A user enters a search query (e.g., “EV market 2025”). Google News Search (SerpApi) → Fetches the latest headlines for that query. Split Out Links → Separates articles into individual items. Aggregate Node → Merges article titles and links into a structured list. OpenAI Agent → Summarizes, categorizes, and selects the most relevant article per category. Response Output → Returns a clean, categorized digest with clickable links. 🎛️ Customization Guidance Adjust Categories**: Change the OpenAI system prompt to return 3, 5, or 10 categories depending on the depth you want. Regional Focus**: Use SerpApi’s filters (gl=us, hl=en) to restrict results by geography or language. Delivery Methods**: Add Slack, Email, or Google Sheets nodes to automatically share the digest with your team. Automation Frequency: Add a **Schedule Trigger to run daily, weekly, or at custom intervals. Extended Analysis**: Modify the prompt to include sentiment analysis, top keywords, or executive summaries. Multi-Query Runs**: Duplicate the SerpApi node to monitor multiple industries or competitors in one workflow. 💬 Example Q&A Question: “What’s happening in renewable energy today?” Response: Policy**: “US expands solar subsidies” – [link] Innovation**: “New battery breakthrough announced” – [link] Market Moves**: “Wind energy stocks surge” – [link] Competition**: “Shell invests in offshore projects” – [link] Sustainability**: “Community solar initiatives expand” – [link] 📬 Contact Need help customizing this template (e.g., tracking multiple industries, adding auto-delivery, or integrating dashboards)? 📧 robert@ynteractive.com 🔗 Robert Breen 🌐 ynteractive.com
by Maneeshwar
Stop wasting time on video editing! This template is designed for content creators and marketers who need a fast, scalable way to convert simple text scripts into polished, shareable AI-generated videos and publish them automatically to Instagram. The workflow includes a critical human review step to maintain quality control. Prerequisites To use this template, you must have the following: An active n8n instance. An active Blotato account (required for the AI video generation and Instagram upload API access). The Blotato n8n node must be installed on your n8n instance. A configured Gmail node to handle the human approval step. How It Works (Workflow Breakdown) This automation efficiently moves your content from a text script to a live Instagram post: Script Input (Form Node): The workflow starts by accepting your script via a simple form input. Data Structuring (Information Extractor Node): The raw script is processed to arrange the information into a specific JSON schema, ensuring the Blotato Create Content node receives the correct input format required for AI video generation. AI Video Generation (Blotato Node): The process triggers the Blotato AI video generation. This process is set to run in a Queue mode. Status Check Loop (Loop, Wait, IF Nodes): Since video generation takes time, the workflow enters a loop: It uses a Wait node to pause for 80 seconds. It then uses the Blotato Get Video node, combined with an IF node, to check the generation status. This loop continues until the video is fully generated. Human Approval (Gmail Node): Once the video is generated, the hosted video link is sent to your Gmail. The email includes two interactive buttons: "Approve" and "Disapprove." Instagram Upload (Blotato Node): If you choose to "Approve" the video, the final step uses the Blotato node to automatically upload the finished video as an Instagram Reel. Setup Instructions Template Download:** The full, free template is available here: Template JSON Configuration Tutorial:** For a visual, step-by-step guide on configuring the Blotato node and setting up the workflow, please watch the full tutorial: YouTube Tutorial It takes 10 mins to configure the Workflow
by Matthew
Automated Personalized Email Icebreakers This workflow automates creating personalized email icebreakers. It reads leads from a Google Sheet, scrapes their company website, uses OpenAI to analyze the data and craft a unique opening line, and then saves that icebreaker back into the original sheet. How It Works Fetch Lead**: The workflow starts, loops through your leads, and pulls one from your Google Sheet. Scrape & Summarize**: It scrapes the lead's company website and uses a fast OpenAI model to summarize the key points about the company and the person. Generate Icebreaker**: This summary is then sent to a more powerful OpenAI model, which follows specific instructions to write a short, personalized icebreaker. Update Sheet**: The new icebreaker is saved back into the correct lead's row in your Google Sheet, using their email to match the record. Requirements An n8n instance. An OpenAI API key with available credits. A Google account with a Sheet for your leads. The Google Sheet must have columns for lead data (e.g., Email, Website, Company Name) and an empty column named icebreaker. The Email column must be unique for each lead. Setup Instructions Add Credentials: In n8n, add your OpenAI API key and connect your Google account via the Credentials menu. Configure Google Sheets Nodes: Select each of the two Google Sheets nodes (Client data and Add icebreaker to sheet). In each, choose your credential, select your spreadsheet and the specific sheet name, and ensure the column mapping is correct. Configure OpenAI Nodes: Select both OpenAI nodes (Summarising prospect data and Creating icebreaker) and choose your OpenAI credential from the dropdown. Verify Update Node: On the final Add icebreaker to sheet node, ensure the Operation is set to Append Or Update and the Matching Columns field is set to Email. Customization Options 💡 Trigger**: Change the manual start to an automatic trigger, like when a new row is added to the sheet or on a daily schedule (Cron). AI Prompt**: Modify the prompt in the "Creating icebreaker" node to change the tone, style, or length of the output. AI Model**: Experiment with different OpenAI models (like gpt-4o) for a different balance of cost, speed, and quality. Data Source**: Replace Google Sheets with a CRM like HubSpot or a database like Postgres.
by masaya kawabe
Who’s it for Social media managers, creators, and brand accounts that rely on retweets for reach but want an automated, hands-off cleanup after campaigns to keep profiles tidy and on-brand. What it does / How it works On a schedule, the workflow resolves your handle to a user ID, fetches recent tweets, filters retweets only, and safely unretweets them using batching and delays to respect rate limits. A dedicated CONFIG (Set Fields) node centralizes variables (e.g., target_username, max_results, batch_delay_minutes) so you can adjust behavior without touching logic. API endpoints used GET** /2/users/by/username/{username} – resolve handle → user ID GET** /2/users/{id}/tweets?tweet.fields=created_at,referenced_tweets – fetch recent tweets (identify retweets via referenced_tweets.type === "retweeted") DELETE** /2/users/{id}/retweets/{tweet_id} – unretweet Example response payloads GET /2/users/by/username/{username} { "data": { "id": "2244994945", "name": "Twitter Dev", "username": "TwitterDev" } } GET /2/users/{id}/tweets (truncated) { "data": [ { "id": "1760000000000000000", "text": "RT @someone: …", "referenced_tweets": [{ "type": "retweeted", "id": "1759999999999999999" }], "created_at": "2025-01-15T09:10:11.000Z" } ], "meta": { "result_count": 20 } } DELETE /2/users/{id}/retweets/{tweet_id} { "data": { "retweeted": false } } Use cases Brand hygiene:** Auto-unretweet promos after 48–72h. Campaign cadence:** Remove event retweets once the event ends. Feed freshness:** Clear low-priority retweets on a rolling basis. How to set up Open CONFIG (Set Fields) and replace placeholders: target_username = "your_handle" max_results = 100 (per fetch) batch_delay_minutes = 2 (throttle between batches) Connect X/Twitter credentials in n8n (no keys hard-coded in HTTP nodes). Run once with small values, verify logs, then enable the schedule. > Optional enhancements: add a dead-letter path (Error Trigger → Set → Sheets/Email/Slack) and a notification node (e.g., Slack) for execution feedback.
by Recrutei Automações
Overview: Automated Candidate Creation with AI Vacancy Matching This workflow automates the creation of new candidates in the Recrutei ATS directly from an n8n Form submission, ensuring a seamless "Apply Now" funnel. Its core feature is an AI Agent (OpenAI + Tool) that dynamically identifies the correct Recrutei vacancy_id based on the applicant's selection in the form. The workflow also automatically extracts the text content from the candidate's PDF curriculum and uploads it as an internal observation (note) to the profile. This template eliminates manual data entry, guarantees that candidates are associated with the correct vacancy, and makes the resume content easily searchable within your Recrutei ATS. Workflow Logic & Steps On Form Submission (Form Trigger): The workflow starts when a candidate submits the n8n Form, capturing Name, Email, Phone, the selected Vacancy Name (e.g., "Javascript Developer"), and the Resume (PDF file). Get Vacancy ID from AI (OpenAI): The text name of the vacancy is sent to an AI Agent. The AI, guided by a specific System Prompt, uses the Recrutei's MCP Tool to accurately find the official vacancy_id corresponding to that job title in your ATS. Set Vacancy ID (Set): Extracts the clean vacancy_id (a number) returned by the AI. Get Pipe Stages (HTTP Request): Fetches the pipeline stages associated with the identified vacancy ID. Create Prospect in Recrutei (HTTP Request): Creates the new candidate (Prospect) in the Recrutei ATS, associating them with the correct vacancy_id and the first available pipe stage. Merge Candidate Data (Merge): Merges the prospect creation output with the original form data to ensure all necessary details (like the resume file) are available for the next steps. Extract Text from PDF Resume (Extract from File): Reads and extracts all text content from the uploaded PDF resume file. Add Curriculum as Observation (HTTP Request): Adds the extracted CV text as an internal observation/note (talent_observation_type_id: 11) to the newly created candidate's profile in Recrutei. Setup Instructions To implement this workflow, you must configure the following: Recrutei API Credential: Create a Header Auth credential named Recrutei API (or similar) with: Header Name: Authorization Header Value: Bearer YOUR_API_KEY_HERE This credential must be selected in the nodes: Get Pipe Stages, Create Prospect in Recrutei, and Add Curriculum as Observation. AI Configuration: OpenAI: Configure your API Key in the Get Vacancy ID from AI node. Recrutei's MCP: Replace YOUR_MCP_ENDPOINT_URL_HERE in the Endpoint URL field of the Recrutei's MCP node with your actual Recrutei's MCP Server Endpoint URL. For more information about Recrutei API please refer to: https://developers.recrutei.com.br/docs/obtendo-token#
by Avkash Kakdiya
How it works This workflow starts whenever you add a new company name to a Google Sheet. It checks if the company name is filled in, then uses AI to find more details about the company like industry, size, location, and website. Next, it looks for the company in your HubSpot CRM. If the company is not there, it adds it automatically. Finally, it updates the Google Sheet with all the new company information so you have everything organized in one place. Step-by-step 1. Start with Google Sheets The workflow watches your Google Sheet for new company names. It ignores any empty or incomplete entries. 2. Get Company Details Uses AI (OpenAI GPT-4o-mini) to find more information about the company. Formats the AI results so they can be used easily. 3. Check and Update HubSpot Searches your HubSpot CRM to see if the company already exists. If the company is new, it creates a record in HubSpot with the AI details. 4. Save Everything in Google Sheets Prepares the enriched data for saving. Adds or updates the company information in the Google Sheet for easy tracking. Why use this? Automatically adds useful company info without manual work. Keeps your CRM clean by avoiding duplicates. Stores all updated company details in one place for easy access. Runs smoothly in the background without you needing to do anything after setup.