by Gtaras
Overview Manual financial reconciliation is tedious and prone to error. This workflow functions as an AI Financial Controller, automatically monitoring your inbox for invoices, receipts, and bills, extracting the data using OCR, and syncing it to Google Sheets for approval. Unlike simple scrapers, this workflow uses a "Guardrail" AI agent to filter out non-financial emails (like newsletters) before they are processed, ensuring only actual transactions are recorded. Who is it for? Finance Teams:** To automate the collection of vendor invoices. Freelancers:** To track expenses and receipts for tax season. Operations Managers:** To monitor budget spend and categorize costs automatically. How it works Ingest: The workflow watches a specific Gmail label (e.g., "INBOX") for new emails. Guardrail: A Gemini-powered AI agent analyzes the email text to determine if it is a valid financial transaction. If not, the workflow stops. Extraction (OCR): If an attachment exists: An AI Agent (GPT-4o) extracts data from the PDF. If no attachment: An AI Agent extracts data directly from the email body. Validation: Code nodes check for missing fields or invalid amounts. Business Logic: The system automatically assigns General Ledger (GL) categories (e.g., "Uber" -> "Travel") and sets approval statuses based on amount thresholds. Sync: Validated data is logged to Google Sheets, and a confirmation email is sent. Errors are logged to a separate error sheet. How to set up Google Sheets: Copy this Google Sheet template to your drive. It contains the necessary tabs (Invoices, Error Logs, Success Metrics). Configure Workflow: Open the node named "Configuration: User Settings". Paste your Google Sheet ID (found in the URL of your new sheet). Enter the Admin Email address where you want to receive error notifications. Credentials: Connect your Gmail account. Connect your Google Sheets account. Connect your OpenAI (for OCR) and Google Gemini/PaLM (for Guardrails) accounts. Requirements n8n version 1.0 or higher. Gmail account. OpenAI API Key. Google Gemini (PaLM) API Key.
by gotoHuman
This workflow automatically classifies every new email from your linked mailbox, drafts a personalized reply, and creates Linear tickets for bugs or feature requests. It uses a human-in-the-loop with gotoHuman and continuously improves itself by learning from approved examples. How it works The workflow triggers on every new email from your linked mailbox. Self-learning Email Classifier: an AI model categorizes the email into defined categories (e.g., Bug Report, Feature Request, Sales Opportunity, etc.). It fetches previously approved classification examples from gotoHuman to refine decisions. Self-learning Email Writer: the AI drafts a reply to the email. It learns over time by using previously approved replies from gotoHuman, with per-classification context to tailor tone and style (e.g., different style for sales vs. bug reports). Human Review in gotoHuman: review the classification and the drafted reply. Drafts can be edited or retried. Approved values are used to train the self-learning agents. Send approved Reply: the approved response is sent as a reply to the email thread. Create ticket: if the classification is Bug or Feature Request, a ticket is created by another AI agent in Linear. Human Review in gotoHuman: How to set up Most importantly, install the gotoHuman node before importing this template! (Just add the node to a blank canvas before importing) Set up credentials for gotoHuman, OpenAI, your email provider (e.g. Gmail), and Linear. In gotoHuman, select and create the pre-built review template "Support email agent" or import the ID: 6fzuCJlFYJtlu9mGYcVT. Select this template in the gotoHuman node. In the "gotoHuman: Fetch approved examples" http nodes you need to add your formId. It is the ID of the review template that you just created/imported in gotoHuman. Requirements gotoHuman (human supervision, memory for self-learning) OpenAI (classification, drafting) Gmail or your preferred email provider (for email trigger+replies) Linear (ticketing) How to customize Expand or refine the categories used by the classifier. Update the prompt to reflect your own taxonomy. Filter fetched training data from gotoHuman by reviewer so the writer adapts to their personalized tone and preferences. Add more context to the AI email writer (calendar events, FAQs, product docs) to improve reply quality.
by Roshan Ramani
Generate Personalized & Aggregate Survey Reports with Jotform and Gemini AI Overview Automatically transform Jotform survey responses into intelligent, professional reports. This workflow generates personalized insights for each respondent and statistical summaries for administrator, all hands-free. Who Should Use This Survey managers needing automated report generation Market researchers analyzing response data Product teams collecting customer feedback Organizations using Jotform without built-in analytics What It Does Two-Part Report System: Personal Reports (Instant) Triggers immediately when respondent submits survey AI analyzes their individual responses using Google Gemini Generates customized insights and recommendations Sends professional HTML report to respondent's email Weekly Aggregate Reports (Scheduled) Runs automatically every week Collects all survey submissions Calculates statistics, percentages, and trends Identifies patterns across all respondents Sends comprehensive analysis to admin Key Features ✓ Real-time personal report generation ✓ Intelligent AI-powered analysis (Google Gemini) ✓ Professional HTML email formatting ✓ Automatic weekly summaries ✓ Statistical analysis and trend identification ✓ Zero manual processing required ✓ Fully customizable prompts and styling ✓ Works with any Jotform survey structure Setup Requirements Jotform** account with active survey form Get Jotform from here n8n** instance (cloud or self-hosted) Google Gemini API** key Gmail** account (for sending reports) Jotform API** key What You Get in Reports Personal Reports Include: Respondent Profile** – Auto-extracted demographics (age, role, location, email) Key Insights** – 3-4 AI-generated insights specific to their responses Personalized Recommendations** – 3-4 actionable suggestions based on their answers Professional Formatting** – HTML-styled email with your branding colors Mobile Responsive** – Looks great on all devices Fully Customizable: Edit the AI prompt to generate different types of insights Change HTML styling (colors, fonts, layout) Add/remove sections (logos, footers, additional analysis) Adjust the tone (professional, casual, technical, etc.) Include custom branding and messaging Aggregate Reports Include: Total Respondents Count** – How many submissions in the period Demographic Breakdown** – Distribution of respondent profiles Response Statistics** – Percentages and frequencies for each question Answer Distribution** – Most popular choices across all responses Trend Analysis** – Patterns and correlations in the data Key Findings** – Top 5-7 insights from all responses combined Statistical Metrics** – Averages, frequencies, comparisons Fully Customizable: Choose which statistics to calculate and display Change how data is visualized and presented Customize report styling and branding Adjust analysis depth and metrics focus Add custom sections for your specific needs Modify HTML layout and design How Reports Look Personal Report Structure (Email): Header: Professional gradient background with thank you message Section 1: Respondent Details (extracted from survey) Section 2: Key Insights (AI-generated from their responses) Section 3: Recommendations (personalized suggestions) Footer: Thank you message and company info Aggregate Report Structure (Email): Header: Report title and date range Section 1: Total respondent count and demographics Section 2: Question-by-question response breakdown Section 3: Statistical analysis and trends Section 4: Key findings and patterns discovered Section 5: Actionable insights for decision-makers Footer: Next report date and company branding Quick Start Get your Jotform Form ID and API key Enable Google Gemini API and create API key Set up Gmail OAuth2 credentials in n8n Import this workflow Add your credentials to the nodes Test with a sample survey submission Complete setup instructions are included in the workflow as an expandable sticky note. Workflow Logic PERSONAL REPORTS: Survey Submission ↓ Collect Response Data ↓ AI Analysis & Insights Generation ↓ Create Styled HTML Report ↓ Send to Respondent Email AGGREGATE REPORTS: Weekly Schedule Triggers ↓ Fetch All Submissions ↓ Statistical Analysis & Trend Detection ↓ Generate Insights from All Data ↓ Create Summary HTML Report ↓ Send to Admin Email Use Cases Customer Feedback Surveys** – Analyze responses, send personalized insights Product Research** – Track trends across respondents weekly Market Research** – Automated statistical reporting Employee Surveys** – Personalized feedback + company trends Event Feedback** – Instant attendee insights + organizer summary Customer Satisfaction (NPS)** – Personalized follow-ups + trend analysis Lead Qualification** – Auto-analyze prospect responses and route accordingly
by Habeeb Mohammed
Who's it for This workflow is perfect for individuals who want to maintain detailed financial records without the overhead of complex budgeting apps. If you prefer natural language over data entry forms and want an AI assistant to handle the bookkeeping, this template is for you. It's especially useful for: People who want to track cash and online transactions separately Anyone who lends money to friends/family and needs debt tracking Users comfortable with Slack as their primary interface Those who prefer conversational interactions over manual spreadsheet updates What it does This AI-powered finance tracker transforms your Slack workspace into a personal finance command center. Simply mention your bot with transactions in plain English (e.g., "₹500 cash food, borrowed ₹1000 from John"), and the AI agent will: Parse transactions using natural language understanding via Google Gemini Calculate balance changes for cash and online accounts Show a preview of changes before saving anything Update Google Sheets only after you approve Track debts (who owes you, who you owe, repayments) Send daily reminders at 11 PM with current balances and active debts The workflow maintains conversational context using PostgreSQL memory, so you can say things like "yesterday's transactions" or "that payment to Sarah" and it understands the context. How it works Scheduled Daily Check-in (11 PM) Fetches current balances from Google Sheets Retrieves all active debts Formats and sends a Slack message with balance summary Prompts you to share the day's transactions AI Agent Transaction Processing When you mention the bot in Slack: Phase 1: Parse & Analyze Extracts amount, payment type (cash/online), category (food, travel, etc.) Identifies transaction type (expense, income, borrowed, lent, repaid) Stores conversation context in PostgreSQL memory Phase 2: Calculate & Preview Reads current balances from Google Sheets Calculates new balances based on transactions Shows formatted preview with projected changes Waits for your approval ("yes"/"no") Phase 3: Update Database (only after approval) Logs transactions with unique IDs and timestamps Updates debt records with person names and status Recalculates and stores new balances Handles debt lifecycle (Active → Settled) Phase 4: Confirmation Sends success message with updated balances Shows active debts summary Includes logging timestamp Requirements Essential Services: n8n instance (self-hosted or cloud) Slack workspace with admin access Google account Google Gemini API key PostgreSQL database Recommended: Claude AI model (mentioned in workflow notes as better alternative to Gemini) How to set up 1. Google Sheets Setup Create a new Google Sheet with three tabs named exactly: Balances Tab: | Date | Cash_Balance | Online_Balance | Total_Balance | |------|--------------|----------------|---------------| Transactions Tab: | Transaction_ID | Date | Time | Amount | Payment_Type | Category | Transaction_Type | Person_Name | Description | Added_At | |----------------|------|------|--------|--------------|----------|------------------|-------------|-------------|----------| Debts Tab: | Person_Name | Amount | Type | Date_created | Status | Notes | |-------------|--------|------|--------------|--------|-------| Add header rows and one initial balance row in the Balances tab with today's date and starting amounts. 2. Slack App Setup Go to api.slack.com/apps and create a new app Under OAuth & Permissions, add these Bot Token Scopes: app_mentions:read chat:write channels:read Install the app to your workspace Copy the Bot User OAuth Token Create a dedicated channel (e.g., #personal-finance-tracker) Invite your bot to the channel 3. Google Gemini API Visit ai.google.dev Create an API key Save it for n8n credentials setup 4. PostgreSQL Database Set up a PostgreSQL database (you can use Supabase free tier): Create a new project Note down connection details (host, port, database name, user, password) The workflow will auto-create the required table 5. n8n Workflow Configuration Import the workflow and configure: A. Credentials Google Sheets OAuth2**: Connect your Google account Slack API**: Add your Bot User OAuth Token Google Gemini API**: Add your API key PostgreSQL**: Add database connection details B. Update Node Parameters All Google Sheets nodes: Select your finance spreadsheet Slack nodes: Select your finance channel Schedule Trigger: Adjust time if you prefer a different check-in hour (default: 11 PM) Postgres Chat Memory: Change sessionKey to something unique (e.g., finance_tracker_your_name) Keep tableName as n8n_chat_history_finance or rename consistently C. Slack Trigger Setup Activate the "Bot Mention trigger" node Copy the webhook URL from n8n In Slack App settings, go to Event Subscriptions Enable events and paste the webhook URL Subscribe to bot event: app_mention Save changes 6. Test the Workflow Activate both workflow branches (scheduled and agent) In your Slack channel, mention the bot: @YourBot ₹100 cash snacks Bot should respond with a preview Reply "yes" to approve Verify Google Sheets are updated How to customize Change Transaction Categories Edit the AI Agent's system message to add/remove categories. Current categories: travel, food, entertainment, utilities, shopping, health, education, other Modify Daily Check-in Time Change the Schedule Trigger's triggerAtHour value (0-23 in 24-hour format). Add Currency Support Replace ₹ with your currency symbol in: Format Daily Message code node AI Agent system prompt examples Switch AI Models The workflow uses Google Gemini, but notes recommend Claude. To switch: Replace "Google Gemini Chat Model" node Add Claude credentials Connect to AI Agent node Customize Debt Types Modify AI Agent's system prompt to change debt handling logic: Currently: I_Owe and They_Owe_Me You can add more types or change naming Add More Payment Methods Current: cash, online To add more (e.g., credit card): Update AI Agent prompt Modify Balances sheet structure Update balance calculation logic Change Approval Keywords Edit AI Agent's Phase 2 approval logic to recognize different approval phrases. Add Spending Analytics Extend the daily check-in to calculate: Weekly/monthly spending summaries Category-wise breakdowns Use additional Code nodes to process transaction history Important Notes ⚠️ Never trigger with normal messages - Only use app mentions (@botname) to avoid infinite loops where the bot replies to its own messages. 💡 Context Awareness - The bot remembers conversation history, so you can reference "yesterday", "last week", or previous transactions naturally. 🔒 Data Privacy - All your financial data stays in your Google Sheets and PostgreSQL database. The AI only processes transaction text temporarily. 📊 Backup Regularly - Export your Google Sheets periodically as backup. Pro Tips: Start with small test transactions to ensure everything works Use consistent person names for debt tracking The bot understands various formats: "₹500 cash food" = "paid 500 rupees in cash for food" You can batch transactions in one message: "₹100 travel, ₹200 food, ₹50 snacks"
by 長谷 真宏
Who is this for? This template is perfect for agencies, consultancies, freelancers, and project-based teams who want to eliminate repetitive onboarding tasks. If you're tired of manually creating folders, Slack channels, and project pages every time a new client signs a contract, this automation will save you hours. What this workflow does When a new contract PDF is uploaded to a designated Google Drive folder, this workflow automatically: Parses the filename to extract client name, project name, and contact email Creates a project folder structure in Google Drive with organized subfolders Creates a dedicated Slack channel for project communication Sets up a Notion project page with initial kickoff tasks Logs project details to a master Google Sheet for tracking Drafts a personalized welcome email using OpenAI GPT-4o-mini Notifies your team on Slack with all relevant links when complete Setup steps Time required: ~15 minutes Configure OAuth credentials for Google Drive, Gmail, Google Sheets, Slack, and Notion Add your OpenAI API key for AI-powered email drafting Update the "Set Config Variables" node with your specific IDs: Google Drive parent folder ID Notion database ID Google Sheet ID Slack notification channel ID Set up the trigger folder in Google Drive where contracts will be uploaded Prepare your Google Sheet with columns: Client, Project Code, Notion Link, Slack Channel, Drive Folder Requirements Google Workspace account (Drive, Gmail, Sheets) Slack workspace with bot permissions to create channels Notion workspace with API integration OpenAI API key File naming convention Upload PDF files using this format: ClientName_ProjectName_email@example.com.pdf Example: AcmeCorp_WebsiteRedesign_john@acme.com.pdf How to customize Add more subfolders: Duplicate the "Create Deliverables Subfolder" node Customize the email prompt: Edit the "AI Draft Welcome Email" node Add more Notion properties: Extend the "Create Notion Project Page" node Change notification format: Modify the "Notify Team on Slack" message
by Muhammadumar
This is the core AI agent used for isra36.com. Don't trust complex AI-generated SQL queries without double-checking them in a safe environment. That's where isra36 comes in. It automatically creates a test environment with the necessary data, generates code for your task, runs it to double-check for correctness, and handles errors if necessary. If you enable auto-fixing, isra36 will detect and fix issues on its own. If not, it will ask for your permission before making changes during debugging. In the end, you get thoroughly verified code along with full details about the environment it ran in. Setup It is an embedded chat for the website, but you can pin input data and run it on your own n8n instance. Input data sessionId: uuid\_v4. Required to handle ongoing conversations and to create table names (used as a prefix). threadId: string | nullable. If aiProvider is openai, conversation history is managed on OpenAI’s side. This is not needed in the first request—it will start a new conversation. For ongoing conversations, you must provide this value. You can get it from the OpenAIMainBrain node output after the first run. If you want to start a new conversation, just leave it as null. apiKey: string. Your API key for the selected aiProvider. aiProvider: string. Currently supported values: openai, openrouter. model: string. The AI model key (e.g., gpt-4.1, o3-mini, or any supported model key from OpenRouter). autoErrorFixing: boolean. If true, it will automatically fix errors encountered when running code in the environment. If false, it will ask for your permission before attempting a fix. chatInput: string. The user's prompt or message. currentDbSchemaWithData: string. A JSON representation of the database schema with sample data. Used to inform the AI about the current database structure during an ongoing conversation. Please use the '[]' value in the first request. Example string for filled db structure : '{"users":[{"id":1,"name":"John Doe","email":"john.d@example.com"},{"id":2,"name":"Jane Smith","email":"jane.s@example.com"}],"products":[{"product_id":101,"product_name":"Laptop","price":999.99}]}' Make sure to fill in your credentials: Your OpenAI or OpenRouter API key Access to a local PostgreSQL database for test execution You can view your generated tables using your preferred PostgreSQL GUI. We recommend DBeaver. Alternatively, you can activate the “Deactivated DB Visualization” nodes below. To use them, connect each to the most recent successful Set node and manually adjust the output. However, the easiest and most efficient method is to use a GUI. Workflow Explanation We store all input values in the localVariables node. Please use this node to get the necessary data. OpenAI has a built-in assistant that manages chat history on their side. For OpenRouter, we handle chat history locally. That’s why we use separate nodes like ifOpenAi and isOpenAi. Note that if logic can also be used inside nodes. The AutoErrorFixing loop will run only a limited number of times, as defined by the isMaxAutoErrorReached node. This prevents infinite loops. The Execute_AI_result node connects to the PostgreSQL test database used to execute queries. Guidance on customization This setup is built for PostgreSQL, but it can be adapted to any programming language, and the logic can be extended to any programming framework. To customize the logic for other programming languages: Change instruction parameter in localVariables node. Replace the Execute_AI_result PostgreSQL node with another executable node. For example, you can use the HTTP Request node. Update the GenerateErrorPrompt node's prompt parameter to generate code specific to your target language or framework. Any workflows built on top of this must credit the original author and be released under an open-source license.
by May Ramati Kroitero
Automated Job Hunt with Tavily — Setup & Run Guide What this template does? Automatically searches for recent job postings (example: “Software Engineering Intern”), extracts structured details from each posting using an AI agent + Tavily, bundles results, and emails a single weekly digest. Estimated setup time: ~30 minutes 1. Required credentials Before you import or run the workflow, create/configure these credentials in your n8n instance: OpenAI (Chat model) — used by the OpenAI Chat Model and Message a model nodes. Add an OpenAI credential (name it e.g. OpenAi account) and paste your OpenAi API key. Tavily API — used by the Search in Tavily node. Add a Tavily credential (name it e.g. Tavily account) and add your Tavily API key. Gmail (OAuth2) — used by the Send a message node to deliver the digest email. Configure Gmail OAuth2 credential and select it for the Gmail node (e.g. Gmail account. 2. Node-by-node configuration (what to check/change) Schedule Trigger Node name: Schedule Trigger Configure interval: daily or weekly (example: weekly, trigger at 08:00). Note: This is the workflow start. Adjust to your preferred cadence. AI Agent Node name: AI Agent Important: First step — set the agent’s prompt / system message. Search in Tavily (Tavily Tool node) Node name: Tavily Query: user-editable field (example default: Roles posted this week for Software Engineering) Advice: keep query under 400 chars; change to target role/location keywords. Options recommended: Search Depth: advanced (optional, better extraction) Max Results: 15 Time Range: week (limit to past week) Include Raw Content: true (fetch full page content for better extraction) Include Domains: indeed.com, glassdoor.com,linkedin.com — prioritize trusted sources Edit Fields / Set (bundle) Node name: Edit Fields (Set) Purpose: Collect the agent output into one field (e.g., $json.output or Response) for downstream processing. Message a Model (OpenAI formatting step) Node name: Message a model Uses OpenAI (the openAiApi credential). This node can be used to reformat or normalize the agent output into consistent blocks if needed. Use the same system rules you used for the agent (the prompt/system message earlier). You can also leave this minimal if the agent already outputs structured blocks. Code Node (Parsing & structuring) Node name: Code Purpose: Split the agent/LLM text into separate job postings and extract fields with regex. Aggregate Node Node name: Aggregate Mode: aggregateAllItemData (this combines all parsed postings into a single data array so the Gmail node can loop over them) Gmail node (Send a message) Node name: Send a message sendTo: set to recipient(s) (e.g., your inbox) subject: e.g. New Jobs for this week! emailType: text (or html if you build HTML content) message (body): use the expression that loops through data and formats every posting. 3. How to test (quick steps) Set credentials in n8n (OpenAI, Tavily, Gmail). Run the Schedule Trigger manually (use the “Execute Workflow” or manually trigger nodes). Inspect the Search in Tavily node output — confirm it returns results. Inspect the AI Agent and Message a model outputs — ensure formatted postings are produced and separated by --- END JOB POSTING ---. Run the Code node — confirm it returns structured items with posting_number, job_title, requirements[], etc. Check Aggregate output: you should see a single item with data array. In Gmail node, run a test send — confirm the email receives one combined message with all postings. 4. Troubleshooting tips Gmail body shows [Array: …]: Avoid dragging the array raw — use the expression that maps data to formatted strings. Code node split error: Occurs when raw is undefined. Ensure previous node returns message.content or adjust to use $input.all() and join contents safely. Missing fields after parsing: Check LLM/agent output labels match the Code node’s regex (e.g., Job Title:). If labels differ, update regex or LLM formatting. 5. Customization ideas Filter by location or remote-only roles, or add keyword filters (seniority, stack). Send results to Google Sheets or Slack instead of/in addition to Gmail. Add an LLM summarization step to create a 1-line highlight per posting.
by Marth
Automated Employee Recognition Bot with Slack + Google Sheets + Gmail Description Turn employee recognition into an automated system. This workflow celebrates great work instantly it posts recognition messages on Slack, sends thank-you emails via Gmail, and updates your tracking sheet automatically. Your team feels appreciated. Your HR team saves hours. Everyone wins. ⚙️ How It Works You add a new recognition in Google Sheets. The bot automatically celebrates it in Slack. The employee receives a thank-you email. HR gets notified and the sheet updates itself. 🔧 Setup Steps 1️⃣ Prepare Your Google Sheet Create a sheet called “Employee_Recognition_List” with these columns: Name | Department | Reason | Date | Email | Status | EmailStatus Then add one test row — for example, your own name — to see it work. 2️⃣ Connect Your Apps Inside n8n: Google Sheets:** Connect your Google account so the bot can read the sheet. Slack:** Connect your Slack workspace to post messages in a channel (like #general). Gmail:** Connect your Gmail account so the bot can send emails automatically. 3️⃣ (Optional) Add AI Personalization If you want the messages to sound more natural, add an OpenAI node with this prompt: > “Write a short, friendly recognition message for {{name}} from {{dept}} who was recognized for {{reason}}. Keep it under 2 sentences.” This makes your Slack and email messages feel human and genuine. 4️⃣ Turn It On Once everything’s connected: Save your workflow Set it to Active Add a new row in your Google Sheet The bot will instantly post on Slack and send a thank-you email 🎉
by Bhuvanesh R
The competitive edge, delivered. This Customer Intelligence Engine simultaneously analyzes the web, Reddit, and X/Twitter to generate a professional, actionable executive briefing. 🎯 Problem Statement Traditional market research for Customer Intelligence (CI) is manual, slow, and often relies on surface-level social media scraping or expensive external reports. Service companies, like HVAC providers, struggle to efficiently synthesize vast volumes of online feedback (Reddit discussions, real-time tweets, web articles) to accurately diagnose systemic service gaps (e.g., scheduling friction, poor automated systems). This inefficiency leads to delayed strategic responses and missed opportunities to invest in high-impact solutions like AI voice agents. ✨ Solution This workflow deploys a sophisticated Multisource Intelligence Pipeline that runs on a scheduled or ad-hoc basis. It uses parallel processing to ingest data from three distinct source types (SERP API, Reddit, and X/Twitter), employs a zero-cost Hybrid Categorization method to semantically identify operational bottlenecks, and uses the Anthropic LLM to synthesize the findings into a clear, executive-ready strategic brief. The data is logged for historical analysis while the brief is dispatched for immediate action. ⚙️ How It Works (Multi-Step Execution) 1. Ingestion and Parallel Processing (The Data Fabric) Trigger:** The workflow is initiated either on an ad-hoc basis via an n8n Form Trigger or on a schedule (Time Trigger). Parallel Ingestion:** The workflow immediately splits into three parallel branches to fetch data simultaneously: SERP API: Captures authoritative content and industry commentary (Strategic Context). Reddit (Looping Structure): Fetches posts from multiple subreddits via an Aggregate Node workaround to get authentic user experiences (Qualitative Signal). X/Twitter (HTTP Request): Bypasses standard rate limits to capture real-time social complaints (Sentiment Signal). 2. Analysis and Fusion (The Intelligence Layer) Cleanup and Labeling (Function Nodes):** Each branch uses dedicated Function Nodes to filter noise (e.g., low-score posts) and normalize the data by adding a source tag (e.g., 'Reddit'). Merge:** A Merge Node (Append Mode) fuses all three parallel streams into a single, unified dataset. Hybrid Categorization (Function Node):** A single Function Node applies the Hybrid Categorization Logic. This cost-free step semantically assigns a pain_point category (e.g., 'Call Hold/Availability') and a sentiment_score to every item, transforming raw text into labeled metrics. 3. Dispatch and Reporting (The Executive Output) Aggregation and Split (Function Node):** The final Function Node calculates the total counts, deduplicates the final results, and generates the comprehensive summaryString. Data Logging:* The aggregated counts and metrics are appended to *Google Sheets** for historical logging. LLM Input Retrieval (Function Node):** A final Function Node retrieves the summary data using the $items() helper (the serial route workaround). AI Briefing:* The *Message a model (Anthropic) Node receives the summaryString and uses a strict HTML System Prompt to synthesize the strategic brief, identifying the top pain points and suggesting AI features. Delivery:* The *Gmail Node** sends the final, professional HTML brief to the executive team. 🛠️ Setup Steps Credentials Anthropic:** Configure credentials for the Language Model (Claude) used in the Message a model node. SERP API, Reddit, and X/Twitter:** Configure API keys/credentials for the data ingestion nodes. Google Services:** Set up OAuth2 credentials for Google Sheets (for logging data) and Gmail (for email dispatch). Configuration Form Configuration:** If using the Form Trigger, ensure the Target Keywords and Target Subreddits are mapped correctly to the ingestion nodes. Data Integrity:** Due to the serial route, ensure the Function (Get LLM Summary) node is correctly retrieving the LLM_SUMMARY_HOLDER field from the preceding node's output memory. ✅ Benefits Proactive CI & Strategy:** Shifts market research from manual, reactive browsing to proactive, scheduled data diagnostic. Cost Efficiency:** Utilizes a zero-cost Hybrid Categorization method (Function Node) for intent analysis, avoiding expensive per-item LLM token costs. Actionable Output:** Delivers a fully synthesized, HTML-formatted executive brief, ready for immediate presentation and strategic sales positioning. High Reliability:** Employs parallel ingestion, API workarounds, and serial routing to ensure the complex workflow runs consistently and without failure.
by Franz
🚀 AI Lead Generation and Follow-Up Template 📋 Overview This n8n workflow template automates your lead generation and follow-up process using AI. It captures leads through a form, enriches them with company data, classifies them into different categories, and sends appropriate follow-up sequences automatically. Key Features: 🤖 AI-powered lead classification (Demo-ready, Nurture, Drop) 📊 Automatic lead enrichment with company data 📧 Intelligent email responses and follow-up sequences 📅 Automated demo scheduling for qualified leads 📝 Complete lead logging in Google Sheets 💬 AI assistant for immediate query responses 🛠️ Prerequisites Before setting up this workflow, ensure you have: n8n Instance: Self-hosted or cloud version OpenAI API Key: For AI-powered features Google Workspace Account with: Gmail access Google Sheets Google Calendar Basic understanding of your Ideal Customer Profile (ICP) ⚡ Quick Start Guide Step 1: Import the Workflow Copy the workflow JSON Import into your n8n instance The workflow will appear with all nodes connected Step 2: Configure Credentials You'll need to set up the following credentials: OpenAI API**: For AI agents and classification Gmail OAuth2**: For sending emails Google Sheets OAuth2**: For lead logging Google Calendar OAuth2**: For demo scheduling Step 3: Create Your Lead Log Sheet Create a Google Sheet with these columns: Date Name Email Company Job Title Message Number of Employees Industry Geography Annual Revenue Technology Pain Points Lead Classification Step 4: Update Configuration Nodes Replace Sheet ID: Update all Google Sheets nodes with your sheet ID Update Email Templates: Customize all email content Set Escalation Email: Replace "your-email@company.com" with your team's email Configure ICP Criteria: Edit the "Define ICP and Lead Criteria" node 🎯 Lead Classification Setup Define Your ICP (Ideal Customer Profile) Edit the "Define ICP and Lead Criteria" node to set your criteria: 📌 ICP Criteria Example: Company Size: 50+ employees Industry: SaaS, Finance, Healthcare, Manufacturing Geography: North America, Europe Pain Points: Manual processes, compliance needs, scaling challenges Annual Revenue: $5M+ ✅ Demo-Ready Criteria: High-intent prospects who meet multiple qualifying factors: Large company size (your threshold) Clear pain points mentioned Urgent timeline Budget authority indicated Specific solution requests 🌱 Nurture Criteria: Prospects with future potential: Meet basic size requirements In target industry General interest expressed Planning future implementation Exploring options ❌ Drop Criteria: Only drop leads that clearly don't fit: Outside target geography Wrong industry (B2C if you're B2B) Too small with no growth Already with competitor Spam or test messages 📧 Email Customization Customize Follow-Up Sequences: Demo-Ready Sequence: Immediate calendar invitation Personalized demo confirmation Meeting reminder (optional) Nurture Sequence: Welcome email with resources Educational content (Day 2) Webinar/event invitation (Day 3) Demo offer (Day 4) Drop Message: Polite acknowledgment Clear explanation Keep door open for future 🔧 Advanced Configuration AI Answer Agent Setup: Update the system prompt with your company information Add common Q&A patterns Set escalation rules Configure language preferences Lead Enrichment Options: Add API keys for additional data sources Configure enrichment fields Set data quality thresholds Enable duplicate detection Calendar Integration: Set available meeting times Configure meeting duration Add buffer times Set timezone handling 📊 Monitoring and Optimization Track Key Metrics: Lead volume by classification Response rates Demo conversion rates Time to first response Enrichment success rate Optimization Tips: Regular Review: Check classification accuracy weekly A/B Testing: Test different email sequences Feedback Loop: Use outcomes to refine ICP criteria AI Training: Update prompts based on results 🎉 Best Practices Start Simple: Begin with basic criteria and refine over time Test Thoroughly: Use test leads before going live Monitor Daily: Check logs for the first week Iterate Quickly: Adjust based on results Document Changes: Keep track of criteria updates 📈 Scaling Your Workflow As your lead volume grows: Add Sub-workflows: Separate complex processes Implement Queuing: Handle high volumes Add CRM Integration: Sync with your sales tools Enable Analytics: Track detailed metrics Set Up Alerts: Monitor for issues
by franck fambou
Overview This intelligent chatbot workflow enables natural language conversations with your documents, supporting multiple file formats including PDFs, Word documents, Excel spreadsheets, and text files. Built with advanced RAG (Retrieval-Augmented Generation) technology, this chatbot can understand, analyze, and answer questions about your document content with contextual accuracy and intelligent responses. How It Works Intelligent Document Processing & Conversation Pipeline: Multi-Format Document Ingestion**: Automatically processes and indexes various document formats (PDF, DOCX, XLSX, TXT, etc.) Smart Content Chunking**: Breaks down documents into meaningful segments while preserving context and relationships Vector Database Storage**: Creates searchable embeddings for fast and accurate information retrieval Contextual Conversation Engine**: Uses AI to understand user queries and retrieve relevant document sections Natural Language Responses**: Generates human-like responses with citations and source references Multi-Turn Conversations**: Maintains conversation history and context across multiple interactions Real-Time Processing**: Instant responses with live document updates and dynamic content refresh Setup Instructions Estimated Setup Time: 15-20 minutes Prerequisites n8n instance (v0.200.0 or higher recommended) OpenAI/Gemini API key for embeddings and chat completion Vector database service (optional: Pinecone, Weaviate, or Qdrant) File storage service (optional: Google Drive, Dropbox, AWS S3) Web server for chatbot interface (optional) Configuration Steps Configure Document Input Sources Set up file upload webhook for direct document submission Configure cloud storage watchers for automatic document processing Add support for multiple file formats and size limits Set up document validation and security checks Setup Document Processing Pipeline Configure text extraction engines for different file types Set up intelligent chunking parameters (chunk size, overlap, boundaries) Add metadata extraction for document categorization Configure OCR for scanned documents (optional) Configure Vector Database Set up your chosen vector database credentials Configure embedding model settings (Gemini models/text-embedding-004 recommended) Set up collection/index structure for document storage Configure search parameters and similarity thresholds Setup AI Chat Engine Add your AI service API credentials (Gemini, Claude, etc.) Configure conversation prompts and system instructions Set up context window management and token optimization Add response formatting and citation rules Configure Chat Interface Set up webhook endpoints for chat API Configure session management and conversation history Add authentication and rate limiting (optional) Set up real-time updates and streaming responses Setup Monitoring & Analytics Configure conversation logging and analytics Set up performance monitoring for response times Add usage tracking and cost monitoring Configure error handling and failover mechanisms Use Cases Business & Enterprise Knowledge Base Queries**: Ask questions about company policies, procedures, and documentation Contract Analysis**: Query legal documents, contracts, and compliance materials Training Materials**: Interactive learning with training manuals and educational content Financial Reports**: Analyze and discuss financial statements, budgets, and forecasts Research & Academia Research Paper Analysis**: Discuss findings, methodologies, and citations from academic papers Literature Reviews**: Compare and contrast multiple research documents Thesis Support**: Get insights from reference materials and research data Grant Proposals**: Analyze requirements and optimize proposal content Legal & Compliance Legal Document Review**: Query contracts, agreements, and legal texts Regulatory Compliance**: Understand compliance requirements from regulatory documents Case Law Research**: Analyze legal precedents and court decisions Policy Analysis**: Interpret organizational policies and procedures Technical Documentation API Documentation**: Interactive queries about technical specifications User Manuals**: Get help and guidance from product documentation Code Documentation**: Understand codebases and technical implementations Troubleshooting Guides**: Interactive problem-solving with technical guides Personal Productivity Document Summarization**: Get quick summaries of long documents Information Extraction**: Find specific data points across multiple documents Content Research**: Research topics across your personal document library Meeting Notes**: Query and analyze meeting transcripts and notes Key Features Advanced Document Processing Multi-Format Support**: PDF, DOCX, XLSX, TXT, PPTX, and more Intelligent Chunking**: Context-aware document segmentation Metadata Extraction**: Automatic categorization and tagging OCR Integration**: Process scanned documents and images with text Intelligent Conversation Contextual Understanding**: Maintains conversation context and document relationships Source Attribution**: Provides citations and references for all answers Multi-Document Queries**: Compare and analyze across multiple documents Follow-up Questions**: Natural conversation flow with clarifying questions Performance & Scalability Fast Retrieval**: Vector-based semantic search for instant responses Scalable Architecture**: Handle large document collections efficiently Batch Processing**: Process multiple documents simultaneously Caching System**: Optimized response times with intelligent caching Security & Privacy Document Encryption**: Secure storage and transmission of sensitive documents Access Control**: User-based permissions and document access restrictions Audit Logging**: Complete conversation and access audit trails Data Retention**: Configurable data retention and deletion policies Technical Architecture Document Processing Flow File Upload → Format Detection → Text Extraction → Content Chunking Metadata Extraction → Embedding Generation → Vector Storage → Index Creation Conversation Flow User Query → Intent Analysis → Vector Search → Context Retrieval Response Generation → Source Attribution → Answer Formatting → Delivery Supported File Formats Documents**: PDF, DOC, DOCX, RTF, TXT, MD Spreadsheets**: XLS, XLSX, CSV Presentations**: PPT, PPTX Images**: PNG, JPG (with OCR) Archives**: ZIP (auto-extracts supported formats) Web**: HTML, XML Integration Options Chat Interfaces Web Widget**: Embeddable chat widget for websites API Endpoints**: RESTful API for custom integrations Slack/Teams**: Direct integration with team collaboration tools Mobile Apps**: API-first design for mobile application integration Data Sources Cloud Storage**: Google Drive, Dropbox, OneDrive, AWS S3 Document Systems**: SharePoint, Confluence, Notion Email**: Process attachments from email systems CRM/ERP**: Integration with business systems Performance Specifications Response Time**: < 3 seconds for typical queries Document Capacity**: Supports collections of 10,000+ documents Concurrent Users**: Scales to handle multiple simultaneous conversations Accuracy**: >90% relevance for domain-specific queries Advanced Configuration Options Customization Custom Prompts**: Tailor AI behavior for specific use cases Branding**: Customize chat interface with your company branding Language Support**: Multi-language document processing and responses Domain Expertise**: Fine-tune for specific industries or domains Analytics & Monitoring Usage Analytics**: Track popular queries and document usage Performance Metrics**: Monitor response times and accuracy User Feedback**: Collect ratings and improve responses A/B Testing**: Test different configurations and prompts Troubleshooting & Support Common Issues Slow Responses**: Check vector database performance and API limits Inaccurate Answers**: Review chunking strategy and embedding quality Format Errors**: Verify document formats and processing capabilities Memory Issues**: Monitor token usage and context window limits Optimization Tips Use clear, specific questions for best results Ensure documents are well-formatted with proper headers Regular vector database maintenance for optimal performance Monitor API usage to optimize costs and performance
by Ronnie Craig
AI Email Assistant - Smart Email Processing & Response 🤖 A sophisticated n8n workflow that transforms your email management with AI-powered classification, automatic responses, and intelligent organization. 🎯 What This Workflow Does This advanced AI email assistant automatically: Analyzes** incoming emails using intelligent classification Categorizes** messages by priority, urgency, and type Generates** context-aware draft responses in your voice Organizes** emails with smart labeling and filing Alerts** you to urgent messages instantly Manages** attachments with cloud storage integration Perfect for busy professionals, customer service teams, and anyone drowning in email! ✨ Key Features 🧠 Intelligent Email Analysis Context-Aware Processing**: Understands email threads and conversation history Smart Classification**: Automatically categorizes by priority, urgency, and required actions Multi-Criteria Assessment**: Evaluates response needs, follow-up requirements, team involvement Dynamic Label Management**: Syncs with your Gmail labels for consistent organization 📝 AI-Powered Response Generation Professional Draft Creation**: Generates contextually appropriate responses Tone Matching**: Mirrors the formality and style of incoming emails Multiple Response Options**: Provides alternatives for complex inquiries Customizable Voice**: Adapts to your business communication style 🔔 Smart Notification System Urgent Email Alerts**: Instant notifications for high-priority messages Telegram/Slack Integration**: Get alerts where you work Smart Filtering**: Only notifies when truly urgent Quick Action Links**: Direct links to Gmail for immediate response 📎 Advanced Attachment Management Automatic Cloud Upload**: Saves attachments to Google Drive Smart File Naming**: Organized by date, sender, and content Duplicate Detection**: Prevents redundant uploads File Type Filtering**: Optional filtering for security 🏷️ Intelligent Organization Auto-Labeling**: Applies relevant Gmail labels automatically Progress Tracking**: Marks emails as "processed" or "digested" Priority Indicators**: Visual priority levels in your inbox Category-Based Sorting**: Groups similar emails together 🛠️ Setup Instructions Prerequisites n8n instance (cloud or self-hosted) Gmail account with API access OpenAI API key (or compatible AI service) Google Drive account (for attachments) Telegram bot (optional, for alerts) Step 1: Import the Workflow Download AI_Email_Assistant_Community_Template.json In n8n, navigate to Templates → Import from File Select the downloaded JSON file The workflow will import as inactive Step 2: Configure Credentials Gmail Setup: Create Gmail OAuth2 credentials in n8n Configure the following nodes: Email_Trigger Get Conversation Thread Get Latest Message Content Create Draft Response Assign Classification Label Mark as Processed Get All Gmail Labels Test connections to ensure proper authentication AI Model Setup: Configure the AI Language Model node Options include: OpenAI (GPT-4, GPT-3.5-turbo) Anthropic Claude (recommended) Local LLMs via Ollama Add your API credentials Test the connection Google Drive Setup (Optional): Create Google Drive OAuth2 credentials Configure nodes: Upload to Google Drive Check Existing Attachments Replace YOUR_GOOGLE_DRIVE_FOLDER_ID with your folder ID Create a dedicated folder for email attachments Telegram Alerts (Optional): Create a Telegram bot via @BotFather Get your chat ID Configure the Send Urgent Alert node Replace YOUR_TELEGRAM_CHAT_ID with your actual chat ID Step 3: Customize AI Instructions Email Classification (AI Email Classifier node): Review the classification criteria in the system message Adjust urgency keywords for your business Modify priority levels based on your needs Customize category definitions Response Generation (AI Response Generator node): Update the response guidelines Replace [YOUR NAME] with your actual name Adjust tone and style preferences Add company-specific response templates Step 4: Configure Gmail Labels Create Custom Labels in Gmail: High Priority Medium Priority Low Priority Needs Response Urgent Follow Up Required Processed (or use existing labels) Update Label IDs: Run the workflow once to get label IDs Replace YOUR_PROCESSED_LABEL_ID in the "Mark as Processed" node Update any hardcoded label references Step 5: Test and Deploy Testing Process: Send yourself a test email Monitor the workflow execution Verify classification accuracy Check draft response quality Confirm labeling works correctly Test urgent alert functionality Fine-Tuning: Adjust AI prompts based on test results Refine classification criteria Update response templates Modify notification preferences Go Live: Activate the workflow Monitor initial performance Adjust settings as needed 📊 Email Classification System Priority Levels High**: Urgent matters requiring immediate attention Medium**: Important but not time-critical Low**: Routine or informational messages Classification Categories toReply**: Direct questions or requests requiring response urgent**: Immediate business impact or crisis situations dateRelated**: Time-sensitive events or deadlines attachmentsToUpload**: Financial docs or important files requiresFollowUp**: Multi-step processes or ongoing projects forwardToTeam**: Cross-departmental or collaborative items Response Generation Guidelines Professional Tone**: Business casual, warm but professional Context Awareness**: Considers email thread history Structured Responses**: Clear paragraphs with actionable next steps Placeholder System**: Uses [PLACEHOLDER] for missing information Alternative Options**: Provides multiple response choices for complex inquiries 🔧 Advanced Customization File Type Filtering // In Get Specific File Types node, modify: if (mimeType === 'application/pdf' || mimeType === 'text/xml' || mimeType === 'image/jpeg') { // Process file } Custom Urgency Keywords Update the AI classifier prompt with your business-specific urgent terms: Keywords: "URGENT", "EMERGENCY", "CRITICAL", "ASAP", "IMMEDIATE" Custom terms: "CLIENT ESCALATION", "SYSTEM DOWN", "LEGAL DEADLINE" Response Templates Customize the response generator with your company voice: Greeting style: "Hi [Name]" vs "Dear [Name]" Closing: "Best Regards" vs "Thank you" vs "Cheers" Company-specific phrases and terminology Integration Options CRM Systems**: Add nodes to create tasks in your CRM Project Management**: Auto-create tickets in Jira, Asana, etc. Calendar Integration**: Schedule follow-ups automatically Slack/Teams**: Alternative notification channels 🚨 Troubleshooting Common Issues 1. Gmail Authentication Errors Verify OAuth2 credentials are active Check Gmail API quotas Ensure proper scopes are configured 2. AI Classification Inconsistency Review and refine classification prompts Add more specific examples Adjust confidence thresholds 3. Response Generation Problems Validate AI model configuration Check API key and quotas Test with simpler email examples 4. Attachment Upload Failures Verify Google Drive permissions Check folder ID configuration Ensure sufficient storage space 5. Missing Notifications Test Telegram bot configuration Verify chat ID is correct Check urgency classification logic Performance Optimization Rate Limiting**: Gmail has API quotas - monitor usage Batch Processing**: Workflow processes one email at a time Error Handling**: Built-in retry logic for reliability Resource Management**: Monitor AI API costs and usage 📈 Best Practices 1. Email Management Regular Monitoring**: Review classifications weekly Label Hygiene**: Keep Gmail labels organized Feedback Loop**: Manually correct misclassifications Archive Strategy**: Set up auto-archiving for processed emails 2. AI Optimization Prompt Engineering**: Continuously refine AI instructions Example Training**: Add specific examples for your business Context Limits**: Monitor token usage and costs Model Selection**: Choose appropriate AI model for your needs 3. Security Considerations Credential Management**: Regularly rotate API keys Data Privacy**: Review what data is sent to AI services Access Control**: Limit workflow access to authorized users Audit Logging**: Monitor workflow executions 4. Workflow Maintenance Regular Updates**: Keep n8n and node versions current Backup Strategy**: Export workflow configurations regularly Documentation**: Keep setup notes and customizations documented Testing**: Test major changes in development environment first 🤝 Contributing to the Community This workflow template demonstrates: Comprehensive AI Integration**: Multiple AI touchpoints working together Production-Ready Architecture**: Error handling, retry logic, and monitoring Extensive Documentation**: Clear setup and customization guidance Flexible Configuration**: Adaptable to different business needs Best Practice Examples**: Security, performance, and maintenance considerations 📄 License & Support This workflow is provided free to the n8n community under MIT License. Community Resources: n8n Community Forum for questions GitHub Issues for bug reports Documentation updates welcome Professional Support: For enterprise deployments or custom modifications, consider: n8n Cloud for managed hosting Professional services for complex integrations Custom AI model training for specific use cases Transform your email workflow today! 🚀 This AI Email Assistant reduces email processing time by up to 90% while ensuring no important message goes unnoticed. Perfect for busy professionals who want to stay responsive without being overwhelmed by their inbox.