by Jonathan
This workflow will check a mailbox for new emails and if the Subject contains Expenses or Reciept it will send the attachment to Mindee for processing then it will update a Google sheet with the values. To use this node you will need to set the Email Read node to use your mailboxes credentials and configure the Mindee and Google Sheets nodes to use your credentials.
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 Agent Circle
This n8n template demonstrates how to use the tool to crawl comments from a YouTube video and simply get all the results in a linked Google Sheet. Use cases are many: Whether you're a YouTube creator trying to understand your audience, a marketer running sample analysis, a data analyst compiling engagement metrics, or part of a growth team tracking YouTube or social media campaign performance, this workflow helps you extract real, actionable insights from YouTube video comments at scale. How It Works The workflow starts when you manually click Test Workflow or Execute Workflow in N8N. It reads the list of YouTube video URLs from the Video URLs tab in the connected YouTube – Get Video Comments Google Sheet. Only the URLs marked with the Ready status will be processed. The tool loops through each video and sends an HTTP request to the YouTube API to fetch comment data. Then, it checks whether the request is successful before continuing. If comments are found, they are split and processed. Each comment is then inserted in the Results tab of the connected YouTube – Get Video Comments Google Sheet. Once a URL has been finished, its status in the Video URLs tab of the YouTube – Get Video Comments Google Sheet is updated to Finished. How To Use Download the workflow package. Import the workflow package into your N8N interface. Duplicate the "YouTube - Get Video Comments" Google Sheet template into your Google Sheets account. Set up Google Cloud Console credentials in the following nodes in N8N, ensuring enabled access and suitable rights to Google Sheets and YouTube services: For Google Sheets access, ensure each node is properly connected to the correct tab in your connected Google Sheet template: Node Google Sheets - Get Video URLs → connected to the Video URLs tab; Node Google Sheets - Insert/Update Comment → connected to the Results tab; Node Google Sheets - Update Status connected to the Video URLs tab. For YouTube access: Set up a GET method in Node HTTP Request - Get Comments. Open the template in your Google Sheets account. In the tab Video URLs, fill in the video URLs you want to crawl in Column B and update the status for each row in Column A to Ready. Return to the N8N interface and click Execute Workflow. Check the results in the Results tab of the template - the collected comments will appear there. Requirements Basic setup in Google Cloud Console (OAuth or API Key method enabled) with enabled access to YouTube and Google Sheets. How To Customize By default, the workflow is manually triggered in N8N. However, you can automate the process by adding a Google Sheets trigger that monitors new entries in your connected YouTube – Get Video Comments template and starts the workflow automatically. Need Help? Join our community on different platforms for support, inspiration and tips from others. Website: https://www.agentcircle.ai/ Etsy: https://www.etsy.com/shop/AgentCircle Gumroad: http://agentcircle.gumroad.com/ Discord Global: https://discord.gg/d8SkCzKwnP FB Page Global: https://www.facebook.com/agentcircle/ FB Group Global: https://www.facebook.com/groups/aiagentcircle/ X: https://x.com/agent_circle YouTube: https://www.youtube.com/@agentcircle LinkedIn: https://www.linkedin.com/company/agentcircle
by Dataki
This workflow serves as a solid foundation when you need an AI Agent to return output in a specific JSON schema, without relying on the often-unreliable Structured Output Parser. What It Does The example workflow takes a simple input (like a food item) and expects a JSON-formatted output containing its nutritional values. Why Use This Instead of Structured Output Parser? The built-in Structured Output Parser node is known to be unreliable when working with AI Agents. While the n8n documentation recommends using a “Basic LLM Chain” followed by a Structured Output Parser, this alternative workflow completely avoids using the Structured Output Parser node. Instead, it implements a custom loop that manually validates the AI Agent's output. This method has proven especially reliable with OpenAI's gpt-4.1 series (gpt-4.1, gpt-4.1-mini, gpt-4.1-nano), which tend to produce correctly structured JSON on the first try, as long as the System Prompt is well defined. In this template, gpt-4.1-nano is set by default. How It Works Instead of using the Structured Output Parser, this workflow loops the AI Agent through a manual schema validation process: A custom schema check is performed after the AI Agent response. A runIndex counter tracks the number of retries. A Switch node: If the output does not match the expected schema, it routes back to the AI Agent with an updated prompt asking it to return the correct format. The process allows up to 4 retries to avoid infinite loops. If the output does match the schema, it continues to a Set node that serves as chat response (you can customize this part to fit your use case). This approach ensures schema consistency, offers flexibility, and avoids the brittleness of the default parser.
by Jesse White
Automate High-Quality Voice with Google Text-to-Speech & n8n Effortlessly convert any text into stunningly realistic, high-quality audio with this powerful n8n workflow. Leveraging Google's advanced Text-to-Speech (TTS) AI, this template provides a complete, end-to-end solution for generating, storing, and tracking voiceovers automatically. Whether you're a content creator, marketer, or developer, this workflow saves you countless hours by transforming your text-based scripts into ready-to-use audio files. The entire process is initiated from a simple form, making it accessible for users of all technical levels. Features & Benefits 🗣️ Studio-Quality Voices: Leverage Google's cutting-edge AI to produce natural and expressive speech in a wide variety of voices and languages. 🚀 Fully Automated Pipeline: From text submission to final file storage, every step is handled automatically. Simply input your script and let the workflow do the rest. ☁️ Seamless Cloud Integration: Automatically uploads generated audio files to Google Drive for easy access and sharing. 📊 Organized Asset Management: Logs every generated audio file in an Airtable base, complete with the original script, a direct link to the file, and its duration. ⚙️ Simple & Customizable: The workflow is ready to use out-of-the-box but can be easily customized. Change the trigger, add notification steps, or integrate it with other services in your stack. Perfect For a Variety of Use Cases 🎬 Content Creators: Generate consistent voiceovers for YouTube videos, podcasts, and social media content without needing a microphone. 📈 Marketers: Create professional-sounding audio for advertisements, product demos, and corporate presentations quickly and efficiently. 🎓 Educators: Develop accessible e-learning materials, audiobooks, and language lessons with clear, high-quality narration. 💻 Developers: Integrate dynamic voice generation into applications, build interactive voice response (IVR) systems, or provide audio feedback for user actions. How The Workflow Operates Initiate with a Form: The process begins when you submit a script, a desired voice, and language through a simple n8n Form Trigger. Synthesize Speech: The workflow sends the text to Google's Text-to-Speech API, which generates the audio and returns it as a base64 encoded file. Process and Upload: The data is converted into a binary audio file and uploaded directly to a specified folder in your Google Drive. Enrich Metadata: The workflow then retrieves the audio file's duration using the fal.ai ffmpeg API, adding valuable metadata. Log Everything: Finally, it creates a new record in your Airtable base, storing the asset name, description (your script), content type, file URLs from Google Drive, and the audio duration for perfect organization. What You'll Need To use this workflow, you will need active accounts for the following services: Google Cloud oAuth2 Client Credentials:** With the Text-to-Speech API enabled. Google Drive:** For audio file storage. Airtable:** For logging and asset management. fal.ai:** For the ffmpeg API used to get audio duration.
by David Olusola
Overview A comprehensive educational workflow that demonstrates practical JavaScript usage in n8n's Code node through real-world business scenarios. Perfect for learning data manipulation, transformation, and automation patterns that you can immediately apply to client projects. What This Template Teaches: Data Filtering & Transformation - Filter employees by age, calculate bonuses, format contact information Statistical Analysis - Generate team statistics, averages, role distributions, and KPIs Multi-Format Export - Create CSV files, email lists, and API-ready payloads from raw data n8n Best Practices - Proper JSON handling, return formats, and data flow patterns How It Works: Manual Trigger starts the workflow with sample employee data Set Sample Data provides realistic business data (employees with roles, salaries, ages) Three Code Node Examples process the same data differently: Filter & Transform: Creates adult employee list with calculated bonuses Calculate Stats: Generates comprehensive team analytics and reports Format for Export: Prepares data for external systems (APIs, emails, CSV) Key Learning Points: Access input data using items[0].json.propertyName Return proper n8n format with [{ json: data }] structure Use JSON.parse() for string-to-object conversion Apply JavaScript array methods (filter, map, reduce) for data processing Handle multiple output scenarios and data aggregation Perfect For: n8n beginners learning Code node fundamentals Developers transitioning to n8n automation Client demos showing data processing capabilities Team training and onboarding sessions Foundation for building custom business automation workflows Business Use Cases: Transform this template for lead qualification, customer segmentation, report generation, data enrichment, and API integrations. Each Code node pattern can be adapted for different industries and automation needs.
by Jonathan
This workflow will take a timer entry from Clockify and submit it to a matching ticket in Syncro. It saves the time entry ID from Clockify and the time entry ID from Syncro into a Google Sheets. Then, it will check if a match already exists from a previous update and will update the same time entry if the description or time is changed in Clockify. There is a Set node with the name and Syncro IDs of technicians. If you have multiple technicians with the same name, this won't work for you. Likewise, if the name in Clockify doesn't exactly match what you put in the Set, it won't work. You also need to setup a webhook in Clockify set to trigger on "Time entry updated (anyone)" and pointed at your workflow. Configured this way, you can start and stop time entries at will and it won't do anything until you change the description. > This workflow is part of an MSP collection, The original can be found here: https://github.com/bionemesis/n8nsyncro
by Sunny Thaper
Workflow Overview: This n8n workflow template takes a US phone number as input, validates it, and returns it in multiple standard formats, including handling extensions. It's designed to streamline the process of standardizing phone number data within your automations. How it Works: Input: Accepts a phone number string as input. This number can be in various common formats (e.g., (555) 123-4567, 555.123.4567, +15551234567, 5551234567x890). Formatting Removal: Strips all non-numeric characters to isolate the core number and any potential extension. Validation: Country Code Check:** Verifies if the number starts with the US country code (+1 or 1) or assumes US if no country code is present and the length is correct. Length Check:** Ensures the main number component consists of exactly 10 digits after stripping formatting and the country code. Output Generation (if valid): If the number passes validation, the workflow outputs the phone number in several standardized formats: Number Only:** 5551234567 E.164 Standard:** +15551234567 National Standard:** (555) 123-4567 Full National Standard:** 1 (555) 123-4567 International Standard:** 00-1-555-123-4567 Extension Handling: If an extension is detected in the input, it is separated and provided as: Extension (Number):** 890 Extension (String):** "890" Use Cases: Cleaning and standardizing phone number data in CRM systems. Formatting numbers before sending SMS messages via APIs. Validating user input from forms. Ensuring consistent phone number representation across different applications.
by n8n Team
Who this template is for This template is for everyone who needs to work with XML data a lot and wants to convert it to JSON instead. Use case Many products still work with XML files as their main language. Unfortunately, not every software still supports XML, as many switched to more modern storing languages such as JSON. This workflow is designed to handle the conversion of XML data to JSON format via a webhook call, with error handling and Slack notifications integrated into the process. How this workflow works Triggering the workflow: This workflow initiates upon receiving an HTTP POST request at the webhook endpoint specified in the "POST" node. The endpoint, designated as , can be accessed externally by sending a POST request to that URL. Data routing and processing: Upon receiving the POST request, the Switch node routes the workflow's path based on conditions determined by the content type of the incoming data or any encountered errors. The Extract From File and Edit Fields (Set) nodes manage XML input processing, adapting their actions according to the data's content type. XML to JSON conversion: The XML data extracted from the input is passed through the "XML" node, which performs the conversion process, transforming it into JSON format. Response handling: If the XML-to-JSON conversion is successful, a success response is sent back with a status of "OK" and the converted JSON data. If there are any errors during the XML-to-JSON conversion process, an error response is sent back with a status of "error" and an error message. Error handling: in case of an error during processing, the workflow sends a notification to a Slack channel designated for error reporting. Set up steps Set up your own in the Webhook node. While building or testing a workflow, use a test webhook URL. When your workflow is ready, switch to using the production webhook URL. Set credentials for Slack.
by Tom
This is the workflow powering the n8n demo shown at StrapiConf 2022. The workflow searches matching Tweets every 30 minutes using the Interval node and listens to Form submissions using the Webhook node. Sentiment analysis is handled by Google using the Google Cloud Natural Language node before the result is stored in Strapi using the Strapi node. (These were originally two separate workflows that have been combined into one to simplify sharing.)
by Evoort Solutions
🧲 AI-Powered Lead Magnet Idea Generation from Topic List This n8n workflow automatically generates lead magnet ideas based on topics and website URLs stored in a Google Sheet. It uses the Lead Magnet Idea Generator AI API to produce relevant, value-driven ideas that marketers can turn into checklists, guides, templates, and more. 🔧 What This Workflow Does Monitors a Google Sheet for new or updated rows using a Drive trigger. Reads all rows and identifies entries where: The Topic column is not empty The Content (idea) column is empty Sends a request to the Lead Magnet Idea Generator AI API: Input: Topic + Website URL Output: AI-generated lead magnet idea Writes the idea back to the same Google Sheet with a timestamp. Repeats the process automatically every minute. 🌐 API Used Name:** Lead Magnet Idea Generator AI API Endpoint:** https://lead-magnet-idea-generator-ai.p.rapidapi.com/index.php Method:** POST Headers:** x-rapidapi-host: lead-magnet-idea-generator-ai.p.rapidapi.com x-rapidapi-key: YOUR_RAPIDAPI_KEY Body Params:** topic website ✅ Benefits | Feature | Value | |----------------------------------|------------------------------------------------------------------| | 🔄 Automated Flow | No manual entry needed — runs every minute | | 🧠 AI-Based Content Ideation | Smart suggestions tailored to your topic and brand | | 📝 Google Sheets Integration | Easy to manage, edit, and view input/output in one place | | 🕒 Timestamp Tracking | Know exactly when each idea was generated | | 🚫 No Duplicate Processing | Only rows missing ideas are sent to the API | | 💼 Scalable for Teams | Plug-and-play for any team managing multiple content ideas | ❌ Challenges This Solves | Old Challenge | New Workflow Solution | |--------------------------------------------|------------------------------------------------------------------| | Manual brainstorming of lead magnet ideas | Fully automated idea generation via API | | Missing or inconsistent content in sheets | Only incomplete rows are updated with valid ideas | | Lack of traceability | Timestamp logs show when each idea was generated | | Wasting time on repetitive tasks | Workflow handles idea generation while you focus on execution | 📌 Requirements ✅ A valid RapidAPI key ✅ Google Sheets & Google Drive credentials set up in n8n ✅ Google Sheet structured with the following columns: | Column Name | Purpose | Required | |------------------|----------------------------------------------------------|----------| | Topic | Main subject for which the idea is generated | ✅ Yes | | Website Url | Optional URL to provide brand context for the API | ❌ No | | Content | Will be filled with the AI-generated lead magnet idea | ✅ Yes | | Generated Date | Timestamp when the idea was created | ✅ Yes | 🧩 Technologies Used n8n** – Automation platform Google Sheets** – For storing topics and generated ideas Google Drive Trigger** – To initiate the workflow Lead Magnet Idea Generator AI API** – For content generation HTTP Request node** – To communicate with the API If / Wait / Split In Batches nodes** – For conditional logic and throttling 🧠 Example Use Cases Content marketing teams planning lead magnets for blog posts Agencies creating assets for multiple clients Email list-building strategists generating downloadable content ideas Business owners who want quick suggestions without manual brainstorming Create your free n8n account and set up the workflow in just a few minutes using the link below: 👉 Start Automating with n8n Save time, stay consistent, and grow your LinkedIn presence effortlessly!
by Jonathan | NEX
Drowning in security alerts? Spending hours translating technical logs from Wazuh, your SIEM, or other tools into business-friendly reports for leadership? This n8n workflow is your automated Security Analyst, designed to save you time and bridge the communication gap between technical teams and non-technical executives. Using a powerful two-stage AI process via the NixGuard Security RAG connector, this workflow transforms raw security event data into a concise, actionable daily briefing. How It Works: Stage 1: Intelligent Filtering & Data Structuring: On a daily schedule, the workflow first calls the AI to sift through all recent security events. It intelligently identifies significant alerts and structures them into a clean, machine-readable JSON array, cutting through the noise. Stage 2: Executive Summarization: If critical alerts are found, the workflow feeds this structured JSON into a second AI prompt. It tasks the AI to act as a Senior Security Analyst, generating a high-level summary that focuses on business impact, key threat patterns, and a clear, single recommendation—all in plain English. Automated Delivery: The final Markdown report is automatically converted to HTML and emailed as a professional daily security briefing to your stakeholders. Key Features & Benefits: Slash Reporting Time:** Automate the manual, time-consuming process of daily security analysis and reporting. Bridge the Technical Gap:** Deliver clear, non-technical summaries that executives can understand and act upon instantly. Reduce Alert Fatigue:** Let AI filter out the low-level noise and only escalate what truly matters. Two-Stage AI Processing:** Leverage a sophisticated AI chain for more accurate and relevant results than a single prompt. Highly Customizable:** Easily adapt the prompts, schedule, and data sources (any system compatible with the NixGuard RAG connector) to fit your exact needs. Who is this for? Security Analysts, Engineers, and Managers** who need to automate daily reporting. SecOps and DevOps Teams** looking to integrate security intelligence into their automated workflows. IT Directors and VPs** who need to provide consistent security posture updates to leadership. Anyone responsible for communicating cybersecurity risk to non-technical stakeholders. Stop copying and pasting logs. Download this workflow to automate your security reporting and deliver real business value today! Don't have the main workflow yet? Get it HERE! 🔗 Learn more about NixGuard: thenex.world 🔗 Get started with a free security subscription: thenex.world/security/subscribe Tags / Keywords: AI, Security, Automation, Cybersecurity, Wazuh, SIEM, Reporting, Executive Summary, Daily Briefing, Alert Fatigue, SecOps, Generative AI, LLM, NixGuard, Email, JSON