by Rahul Joshi
📘 Description: This workflow creates a fully interactive AI-powered Sales CRM Chatbot inside n8n, capable of understanding user queries, searching Google Sheets for CRM data, and responding intelligently based on real records. It integrates GPT-4o-mini with two live data sources—Outreach Automation Sheet and GHL Opportunity Database—allowing the bot to answer questions about leads, contact details, proposal links, outreach status, and opportunity information. The bot follows strict rules: it never guesses data, always performs lookups before answering, and remembers short-term conversation history for multi-turn chats. Every interaction is logged into a “chat_memory” sheet, while invalid responses are captured separately for debugging. The result is a real-time Sales Assistant Chat Interface that combines AI reasoning, structured tool calls, CRM lookups, and persistent memory. ⚙️ What This Workflow Does (Step-by-Step) ▶️ When Chat Message Received (Chat Trigger) Starts the workflow whenever a user sends a message in the n8n Chat UI. Captures chatInput, session ID, and context for the conversation. 🧠 OpenAI Chat Model (GPT-4o-mini) Provides the AI reasoning engine used by the Sales CRM Router. Handles intent detection, tool-call planning, data interpretation, and conversational flow. 🤖 AI Sales CRM Router (Agent Node) The brain of the system. Responsibilities: Understand user intent Identify if a lookup is required Automatically call the correct Google Sheets tool Enforce strict “lookup before answer” rules Produce structured, helpful responses Ask for missing details when lookup fails Uses JSON-formatted tool-calls exactly as defined in the system prompt. 📂 Google Sheets Tool — Outreach Sheet Queries the outreach automation sheet. Used when user asks about: Lead status Outreach progress Proposal links Contact email/name lookup Follow-up details 📂 Google Sheets Tool — Opportunity Sheet Queries the ghl database sheet. Used for: GHL opportunity details Pipeline stage Deal value Assigned representative Company details 🧠 Conversation Memory Buffer (Short-Term Memory) Stores the last 7 conversational turns. Allows multi-turn interactions where the AI remembers previous questions and context within a session. 🔍 Validate AI Output Payload (IF Node) Ensures the AI produced a valid output. ✅ If valid → saved to chat memory + returned to user ❌ If invalid → logged for review in error sheet 🗂️ Write Chat Memory to Google Sheets Appends: Timestamp Session ID User message AI response to the chat_memory sheet. Creates a complete audit trail for every conversation. ⚠️ Log Invalid Chat Records to Google Sheets Captures failed or empty responses. Helps debug incorrect tool calls or malformed AI outputs. 💬 Send Chat Response Delivers the AI’s final message back to the user instantly in the n8n chat window. 🧩 Prerequisites OpenAI GPT-4o-mini API key Google Sheets OAuth (Techdome account) Structured Outreach Automation & GHL Opportunity sheets n8n Chat UI enabled 💡 Key Benefits ✅ Real-time lead + opportunity lookup directly inside chat ✅ Fail-safe, rule-driven AI that never “hallucinates” data ✅ Multi-turn memory for natural conversation ✅ All chats logged for training and QA ✅ Perfect internal CRM companion for sales teams 👥 Perfect For Sales teams needing instant CRM insights Outreach teams checking proposal status SDRs handling lead follow-ups Anyone wanting AI-assisted CRM conversations inside n8n
by Automate With Marc
AI Clone Instagram Influencer Reel Builder + Auto-Post (Heygen + Submagic + Blotato) Description Turn an idea into a finished Instagram Reel—end to end, on autopilot. This template generates a compelling Reel script, sends it to Heygen to produce an AI avatar/clone video, applies dynamic on-video captions with Submagic, then uploads and auto-posts to Instagram via Blotato, complete with a tailored AI-written caption. Ideal for creators, agencies, and brands who want consistent short-form output without manual editing. 👉 Watch step-by-step automation builds on YouTube: https://youtu.be/MmZxLuAkqig?si=DRfS89yQlSlbMbfZ What This Template Does ✍️ Generates a short-form Reel script from your topic/idea (optimized hook → body → close). 🧑🎤 Creates an AI avatar video using Heygen (character + voice) from that script. 🅰️ Adds stylized overlaid captions using Submagic (template selectable). ☁️ Uploads media to Blotato and auto-posts to Instagram Reels. 🧠 Writes an IG caption (with hashtags) using an AI Caption Agent tuned for engagement. How It Works (Node Flow) Chat Trigger – Send a topic/idea to start the run. Instagram Script Generator (Agent) – Creates a 25–30s script (hook → insights → soft CTA). POST to Heygen – Generates an avatar video from the script (avatar_id, voice_id, size). Wait & Poll – Checks Heygen status until the video is ready. POST to Submagic – Creates a project and applies your caption style (e.g., “Hormozi 2”). Wait & Poll – Retrieves the captioned video URL when completed. Upload media (Blotato) – Uploads the final video to your Blotato account. Instagram Caption Agent – Produces an on-brand IG caption + hashtag block from the original script. Create Post (Blotato) – Publishes to Instagram as a Reel with the AI caption and uploaded media. Required Credentials OpenAI (or compatible) – for script + caption agents. Heygen API – HTTP Header Auth (API key). Submagic API – HTTP Header Auth (API key). Blotato API – Account + token. (Optional) KodeKey/Base URL if you route OpenAI-compatible models through your gateway. Best practice: store all secrets in n8n Credentials, not hard-coded in nodes. Quick Start Import the template into n8n. Create/assign credentials for OpenAI (or compatible), Heygen, Submagic, and Blotato. In Heygen, set your avatar_id and voice_id (or swap with your own). In Submagic, set templateName, language, and style preferences. In Blotato, confirm the accountId and instagramMediaType: reel. Run the workflow from the Chat Trigger with a topic (e.g., “3 money habits for 2025”). Confirm the Reel shows up in your connected Instagram account. Customization Tips Script Persona: Adjust the agent system prompt (niche, tone, audience). Caption Style: Tweak the Caption Agent for hook length, CTAs, and hashtag strategy. Heygen Output: Change dimension to 1080×1920 for full-HD vertical. Submagic Template: Swap templateName to match your brand. Posting Targets: Extend Blotato to cross-post to TikTok/YouTube Shorts. Error Handling & Reliability Uses Wait + status polling for both Heygen and Submagic before downstream steps. Includes IF checks to re-poll when processing is not complete. Recommendation: add Slack/Email alerts and Retry options for production use. Ideal For Solo creators and founders posting daily Social media managers and agencies Edu/Coach brands scaling short-form content
by Satva Solutions
Automated Stripe Payment to QuickBooks Sales Receipt This n8n workflow seamlessly connects Stripe and QuickBooks Online to keep your accounting in perfect sync. Whenever a payment in Stripe succeeds, the workflow automatically checks if the corresponding customer exists in QuickBooks. If found, it instantly creates a Sales Receipt under that customer. If not, it creates the customer first — then logs the sale. Key Features: ⚡ Real-Time Sync: Automatically triggers when a Stripe payment intent succeeds. 👤 Smart Customer Matching: Searches for existing customers in QuickBooks to prevent duplicates. 🧾 Automated Sales Receipts: Creates accurate sales records for every successful Stripe payment. 🔄 End-to-End Automation: Handles customer creation, receipt generation, and data consistency without manual entry. Requirements: A running n8n instance, active Stripe and QuickBooks Online accounts with API access.
by Muhammad Sajid
TruePeopleSearch Scraper for Skip Tracers Enrich any list of people with verified contact info using this workflow. This n8n automation scrapes TruePeopleSearch using Zyte's extraction API to safely bypass bot protection and extract detailed profiles. It’s built for data brokers, skip tracers, and real estate professionals who need clean contact data (phone, email, address) from names alone — even when the main profile is empty. If the original profile lacks a phone number, the workflow intelligently scrapes one of their listed relatives instead — giving you the best possible chance of finding a valid number. What this workflow does Pulls lead data (first name, last name, and custom search URL) from a Google Sheet Sends the TruePeopleSearch search URL to Zyte’s Scraping API to retrieve search results HTML Parses the first matching profile link from the results (by full name > first name > last name) Visits that profile page and extracts: Full Name Age / Date of Birth Primary Phone Number Other Phone Numbers Email Addresses Current Address If no phone numbers are found: Detects a relative's profile link Scrapes the relative’s profile for fallback contact data Writes all scraped information (or empty fields) back into the same row in Google Sheets You’ll need n8n (self-hosted or cloud)** To run and automate the workflow Zyte Scraping API** A Zyte account + API key to access their /extract endpoint (Use HTTP Basic Auth in the HTTP Request node) Google Sheets integration** Your own lead sheet with headers like: row_number (used to write back to the correct row) First Name Last Name SearchURL (Search by Address) Basic JavaScript familiarity (optional)** To tweak the HTML parsing logic for profile structure changes Example Google Sheet Use this Google Sheet as a template for your inputs and outputs: 👉 TruePeopleSearch Lead Template (Google Sheet) Disclaimer TruePeopleSearch may change its structure or block heavy scraping — always test at small scale first This workflow is built to simulate human behavior via Zyte’s smart rendering — scraping is still subject to site limitations Use ethically and within your local data usage laws Categories Data Enrichment · Scraping Automation · Lead Generation · Skip Tracing Feel free to drop me an email if you need help with building a custom scraping automation for your business at sajid@marketingbyprof.com
by Rui Borges
How it works (high-level) This workflow automatically triages new tasks created in Todoist in the last 5 minutes. It improves the task description, assigns a priority (P1–P4), and sets a realistic due date based on your current workload. Main flow steps Schedule Trigger — runs at a chosen interval. Get many tasks (Todoist) — fetches all tasks created in the last 5 minutes. AI Agent (LLM) — receives the new task plus clear rules to: Rewrite the task description in an imperative style. Score and set the priority (1–4) using Impact × Urgency × Risk. Schedule a due date that respects workload and avoids overbooking. get_open_tasks — provides the agent with the full list of open tasks to check daily capacity. update_task — applies the improved description, chosen priority, and due date back into Todoist. Setup steps Time required: ~5-10 minutes. Configure Todoist credentials (API token) and OpenAI credentials in the respective nodes. Adjust the Schedule Trigger to how often you want the system to check for new tasks. Optionally, fine-tune the scoring and scheduling rules inside the AI Agent system prompt. ℹ️ More detailed instructions, reasoning frameworks, and constraints are already included as sticky notes inside the workflow itself.
by Robert Breen
This workflow takes a blog post (title + content) and automatically translates it into multiple languages of your choice using OpenAI inside n8n. The translated output is formatted in Markdown, making it ready for publishing or direct use in content management systems. It’s ideal for content creators, marketers, and businesses who want to instantly localize blogs into different languages without manual effort. 🔑 Key Features Multi-language support**: Translate your content into as many languages as you configure. Clean Markdown output**: Ensures translated blogs are properly formatted. Flexible input**: Works with any blog content passed into the workflow. Scalable**: Add or remove target languages with a single change in the Set node. ⚙️ Setup Instructions 1️⃣ Set Up OpenAI Connection Go to OpenAI Platform Navigate to OpenAI Billing Add funds to your billing account Copy your API key into the OpenAI credentials in n8n 2️⃣ Choose Your Target Languages Open the Set Node called Set Languages Edit the array of languages to include the ones you want to translate into, e.g.: [ "spanish", "french", "german" ]
by Robert Breen
This workflow reviews resumes against a job description using OpenAI for automated scoring and gotoHuman for human validation before continuing. ⚙️ Setup Instructions 1️⃣ Set Up OpenAI Connection Go to OpenAI Platform Navigate to OpenAI Billing Add funds to your billing account Copy your API key into the OpenAI credentials in n8n 2️⃣ Set Up gotoHuman Connection In n8n, go to Settings → Community Nodes → Install Package: @gotohuman/n8n-nodes-gotohuman Create a gotoHuman account and generate an API key Save it in n8n as gotoHuman API credentials In gotoHuman, create a Review Template with fields: Resume (string) Summary (string) Rating (number) Copy the Template ID into the Send review request and wait for response node Map fields in the node: Resume → extracted resume text Summary → OpenAI output summary Rating → OpenAI score 📬 Contact Information Need help customizing this workflow or building similar automations? 📧 robert@ynteractive.com 🔗 Robert Breen 🌐 ynteractive.com
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 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 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