by Ada
How it works: This template demonstrates how to build a low-code, AI-powered data analysis workflow in n8n. It enables you to connect to various data sources (such as MySQL, Google Sheets, or local files), process and analyze structured data, and generate natural language insights and visualizations using external AI APIs. Key Features: Flexible data source selection (MySQL, Google Sheets, Excel/CSV, etc.) AI-driven data analysis, interpretation, and visualization via HTTP Request nodes Automated email delivery of analysis results (Gmail node) Step-by-step sticky notes for credential setup and workflow customization Step-by-step: Apply for an API Key You can easily create and manage your API Key in the ADA official website - API. To begin with, You need to register for an ADA account. Once on the homepage, click the bottom left corner to access the API management dashboard. Here, you can create new APIs and set the credit consumption limit for each API. A single account can create up to 10 APIs. After successful creation, you can copy the API Key to set credentials. You can also view the credit consumption of each API and manage your APIs. Set credentials In HTTP nodes(DataAnalysis, DataInterpretation, and DataVisualization) select Authentication → Generic Credential Type Choose Header Auth → Create new credential Name the header Authorization, which must be exactly 'Authorization', and fill in the previously applied API key Data Source: The workflow starts by extracting structured data from your chosen source (e.g., database, spreadsheet, or file). AI Skills: Data is sent to external AI APIs for analysis, interpretation, and visualization, based on your configured queries. Result Processing: The AI-generated results are converted to HTML or Markdown as needed. Output: The final report or visualization is sent via email. You can easily adapt this step to other output channels. API Keys Required: Ada API Key: For AI data analysis Gmail OAuth2: For sending emails (if using Gmail node) (Optional) Data source credentials: For MySQL, Google Sheets, etc.
by Gtaras
Who’s it for This workflow is for hotel managers, travel agencies, and hospitality teams who receive booking requests via email. It eliminates the need for manual data entry by automatically parsing emails and attachments, assigning booking cases to the right teams, and tracking performance metrics. What it does This workflow goes beyond simple automation by including enterprise-grade logic and security: 🛡️ Gatekeeper:** Watches your Gmail and filters irrelevant emails before spending money on AI tokens. 🧠 AI Brain:** Uses OpenAI (GPT-5-mini) to extract structured data from unstructured email bodies and PDF attachments. ⚖️ Business Logic:** Automatically routes tasks to different teams based on urgency, room count, and VIP status. 🔒 Security:** Catches PII (like credit card numbers) and scrubs them before they hit your database. 🚨 Safety Net:** If anything breaks, a dedicated error handling path logs the issue immediately so no booking is lost. 📈 ROI Tracking:** Calculates the time saved per booking to prove the value of automation. How to set up Create your Google Sheet: Create a new sheet and rename the tabs to: Cases, Team Assignments, Error Logs, Success Metrics. Add Credentials: Go to n8n Settings → Credentials and add your Gmail (OAuth2), Google Sheets, and OpenAI API keys. Configure User Settings: Open the "Configuration: User Settings" node at the start of the workflow. Paste your specific Google Sheet ID and Admin Email there. Adjust Business Rules: Open the "Apply Business Rules" node (Code node) to adjust the logic for team assignment (e.g., defining what counts as a "VIP" booking). Customize Templates: Modify the email templates in the Gmail nodes to match your hotel's branding. Test: Send a sample booking email to yourself to verify the filters and data extraction. Setup requirements Gmail account (OAuth2 connected) Google Sheets (with the 4 tabs listed below) OpenAI API key (GPT-5-mini recommended) n8n Cloud or self-hosted instance How to customize Filter Booking Emails:** Update the trigger node keywords to match your specific email subjects (e.g., "Reservation", "Booking Request"). Apply Business Rules:** Edit the Javascript in the Code node to fit your company’s internal logic (e.g., changing priority thresholds). New Metrics:** Add new columns in the Google Sheet (e.g., “Revenue Metrics”) and map them in the "Update Sheet" node. AI Model:** Switch to GPT-5 if you need higher reasoning capabilities for complex PDF layouts. Google Sheets Structure Description This workflow uses a Google Sheets document with four main tabs to track and manage hotel booking requests. 1. Cases This is the main data log for all incoming booking requests. case_id:** Unique identifier generated by the workflow. processed_date:** Timestamp when the workflow processed the booking. travel_agency / contact_details:** Extracted from the email. number_of_rooms / check_in_date:** Booking details parsed by the AI. special_requests:** Optional notes (e.g., airport transfer). assigned_team / priority:** Automatically set based on business rules. days_until_checkin:** Dynamic field showing urgency. 2. Team Assignments Stores internal routing and assignment details. timestamp:** When the case was routed. case_id:** Link to the corresponding record in the Cases tab. assigned_team / team_email:** Which department handles this request. priority:** Auto-set based on room count or urgency. 3. Error Log A critical audit trail that captures details about any failed processing steps. error_type:** Categorization of the failure (e.g., MISSING_REQUIRED_FIELDS). error_message:** Detailed technical explanation for debugging. original_sender / snippet:** Context to help you manually process the request if needed. 4. Success Metrics Tracks the results of your automation to prove its value. processing_time_seconds:** The time savings achieved by the automation (run time vs. human time). record_updated:** Confirmation that the database was updated. 🙋 Support If you encounter any issues during setup or have questions about customization, please reach out to our dedicated support email: foivosautomationhelp@gmail.com
by Harry Siggins
This n8n template transforms your daily meeting preparation by automatically researching attendees and generating comprehensive briefing documents. Every weekday morning, it analyzes your calendar events, researches each external attendee using multiple data sources, and delivers professionally formatted meeting briefs directly to your Slack channel. Who's it for Business professionals, sales teams, account managers, and executives who regularly attend meetings with external contacts and want to arrive fully prepared with relevant context, conversation starters, and strategic insights about their attendees. How it works The workflow triggers automatically Monday through Friday at 6 AM, fetching your day's calendar events and filtering for meetings with external attendees. For each meeting, an AI agent researches attendees using your CRM (Attio), email history (Gmail), past calendar interactions, and external company research via Perplexity when needed. The system then generates structured meeting briefs containing attendee background, relationship context, key talking points, and strategic objectives, delivering everything as a formatted Slack message to start your day. Requirements Google Calendar with OAuth2 credentials Gmail with OAuth2 credentials Slack workspace with bot token and channel access Attio CRM with API bearer token OpenRouter API key for AI model access (or other API credentials to connect AI to your AI agents) Perplexity API key for company research How to set up Configure credentials for all required services in your n8n instance Update personal identifiers in the workflow: Replace "YOUR_EMAIL@example.com" with your actual calendar email in both Google Calendar nodes Replace "YOUR_SLACK_CHANNEL_ID" with your target channel ID in both Slack nodes Adjust AI models in OpenRouter nodes based on your preferences and model availability Test the workflow manually with a day that contains external meetings Verify Slack formatting appears correctly in your channel How to customize the workflow Change meeting research depth: Modify the AI agent prompt to focus on specific research areas like company financial data, recent news, or technical background. Adjust notification timing: Update the cron expression in the Schedule Trigger to run at different times or days. Expand CRM integration: Add additional Attio API calls to capture more contact details or create follow-up tasks. Enhance Slack formatting: Customize the Block Kit message structure in the JavaScript code node to include additional meeting metadata or visual elements. Add more research sources: Connect additional tools like LinkedIn, company databases, or news APIs to the AI agent for richer attendee insights. The template uses multiple AI models through OpenRouter for different processing stages, allowing you to optimize costs and performance by selecting appropriate models for research tasks versus text formatting operations.
by Tom
This n8n workflow template simplifies the process of digesting cybersecurity reports by summarizing, deduplicating, organizing, and identifying viral topics of interest into daily emails. It will generate two types of emails: A daily digest with summaries of deduplicated cybersecurity reports organized into various topics. A daily viral topic report with summaries of recurring topics that have been identified over the last seven days. This workflow supports threat intelligence analysts digest the high number of cybersecurity reports they must analyse daily by decreasing the noise and tracking topics of importance with additional care, while providing customizability with regards to sources and output format. How it works The workflow follows the threat intelligence lifecycle as labelled by the coloured notes. Every morning, collect news articles from a set of RSS feeds. Merge the feeds output and prepare them for LLM consumption. Task an LLM with writing an intelligence briefing that summarizes, deduplicates, and organizes the topics. Generate and send an email with the daily digest. Collect the daily digests of the last seven days and prepare them for LLM consumption. Task an LLM with writing a report that covers 'viral' topics that have appeared prominently in the news. Store this report and send out over email. How to use & customization The workflow will trigger daily at 7am. The workflow can be reused for other types of news as well. The RSS feeds can be swapped out and the AI prompts can easily be altered. The parameters used for the viral topic identification process can easily be changed (number of previous days considered, requirements for a topic to be 'viral'). Requirements The workflow leverages Gemini (free tier) for email content generation and Baserow for storing generated reports. The viral topic identification relies on the Gemini Pro model because of a higher data quantity and more complex task. An SMTP email account must be provided to send the emails with. This can be through Gmail.
by Manav Desai
WhatsApp RAG Chatbot with Supabase, Gemini 2.5 Flash, and OpenAI Embeddings This n8n template demonstrates how to build a WhatsApp-based AI chatbot that answers user questions using document retrieval (RAG) powered by Supabase for storage, OpenAI embeddings for semantic search, and Gemini 2.5 Flash LLM for generating high-quality responses. Use cases are many: Turn your WhatsApp into a knowledge assistant for FAQs, customer support, or internal company documents — all without coding. Good to know The workflow uses OpenAI embeddings for both document embeddings and query embeddings, ensuring accurate semantic search. Gemini 2.5 Flash LLM** is used to generate user-friendly answers from the retrieved context. Messages are processed in real-time and sent back directly to WhatsApp. Workflow is modular — you can split document ingestion and query handling for large-scale setups. Supabase and WhatsApp API credentials must be configured before running. How it works Trigger: A new WhatsApp message triggers the workflow via webhook. Message Check: Determines if the message is a query or a document upload. Document Handling: Fetch file URL from WhatsApp. Convert binary to text. Generate embeddings with OpenAI and store them in Supabase. Query Handling: Generate query embeddings with OpenAI. Retrieve relevant context from Supabase. Pass context to Gemini 2.5 Flash LLM to compose a response. Response: Send the answer back to the user on WhatsApp. Optional: Add Gmail node to forward chat logs or daily summaries. How to use Configure WhatsApp Business API webhook for incoming messages. Add your Supabase and OpenAI credentials in n8n’s credentials manager. Upload documents via WhatsApp to populate the Supabase vector store. Ask queries — the bot retrieves context and answers using Gemini 2.5 Flash. Requirements WhatsApp Business API** (or Twilio WhatsApp Sandbox) Supabase account** (vector storage for embeddings) OpenAI API key** (for generating embeddings) Gemini API access** (for LLM responses) Customising this workflow Swap WhatsApp with Telegram, Slack, or email for different chat channels. Extend ingestion to other sources like Google Drive or Notion. Adjust the number of retrieved documents or prompt style in Gemini for tone control. Add a Gmail output node to send logs or alerts automatically.
by Yusuke Yamamoto
Daily AI News Summary & Gmail Delivery This n8n template demonstrates how to build an autonomous AI agent that automatically scours the web for the latest news, intelligently summarizes the top stories, and delivers a professional, formatted news digest directly to your email inbox. Use cases are many: Create a personalized daily briefing to start your day informed, keep your team updated on industry trends and competitor news, or automate content curation for your newsletter. Good to know At the time of writing, costs will depend on the LLM you select via OpenRouter and your usage of the Tavily Search API. Both services offer free tiers to get started. This workflow requires API keys and credentials for OpenRouter, Tavily, and Gmail. The AI Agent's system prompt is configured to produce summaries in Japanese. You can easily change the language and topics by editing the prompt in the "AI News Agent" node. How it works The workflow begins on a daily schedule, which you can configure to your preferred time. A Code node dynamically generates a search query for the current day's most important news across several categories. The AI Agent receives this query. It uses its attached tools to perform the task: It uses the Tavily News Search tool to find relevant, up-to-date articles from the web. It then uses the OpenRouter Chat Model to analyze the search results, identify the most significant stories, and write a summary for each. The agent's output is strictly structured into a JSON format, containing a main title and an array of individual news stories. Another Code node takes this structured JSON data and transforms it into a clean, professional HTML-formatted email. Finally, the Gmail node sends the beautifully formatted email to your specified recipient. How to use Before you start, you must add your credentials for OpenRouter, Tavily, and Gmail in their respective nodes. Customize the schedule in the "Schedule Trigger" node to set the daily delivery time. Change the recipient's email address in the final "Send a message" (Gmail) node. Requirements OpenRouter account (for access to various LLMs) Tavily AI account (for the real-time search API) Google account with Gmail enabled for sending emails via OAuth2 Customising this workflow Change the delivery channel:** Easily swap the final Gmail node for a Slack, Discord, or Telegram node to send the news summary to a team channel. Focus the news topics:** Modify the "Prepare News Query" node to search for highly specific topics, such as "latest advancements in artificial intelligence" or "financial news from the European market." Archive the news:** Add a node after the AI Agent to save the structured JSON data to a database or Google Sheet, allowing you to build a searchable news archive over time.
by Rapiwa
Who Is This For? This n8n automation workflow is designed for sales teams, client managers, consultants, or anyone who regularly schedules and follows up on meetings — and wants to save time doing it. If you often find yourself juggling between Google Sheets, Google Calendar, email, and WhatsApp just to manage your meetings, confirmations, and follow-ups — this workflow is for you. What This Workflow Does This workflow is structured into two main, independently scheduled branches: 1. Create Event (Schedule Meetings) Trigger:** Starts automatically on a schedule (e.g., every minute). Data Source:* Fetches new meeting data from a *Google Sheet**. Event Creation:* Creates a new event in *Google Calendar** using the data. Confirmation:* Sends a confirmation message via *WhatsApp (Rapiwa)* and *Email (Gmail)**. Status Update:* Updates the source *Google Sheet** to mark the meeting as 'sent'. 2. Reminder Event (Schedule Follow-ups) Trigger:** Starts automatically on a schedule (e.g., every minute). Past Events:* Retrieves recent past events from *Google Calendar**. Deduplication:** Uses a "Mark as Seen" node to prevent processing the same event multiple times. Filtering:** Filters for specific events that require a follow-up ("Only Follow Ups" node). AI Follow-up:* An *AI Meeting Agent (using Gemini/LLM)* uses the details of the past meeting and the Calendar's *Availability** tool to find and suggest open slots for a future meeting. Communication:* Sends a message with the suggested slots via *WhatsApp (Rapiwa)* and *Email (Gmail)**. Key Features Scheduled Automation:** Both event creation and follow-up scheduling run on a recurring schedule. Data Synchronization:* Reads meeting details from and updates a *Google Sheet**. Google Calendar Integration:** Creates events and checks calendar availability. Multi-Channel Communication:* Sends confirmations/follow-ups via *WhatsApp (Rapiwa)* and *Email (Gmail)**. AI-Powered Follow-up:* Uses an *AI Agent (Gemini)** to intelligently find and format available slots for the next meeting, considering the details of the past meeting (day, time, duration). Idempotency:** The "Mark as Seen" node prevents duplicate follow-up attempts for the same event. Requirements n8n instance with nodes: Schedule Trigger, Google Sheets, Split In Batches, Date & Time, Code, Google Calendar, Rapiwa, Gmail, Filter, Agent (LangChain), LLM Chat (Google Gemini), Structured Output Parser (LangChain), Set, Remove Duplicates, Wait. Google Calendar** with an available calendar for event creation and availability checks. Google Sheets** for storing meeting details. Rapiwa** (WhatsApp API) account credentials. Gmail** account credentials. Google Gemini (PaLM) API** credentials for the AI agent. How to Use — Step-by-Step Setup Credentials Setup Google Sheets OAuth2: Configure to allow the workflow to read from and write to your Sheet. Google Calendar OAuth2: Configure to allow event creation and availability checks. Rapiwa API: Set up credentials for sending WhatsApp messages. Gmail OAuth2: Set up credentials for sending email confirmations/follow-ups. Google Gemini(PaLM) API: Set up credentials for the AI agent functionality. Configure "Create Event" Branch Get in sheet: Update the Document ID and Sheet Name to point to your meeting data spreadsheet. The node is set to filter by a status column. Create an event: Verify the correct Calendar ID is selected. The end time is dynamically generated by the previous Code node. Rapiwa / Send a message1: Update the recipient number/email address and customize the message templates. Update status in sheet: Ensure the correct Document ID, Sheet Name, and matching column (row\_number) are configured to update the status to "sent". Configure "Reminder Event" Branch Get Past Events: Verify the correct Calendar ID is selected. Only Follow Ups: Customize the filter condition if only a subset of past meetings needs follow-up (e.g., if you have a "Follow-up Status" column to check). Meeting Agent: Review the System Message to ensure the AI's logic for finding slots matches your business rules (e.g., preferred working hours, look-ahead period). Generate Message: Customize the message template, which formats the AI-suggested slots. Rapiwa1 / Send a message: Update the recipient number/email address for the follow-up messages. Google Sheet Required Columns The workflow expects a Google Sheet with meeting data to have at least the following columns: A Google Sheet formatted like this ➤ Sample Sheet | title | description | location | color_number | start time | end time | reminder status | status | | :-------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------- | :----------- | :----------------- | :----------------- | :-------------- | :------ | | 2025 Personal Planner & Events Calendar | Stay organized and never miss an important date! This calendar helps........ | Dhaka, Bangladesh | 4 | 10/28/2025 3:50:00 | 10/29/2025 5:30:00 | sent | checked | | 2026 Personal Planner & Events Calendar | Stay organized and never miss an important date! This calendar helps........ | Dhaka, Bangladesh | 2 | 10/29/2025 3:50:00 | 10/30/2025 5:30:00 | sent | checked | Useful Links Dashboard:** https://app.rapiwa.com Official Website:** https://rapiwa.com Documentation:** https://docs.rapiwa.com Support & Help WhatsApp**: Chat on WhatsApp Discord**: SpaGreen Community Facebook Group**: SpaGreen Support Website**: https://spagreen.net Developer Portfolio**: Codecanyon SpaGreen
by Václav Čikl
Description: This sophisticated workflow automates personalized email campaigns for musicians and band managers. The system processes contact databases, analyzes previous Gmail conversation history, and uses AI to generate contextually appropriate emails tailored to different contact categories (venues, festivals, media, playlists). Key Features: Multi-category support**: Bookers, festivals, media, playlist curators Conversation context analysis**: Maintains relationship history from Gmail AI-powered personalization**: Custom prompts for each contact type Multi-language support**: Localized content and prompts Gmail integration**: Automatic draft creation with signatures Bulk processing**: Handle hundreds of contacts efficiently Use Cases: Album/single promotion campaigns Tour booking automation Festival submission management Playlist pitching campaigns Media outreach automation Venue relationship management Perfect For: Independent musicians and bands Music managers and booking agents Record labels with multiple artists PR agencies in music industry Festival organizers (for artist outreach) Required Setup: 1. Credentials & APIs: Gmail OAuth2** (read messages + create drafts permissions) Google Sheets API** (for AutomatizationHelper configuration) OpenAI API** or compatible LLM (for content generation) 2. Required Files: Contact Database** (CSV): Your venue/media/festival contacts AutomatizationHelper** (Google Sheets): Campaign configuration, prompts, links 3. Example Data: 📁 Download Example Files The folder contains: Sample contact database (CSV) AutomatizationHelper template (CSV + Google Sheets) Detailed setup instructions (README) Data Structure: Contact Database Fields: venue_name - Organization name category - booker/festival/media/playlisting email_1 - Primary email (required) email_2 - Secondary email (optional, for CC) active - active/inactive (for filtering) language - EN/DE/etc. (for localization) AutomatizationHelper Fields: LANGUAGE - Language code CATEGORY - Contact type LATEST_SINGLE - Spotify/Apple Music link LATEST_VIDEO - YouTube/Vimeo link EPK - Electronic Press Kit URL SIGNATURE - HTML email signature PROMPT - AI prompt for this category SUBJECT - Email subject template Setup Instructions: Step 1: Prepare Your Data Download example files from the Google Drive folder Replace sample data with your real contacts and band information Customize AI prompts for your communication style Update signature with your contact details Step 2: Configure APIs Set up Gmail OAuth2 credentials in n8n Configure Google Sheets API access Add OpenAI API key for content generation Step 3: Import & Configure Workflow Import the workflow JSON Connect your credentials to respective nodes Update Google Sheets URL in AutomatizationHelper node Test with a small contact sample first Step 4: Customize & Run Adjust AI prompts in AutomatizationHelper for your style Update contact categories as needed Run workflow - drafts will be created in Gmail for review Tips: Start small**: Test with 5-10 contacts first Review drafts**: Always review AI-generated content before sending Update regularly**: Keep your AutomatizationHelper current with latest releases Monitor responses**: Track which prompts work best for different categories Language mixing**: You can have contacts in multiple languages Important Notes: Emails are created as Gmail drafts - manual review recommended Respects Gmail API rate limits automatically Conversation history analysis works best with existing email threads HTML signatures are automatically added (Gmail API limitation workaround) Handles multiple languages simultaneously Maintains conversation context across campaigns Generates unique content for each contact Template Author: Questions or need help with setup? Email: xciklv@gmail.com LinkedIn: https://www.linkedin.com/in/vaclavcikl/
by NODA shuichi
Description: More than an alarm. A smart morning experience that adapts to the weather. 🎸☔️☀️ This workflow demonstrates how to upgrade a simple automation into a smart, context-aware system. By integrating OpenMeteo (Weather API), Google Gemini (AI), and Spotify, it creates a personalized DJ experience for your morning. Why is this "Advanced"? Context Awareness: It doesn't just play music; it checks the weather (via OpenMeteo API) to understand the user's environment. AI Persona: Gemini acts as a live DJ, generating commentary that connects the specific Led Zeppelin track to the current weather conditions (e.g., "It's rainy, perfect for 'The Rain Song'"). Data Logging: It logs every wake-up session (Song, Time, Weather) to Google Sheets, creating a personal music history database. Robust Error Handling: Includes logic to detect offline speakers and send fallback alerts. How it works: Check Context: Fetches real-time weather data for your location and checks your Spotify speaker status. Select Music: Picks a random track from Led Zeppelin's top hits. Generate: Gemini generates a unique "Good Morning" script combining the song title and the weather. Action: Plays the music, logs the data to Google Sheets, and emails you the AI's greeting with album art. Setup Requirements: Spotify Premium Google Gemini API Key Google Sheets: Create a sheet named History with headers: date, time, weather, temperature, song, artist. Gmail
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