by Joseph LePage
-- Disclaimer: This workflow uses a community node and therefore only works for self-hosted n8n users -- Transform YouTube videos into comprehensive summaries and structured analysis instantly. This n8n workflow automatically extracts, processes, and analyzes video transcripts to deliver clear, organized insights without watching the entire video. Time-Saving Features 🚀 Instant Processing Simply provide a YouTube URL and receive a structured summary within seconds, eliminating the need to watch lengthy videos. Perfect for research, learning, or content analysis. 🤖 AI-Powered Analysis Leverages GPT-4o-mini to analyze video transcripts, organizing key concepts and insights into a clear, hierarchical structure with main topics and essential points. Smart Processing Pipeline 📝 Automated Transcript Extraction Supports public YouTube video Handles multiple URL formats Extracts complete video transcripts automatically 🧠 Intelligent Content Organization Breaks down content into main topics Highlights key concepts and terminology Maintains technical accuracy while improving clarity Structures information logically with markdown formatting Perfect For 📚 Researchers & Students Quick comprehension of educational content and lectures without watching entire videos. 💼 Business Professionals Efficient analysis of industry talks, presentations, and training materials. 🎯 Content Creators Rapid research and competitive analysis of video content in your niche. Technical Implementation 🔄 Workflow Components Webhook endpoint for URL submission YouTube API integration for video details Transcript extraction system GPT-4 powered analysis engine Telegram notification system (optional) Transform your video content consumption with an intelligent system that delivers structured, comprehensive summaries while saving hours of viewing time.
by Manu
For every release on GitHub this workflow will create an issue on GitLab. Copy workflow to your n8n Fill in missing fields (credentials & repo names) Based on Cron node to be able to track github repos you're not a member of (as you won't be able to create a webhook). If you do own the repo, you could replace Cron & GH node with a GitHub Trigger.
by Darsheel
This n8n workflow acts as an AI-powered Inbox Assistant that automatically summarizes and classifies Gmail emails, prioritizes important messages, and sends a daily digest to Slack. It’s ideal for startup founders and small teams juggling investor intros, customer leads, and support queries — all from a busy Gmail inbox. Each email is processed using ChatGPT to generate a concise summary, classify the message (e.g., Support, Investor, Spam), and determine its urgency. High and medium priority messages are forwarded to Slack instantly. Lower priority emails are logged to Google Sheets for review. A daily 7 PM digest summarizes the day’s most important messages. 💡 Use Cases Preventing missed investor or lead emails Lightweight CRM alternative using Google Sheets Slack summaries of critical Gmail activity 🔧 How It Works Gmail node fetches new messages ChatGPT summarizes and extracts urgency + type High/medium urgency → sent to Slack + labeled in Gmail Low urgency → logged in Google Sheets Cron node triggers a daily 7 PM Slack summary ✅ Requirements OpenAI API Key (GPT-4 or GPT-4o recommended) Gmail access with read and label permission Slack Bot Token or Webhook URL Google Sheets integration (optional) 🛠 Customization Ideas Replace Slack with Telegram or WhatsApp Route investor leads to Airtable or Notion Add multi-language support in ChatGPT prompt Create weekly summaries via email
by Tamer
Vacation Planning Agent - n8n Workflow Overview This n8n workflow creates an intelligent vacation planning chatbot that helps users find and book the perfect hotel accommodations. The agent acts as a professional travel consultant, systematically gathering travel requirements and providing personalized hotel recommendations through an interactive chat interface. Core Functionality The workflow provides a conversational AI agent that: Conducts structured information gathering** through natural conversation Automatically searches for hotels** using real-time data from Google Hotels Provides personalized recommendations** with detailed hotel information Maintains conversation context** throughout the planning process Delivers professional travel consultation** in a friendly, accessible format User Experience Flow Initial Interaction Users are greeted with a warm welcome message in German: "Hallo! Ich helfe dir, deinen perfekten Urlaub zu planen. Bitte beanworte mir die folgenden Fragen :)" Information Collection Process The agent systematically collects essential travel details: Destination - City and country/state Travel Dates - Check-in and check-out dates Guest Count - Number of travelers Room Requirements - Number of rooms needed Budget Preferences - Optional price range Automated Hotel Search Once core information is gathered, the agent automatically searches for available accommodations without requiring user permission. Recommendation Delivery Results are presented in a structured format including: Hotel names and star ratings Pricing information Location details Guest ratings and reviews Key amenities and highlights Direct booking links Required Integrations OpenAI API Purpose**: Powers the conversational AI agent Model**: GPT-4o-mini for cost-effective, intelligent responses Requirement**: Valid OpenAI API credentials SerpAPI (Google Hotels) Purpose**: Real-time hotel search and pricing data Service**: Google Hotels search engine integration Requirement**: Active SerpAPI account and API key Key Features Intelligent Conversation Management Maintains conversation context with 20-message memory buffer Handles edge cases like no available hotels or unclear responses Provides alternative suggestions when initial searches yield limited results Flexible Search Parameters Supports location-based searches worldwide Accommodates date range specifications Handles guest count and room quantity requirements Optional budget filtering (min/max price ranges) Currency customization support Professional Presentation Structured hotel recommendation format Clear pricing and availability information Contextual explanations for recommendations Additional destination insights when relevant Use Cases This workflow is ideal for: Travel websites** seeking to add AI-powered hotel booking assistance Travel agencies** wanting to automate initial consultation processes Hospitality businesses** providing customer service automation Personal travel planning** applications Customer support** for travel-related inquiries User Benefits Time-saving**: Eliminates manual hotel research Personalized results**: Tailored recommendations based on specific needs Real-time data**: Current pricing and availability information Professional guidance**: Expert-level travel consultation Seamless experience**: Natural conversation flow without complex forms Technical Requirements Essential Services n8n workflow automation platform OpenAI API access (GPT-4o-mini model) SerpAPI account with Google Hotels access Configuration Needs API credential setup for both OpenAI and SerpAPI Webhook endpoint configuration for chat trigger Memory buffer configuration for conversation context Optional Enhancements Custom branding for chat interface Additional language support beyond German greeting Integration with booking platforms for direct reservations Analytics tracking for usage insights
by Jonathan
This workflow is part of an MSP collection, which is publicly available on GitHub. This workflow archives or unarchives a Clockify projects, depending on a Syncro status. Note that Syncro should be setup with a webhook via 'Notification Set for Ticket - Status was changed'. It doesn't handle merging of tickets, as Syncro doesn't support a 'Notification Set' for merged tickets, so you should change a ticket to 'Resolved' first before merging it. Prerequisites A Clockify account and credentials Nodes Webhook node triggers the workflow. IF node filters projects that don't have the status 'Resolved'. Clockify nodes get all projects that (don't) have the status 'Resolved', based on the IF route. HTTP Request nodes unarchives unresolved projects, and archives resolved projects, respectively.
by Dhrumil Patel
This n8n workflow template is designed to route user input to specialized agents (like a Reminder Agent, Email Agent, etc.) using a structured output from a language model. Here's a complete description of what it does and how each part works: 🔁 Workflow Purpose: This template receives a user's request via Webhook, processes it using an LLM, extracts structured data like the agent name and user query, and routes the input to the appropriate sub-workflow (agent) based on the specified agent type. 🧩 Workflow Breakdown: 1. Webhook (Trigger) Node: Webhook Purpose: Accepts a POST request from any frontend or API source. It contains the raw user input. 2. GPT Model (LLM Inference) Node: GPT 4o Mini Purpose: Interprets the user input and determines: Which agent should handle it (e.g., "Reminder Agent", "Email Agent", etc.) The actual user request (in structured format) 3. Auto-Fixing Output Parser Node: Auto-fixing Output Parser Purpose: Ensures that the output from the LLM matches the expected structure. If there's a mismatch, it automatically corrects it using a re-prompt. 4. Structured Output Parser Node: Structured Output Parser Purpose: Converts the language model's response into a strict JSON structure with keys like: "Agent Name" "user input" "sessionID" 5. Agent Router Node: Switch ("Agent Route") Purpose: Based on "Agent Name", it routes the input to one of the following sub-workflows: 📅 Reminder Agent 📧 Email Agent 🧾 Document Agent 🤝 Meeting Agent 6. Sub-Workflow Call (Execute Workflow) Each agent is implemented as a separate n8n workflow: The input is forwarded to the selected agent. For example, if "Agent Name" is "Reminder Agent", the workflow "Reminder Agent" is called with "user input". 7. Webhook Response After the sub-agent workflow finishes, a Respond to Webhook node sends the output back as an HTTP response. ✅ Key Features: Fully modular and extensible LLM-driven routing using OpenRouter GPT-4o Auto-corrects structured output errors Clean separation of concerns (agent logic is decoupled in sub-workflows) Easily add more agents by updating the switch logic 📦 Use Case Examples: User says: “Remind me to call my mom tomorrow.” → Routed to Reminder Agent User says: “Send an email to the HR team.” → Routed to Email Agent User says: “Schedule a meeting with John next week.” → Routed to Meeting Agent
by Eric
This is a specific use case. The ElevenLabs guide for Cal.com bookings is comprehensive but I was having trouble with the booking API request. So I built a simple workflow to validate the request and handle the booking creation. Who's this for? You have an ElevenLabs voice agent (or other external service) booking meetings in your Cal.com account and you want more control over the book_meeting tool called by the voice agent. How's it work? Request is received by the webhook trigger node Request sent from ElevenLabs voice agent, or other source Request body contains contact info for the user with whom a meeting will be booked in Cal.com Workflow validates input data for required fields in Cal.com If validation fails, a 400 bad request response is returned If valid, meeting is booked in Cal.com api How do I use this? Create a custom tool in the ElevenLabs agent setup, and connect it to the webhook trigger in this workflow. Add authorization for security. Instruct your voice agent to call this tool after it has collected the required information from the user. Expected input structure Note: Modify this according to your needs, but be sure to reflect your changes in all following nodes. Requirements here depend on required fields in your Cal.com event type. If you have multiple event types in Cal.com with varying required fields, you'll need to handle this in this workflow, and provide appropriate instructions in your *voice agent prompt*. "body": { "attendee_name": "Some Guy", "start": "2025-07-07T13:30:00Z", "attendee_phone": "+12125551234", "attendee_timezone": "America/New_York", "eventTypeId": 123456, "attendee_email": "someguy@example.com", "attendee_company": "Example Inc", "notes": "Discovery call to find synergies." } Modifications Note: ElevenLabs doesn't handle webhook response headers or body, and only recognizes the response code. In other words, if the workflow responds with 400 Bad request that's the only info the voice agent gets back; it doesn't get back any details, eg. "User email still needed". You can modify the structure of the expected webhook request body, and then you should reflect that structure change in all following nodes in the workflow. Ie. if you change attendee_name to attendeeFirstName and attendeeLastName then you need to make this change in the following nodes that use these properties. You can also require or make optional other user data for the Cal.com event type which would reduce or increase the data the voice agent must collect from the user. You can modify the authorization of this webhook to meet your security needs. ElevenLabs has some limitations and you should be mindful of those, but it also offers a secret feature with proves useful. An improvement to this workflow could include a GET request to a CRM or other db to get info on the user interacting with the voice agent. This could reduce some of the data collection needed from the voice agent, like if you already have the user's email address, for example. I believe you can also get the user's phone number if the voice agent is set up on a dial-in interface, so then the agent wouldn't need to ask for it. This all depends on your use case. A savvy step might be prompting the voice agent to get an email, and using the email in this workflow to pull enrichment data from Apollo.io or similar ;-)
by Akhil Varma Gadiraju
Conference Feedback Collection and OneDrive Logging Workflow This n8n workflow is designed to collect feedback through a web form, log the responses into an Excel file stored in Microsoft OneDrive, and notify the support team via email. 🧭 Overall Goal To collect user feedback from a web form, structure the data, log it into a OneDrive Excel file, and notify support via Outlook email. 🔄 Workflow Breakdown 1. Form Submission (On form submission) Node Type**: formTrigger Purpose**: Captures user feedback via a web form. Form Fields**: Full Name (Required) Email (Required) Company Name Job Title How did you hear about the conference? (Required) Overall experience rating (Required) Favorite sessions/speakers Relevance to interests/work (Required) Networking opportunities (Required) Suggestions for improvement Future topics/speakers Willingness to attend again (Required) Additional comments Contact permission (Required) Access URL**: /webhook/feedback (or /webhook-test/feedback during testing) 2. Parse Data (Set) Purpose**: Renames form fields to snake_case. Output**: Structured JSON with renamed fields. 3. Sample File (Convert to File) Purpose**: Generates a file name reference for search. Filename**: test-n8n-feedback-form-data.xlsx 4. Search Document (Microsoft OneDrive) Purpose**: Searches OneDrive for the specified Excel file. Query**: test-n8n-feedback-form-data.xlsx 5. Extract File ID (Code) Purpose**: Extracts the ID of the file from the search result. Output**: { "id": "someFileId" } or { "id": null } 6. Check File Existence (If) Purpose**: Branch logic based on file existence. Condition**: If id exists. 7. Build Sheet Data (Set) Purpose**: Prepares the data to match the Excel column headers. Only Runs If**: File was found. 8. Append Data to Excel (Microsoft Excel) Purpose**: Appends the new feedback as a row. Workbook ID**: {{ $('Code').item.json.id }} Worksheet Name**: Sheet1 Mode**: Auto-map from input fields 9. Notify Support (Microsoft Outlook) Purpose**: Sends a notification email with key feedback details. To**: test@gmail.com Subject**: "New Feedback Submission Received" Body**: Includes key details from submission 10. End Workflow (NoOp) Purpose**: Marks logical end of the workflow. 📝 Sticky Notes ✅ Upload Target Excel File First: Ensure the Excel file exists in OneDrive. 📝 Filename Consistency: Filename should match in "Sample File" and "Search Document" nodes. 📧 Customize Email Content: Update "Notify Support" node with your desired message and recipient. 🔧 Customization Guide 🧾 Form Customization Change form title, description, fields, or path. 🧪 Parsing Logic Update field mappings if form labels change. 📁 Excel File Settings Filename must match your actual OneDrive file. Worksheet name and column headers must match in "Build Sheet Data". 📬 Email Settings Update subject and body using variables like {{ $('Parse Data').item.json.full_name }}. ❗ Error Handling Tips Adjust email content based on file presence. Add an "Error Trigger" for advanced error management. 🔁 Alternatives and Extensions Use Google Sheets, Airtable, or databases instead of OneDrive/Excel. Add Slack or SMS notifications. 📌 Use Cases Post-event Feedback CSAT Surveys Employee Feedback Bug Reporting Lead Capture Contact Forms Webinar Registration 🔐 Required Credentials 1. Microsoft OneDrive (OAuth2) Used by**: "Search Document" Credential Name**: Microsoft Drive account 2. Microsoft Excel (OAuth2) Used by**: "Append Data" Credential Name**: Microsoft Excel account 3. Microsoft Outlook (OAuth2) Used by**: "Notify Support" Credential Name**: Outlook 0Auth2 ❤️ Made with n8n by Akhil
by Charles
Modern AI systems are powerful but pose privacy risks when handling sensitive data. Organizations need AI capabilities while ensuring: ✅ Sensitive data never leaves secure environments ✅ Compliance with regulations (GDPR, HIPAA, PCI, SOX) ✅ Real-time decision making about data sensitivity ✅ Comprehensive audit trails for regulatory review The Concept: Intelligent Data Classification + Smart Routing The goal of this concept is to build the foundations of the safe and compliant use of LLMs in Agentic workflows by automatically detecting sensitive data, applying sanitization rules, and intelligently routing requests through secure processing channels. This workflow will analyze the user's chat or webhook input and attempt to detect PII using the Enhanced PII Pattern Detector. If detected, the workflow will process that input via a series of Compliance, Auditing, and Security steps which log and sanitizes the request prior to any LLM being pinged. Why Multi-Tier Routing? Traditional systems use binary decisions (sensitive/not sensitive). Our 3-tier approach provides: ✅ Granular Security: Critical PII gets maximum protection ✅ Performance Optimization: Clean data gets full cloud capabilities ✅ Cost Efficiency: Expensive local processing only when needed ✅ User Experience: Maintains conversational flow across security levels Why Context-Aware Detection? Regex patterns alone miss contextual sensitivity. Our approach: ✅ Catches Intent: "Bank account" discussion is sensitive even without account numbers ✅ Reduces False Negatives: Medical discussions stay secure even without explicit medical IDs ✅ Proactive Protection: Identifies sensitive contexts before PII is shared ✅ Compliance Alignment: Matches how regulations actually define sensitive data Why Risk Scoring vs Binary Classification? Binary PII detection creates artificial boundaries. Risk scoring provides: ✅ Nuanced Decisions: Multiple low-risk patterns might aggregate to high risk ✅ Adaptive Thresholds: Organizations can adjust sensitivity based on their needs ✅ Better UX: Users aren't unnecessarily restricted for low-risk scenarios ✅ Audit Transparency: Clear reasoning for every routing decision Why Comprehensive Monitoring? Privacy systems require trust and verification: ✅ Compliance Proof: Audit trails demonstrate regulatory compliance ✅ Performance Optimization: Identify bottlenecks and improve efficiency ✅ Security Validation: Ensure no sensitive data leakage occurs ✅ Operational Insights: Understand usage patterns and system health How to Install: All that you will need for this workflow are credentials for your LLM providers such as Ollama, OpenRouter, OpenAI, Anthropic, etc. This workflow is customizable and allows the user to define the best LLM and storage/memory solutions for their specific use case.
by David w/ SimpleGrow
This n8n workflow tracks user engagement in a specific WhatsApp group by capturing incoming messages via a Whapi webhook. It first filters messages to ensure they come from the correct group, then identifies the message type—text, emoji reaction, voice, or image. The workflow searches for the user in an Airtable database using their WhatsApp ID and increments their message count by one. It updates the Airtable record with the new count and the date of the last interaction. This automated process helps measure user activity and supports engagement initiatives like weekly raffles or rewards. The system is flexible and can be expanded to include more message types or additional actions. Overall, it provides a seamless way to encourage and track user participation in your WhatsApp community.
by Samir Saci
Context Hey! I'm Samir, a Supply Chain Data Scientist from Paris who spent six years in China studying and working while struggling to learn Mandarin. I know the challenges of mastering a complex language like Chinese and my greatest support was flash cards. Therefore, I designed this workflow to support fellow Mandarin learners by automating flashcard creation using n8n, so they can focus more on learning and less on manual data entry. 📬 For business inquiries, you can add me on Here Who is this template for? This workflow template is designed for language learners and educators who want to automate the creation of flashcards for Mandarin (or any other language) using Google Translate API, an AI agent for phonetic transcription and generating an illustrative sentence and a free image retrieval API. Why? If you use the open-source application Anki, this workflow will help you automatically generate personalized study materials. How? Let us imagine you want to learn how to say the word Contract in Mandarin. The workflow will automatically Translate the word in Simplified Mandarin (Mandarin: 合同). Provide the phonetic transcription (Pinyin: Hétóng) Generate an example sentence (Example: 我们签订了一份合同.) Download an illustrative picture (For example, a picture of a contract signature) All these fields are automatically recorded in a Google Sheet, making it easy to import into Anki and generate flashcards instantly What do I need to start? This workflow can be used with the free tier plans of the services used. It does not require any advanced programming skills. Prerequisite A Google Drive Account with a folder including a Google Sheet API Credentials: Google Drive API, Google Sheets API and Google Translate API activated with OAuth2 credentials A free API key of pexels.com A google sheet with the columns Next Follow the sticky notes to set up the parameters inside each node and get ready to pump your learning skills. I have detailed the steps in a short tutorial 👇 🎥 Check My Tutorial Notes This workflow can be used for any language. In the AI Agent prompt, you just need to replace the word pinyin with phonetic transcription. You can adapt the trigger to operate the workflow in the way you want. These operations can be performed by batch or triggered by Telegram, email, or webhook. If you want to learn more about how I used Anki flash cards to learn mandarin: 🈷️ Blog Article about Anki Flash Cards This workflow has been created with N8N 1.82.1 Submitted: March 17th, 2025
by Preston Zeller
How It Works This workflow automates the real estate lead qualification process by leveraging property data from BatchData. The automation follows these steps: When a new lead is received through your CRM webhook, the workflow captures their address information It then makes an API call to BatchData to retrieve comprehensive property details A sophisticated scoring algorithm evaluates the lead based on property characteristics like: Property value (higher values earn more points) Square footage (larger properties score higher) Property age (newer constructions score higher) Investment status (non-owner occupied properties earn bonus points) Lot size (larger lots receive additional score) Leads are automatically classified into categories (high-value, qualified, potential, or unqualified) The workflow updates your CRM with enriched property data and qualification scores High-value leads trigger immediate follow-up tasks for your team Notifications are sent to your preferred channel (Slack in this example) The entire process happens within seconds of receiving a new lead, ensuring your sales team can prioritize the most valuable opportunities immediately.. Who It's For This workflow is perfect for: Real estate agents and brokers looking to prioritize high-value property leads Mortgage lenders who need to qualify borrowers based on property assets Home service providers (renovators, contractors, solar installers) targeting specific property types Property investors seeking specific investment opportunities Real estate marketers who want to segment audiences by property value Home insurance agents qualifying leads based on property characteristics Any business that bases lead qualification on property details will benefit from this automated qualification system. About BatchData BatchData is a comprehensive property data provider that offers detailed information about residential and commercial properties across the United States. Their API provides: Property valuation and estimates Ownership information Property characteristics (size, age, bedrooms, bathrooms) Tax assessment data Transaction history Occupancy status (owner-occupied vs. investment) Lot details and dimensions By integrating BatchData with your lead management process, you can automatically verify and enrich leads with accurate property information, enabling more intelligent lead scoring and routing based on actual property characteristics rather than just contact information. This workflow demonstrates how to leverage BatchData's property API to transform your lead qualification process from manual research into an automated, data-driven system that ensures high-value leads receive immediate attention.