by Yulia
This n8n workflow is designed for working with the WhatsApp Business platform. It allows to send custom replies via WhatsApp in response to incoming user messages. 💡 Take a look at the step-by-step tutorial on how to create a WhatsApp bot. The workflow consists of two parts: The first Verify webhook sends back verification challenge string. You will need this part during the setup process on the Meta for Developers portal: Select your App Go to WhatsApp Configuration Click on the Edit button in the Webhook session Enter your production webhook URL, provide Verify token (can be any text string) Remember to activate the n8n workflow! Finally press "Verify and save" Once the webhook is verified, the Respond webhook receives various POST requests from Meta regarding WhatsApp messages (user messages and status notifications). The workflow checks whether the incoming JSON contains a user message. If this is the case, it sends the text message back to the user. This is a custom message, not a WhatsApp Business template.
by Akhil Varma Gadiraju
Bulk Contact Deletion from HubSpot via Uploaded Excel / CSV File This workflow allows you to automate the deletion of HubSpot contacts based on email addresses provided in an uploaded Excel (.xlsx) file. It's ideal for bulk-cleaning outdated or invalid contact data. ✅ Prerequisites Before using this workflow, ensure you have the following: A valid HubSpot App Token with permissions to search and delete contacts. An Excel (.xlsx) file with a column labeled emails containing the contact emails to be deleted. n8n self-hosted or cloud environment with: Webhook node enabled and accessible. HubSpot node credentials configured. Basic familiarity with n8n node configuration for custom adjustments (optional). 📃Sample Document Download 🧠 n8n Workflow: Delete HubSpot Contacts from an Uploaded Excel File This n8n workflow allows you to upload an Excel file containing contact email addresses. It will check each one in HubSpot and delete the contact if it exists. 🔗 Workflow Overview 📥 1. Trigger via Webhook (POST) The workflow starts when a .xlsx file is uploaded via an HTTP POST request to the webhook. This Excel file should contain a column with contact email addresses. 📄 2. Extract Data from Excel The uploaded file is parsed, and its rows are converted into structured JSON items, making each email address available for further processing. 🧹 3. Normalize Data The data is cleaned and normalized — for example, mapping column headers (e.g., emails) into a standard email field, ensuring consistent downstream logic. 🔁 4. Loop Through Contacts Each row (contact) is processed individually using batch looping. This allows for fine-grained error handling and sequential processing. 🔎 5. Search for Contact in HubSpot For each contact, a search query is made in HubSpot based on the email address. The workflow only fetches the first result (if any). 🧪 6. Check if Contact Exists An IF condition checks whether the contact was found (i.e., if a HubSpot contact ID exists): ✅ Yes → proceed to delete the contact. ❌ No → skip deletion and continue to the next. 🗑️ 7. Delete Contact If a contact exists, it is deleted from HubSpot using its internal contact ID. 🛠️ 8. Optional Placeholder for Post-Processing A placeholder node named “Replace Me” is included for any custom logic you may want to add after the deletion step, such as: Logging Notifications Writing to external storage ✅ Use Cases Bulk delete old or bounced email addresses from HubSpot. Clean up contacts based on external suppression lists. Automate regular CRM hygiene processes. 💡 Suggested Enhancements ✍️ Log results to Google Sheets or a database 📬 Send completion report via email or Slack 🔁 Add retry logic for temporary API failures 🔍 Validate email format before making requests 📎 Requirements n8n (self-hosted or cloud) HubSpot App Token (set up in n8n credentials) Excel file (.xlsx) with a column for email 📦 Files No external files are required. All logic is contained within the n8n workflow. 🚀 Getting Started Deploy the workflow in n8n. Copy the webhook URL and use it in your app or API client (like Postman). Upload an Excel file containing contact emails via POST request. Watch as it searches and deletes matches in HubSpot.
by Oneclick AI Squad
Description Automates error detection and notification to prevent production downtime. Monitors incoming webhooks, filters critical errors, and triggers alerts or bug reports. Ensures rapid response to critical issues in real-time. Essential Information Processes webhook triggers to detect errors instantly. Filters and categorizes errors as critical or non-critical. Sends Slack alerts for critical errors and creates Jira bugs as needed. System Architecture Error Detection Pipeline**: Webhook Trigger: Captures incoming error data via POST requests. Filter Critical Errors: Identifies and separates critical errors. Alert Generation Flow**: Send Slack Alert: Notifies the team via Slack for critical errors. Create Jira Bug: Logs critical errors as Jira issues. Non-Critical Handling**: No Action for Non-Critical: Skips non-critical errors with no further action. Implementation Guide Import the workflow JSON into n8n. Configure webhook URL and test with sample error data. Set up Slack and Jira credentials for alerts and bug creation. Test error filtering and notification flows. Monitor alert accuracy and adjust filter rules as needed. Technical Dependencies Webhook service for error data ingestion. Slack API for real-time notifications. Jira API for bug tracking and issue creation. n8n for workflow automation. Customization Possibilities Adjust Filter Critical Errors node to refine error severity rules. Customize Slack alert messages in Send Slack Alert node. Modify Jira issue templates in Create Jira Bug node. Add logging node to track all errors for analysis. Integrate with additional notification tools (e.g., email).
by Dataki
This workflow demonstrates how to enrich data from a list of companies in a spreadsheet. While this workflow is production-ready if all steps are followed, adding error handling would enhance its robustness. Important notes Check legal regulations**: This workflow involves scraping, so make sure to check the legal regulations around scraping in your country before getting started. Better safe than sorry! Mind those tokens**: OpenAI tokens can add up fast, so keep an eye on usage unless you want a surprising bill that could knock your socks off! 💸 Main Workflow Node 1 - Webhook This node triggers the workflow via a webhook call. You can replace it with any other trigger of your choice, such as form submission, a new row added in Google Sheets, or a manual trigger. Node 2 - Get Rows from Google Sheet This node retrieves the list of companies from your spreadsheet. here is the Google Sheet Template you can use. The columns in this Google Sheet are: Company**: The name of the company Website**: The website URL of the company These two fields are required at this step. Business Area**: The business area deduced by OpenAI from the scraped data Offer**: The offer deduced by OpenAI from the scraped data Value Proposition**: The value proposition deduced by OpenAI from the scraped data Business Model**: The business model deduced by OpenAI from the scraped data ICP**: The Ideal Customer Profile deduced by OpenAI from the scraped data Additional Information**: Information related to the scraped data, including: Information Sufficiency: Description: Indicates if the information was sufficient to provide a full analysis. Options: "Sufficient" or "Insufficient" Insufficient Details: Description: If labeled "Insufficient," specifies what information was missing or needed to complete the analysis. Mismatched Content: Description: Indicates whether the page content aligns with that of a typical company page. Suggested Actions: Description: Provides recommendations if the page content is insufficient or mismatched, such as verifying the URL or searching for alternative sources. Node 3 - Loop Over Items This node ensures that, in subsequent steps, the website in "extra workflow input" corresponds to the row being processed. You can delete this node, but you'll need to ensure that the "query" sent to the scraping workflow corresponds to the website of the specific company being scraped (rather than just the first row). Node 4 - AI Agent This AI agent is configured with a prompt to extract data from the content it receives. The node has three sub-nodes: OpenAI Chat Model: The model used is currently gpt4-o-mini. Call n8n Workflow: This sub-node calls the workflow to use ScrapingBee and retrieves the scraped data. Structured Output Parser: This parser structures the output for clarity and ease of use, and then adds rows to the Google Sheet. Node 5 - Update Company Row in Google Sheet This node updates the specific company's row in Google Sheets with the enriched data. Scraper Agent Workflow Node 1 - Tool Called from Agent This is the trigger for when the AI Agent calls the Scraper. A query is sent with: Company name Website (the URL of the website) Node 2 - Set Company URL This node renames a field, which may seem trivial but is useful for performing transformations on data received from the AI Agent. Node 3 - ScrapingBee: Scrape Company's Website This node scrapes data from the URL provided using ScrapingBee. You can use any scraper of your choice, but ScrapingBee is recommended, as it allows you to configure scraper behavior directly. Once configured, copy the provided "curl" command and import it into n8n. Node 4 - HTML to Markdown This node converts the scraped HTML data to Markdown, which is then sent to OpenAI. The Markdown format generally uses fewer tokens than HTML. Improving the Workflow It's always a pleasure to share workflows, but creators sometimes want to keep some magic to themselves ✨. Here are some ways you can enhance this workflow: Handle potential errors Configure the scraper tool to scrape other pages on the website. Although this will cost more tokens, it can be useful (e.g., scraping "Pricing" or "About Us" pages in addition to the homepage). Instead of Google Sheets, connect directly to your CRM to enrich company data. Trigger the workflow from form submissions on your website and send the scraped data about the lead to a Slack or Teams channel.
by Aitor | 1Node
This n8n workflow template automates the process of managing meeting guests booked through Cal.com. It captures attendee information, logs it in a Google Sheet, and subscribes new guests to your Beehiiv newsletter, while also notifying you in Telegram. How it Works This workflow is designed to streamline your post-booking process. When a new meeting is booked via Cal.com, the workflow automatically triggers. It extracts the attendee details, adds a new row with the guest's information to a designated Google Sheet, and then adds the guest as a subscriber to your Beehiiv newsletter. Finally, it sends a notification to a specified Telegram channel, keeping you informed of new subscribers. Features Automated Data Entry:** Automatically log meeting guest details into Google Sheets. Newsletter Growth:** Effortlessly add new meeting guests to your Beehiiv subscriber list. Real-time Notifications:** Get instant alerts in Telegram for new subscribers. Seamless Integration:** Connects Cal.com, Google Sheets, Beehiiv, and Telegram. Set Up To use this workflow, you will need the following: Cal.com:** Set up a Cal.com account and configure a webhook to trigger the workflow on new bookings. You will need the webhook URL provided by the first node in this workflow. Google Cloud:** A Google Cloud account with access to Google Sheets. You will need to specify the Sheet and the range where data should be added. Beehiiv:** A Beehiiv account. You will need your Beehiiv API key and the publication ID of your newsletter. Telegram Account:** A Telegram account and a channel where you want to receive notifications. You will need your Telegram Bot Token and the chat ID of the channel. Configure each node** in the workflow with your respective API keys, IDs, and sheet details as required. The "Define your parameters" box in the workflow provides guidance on finding your Telegram chat ID and Beehiiv API key/publication ID. Additional Enhancements This workflow can be extended and customized further: Conditional Logic:** Add filters to only subscribe guests based on certain criteria (e.g., specific meeting types). Data Enrichment:** Integrate with other services to enrich guest data before adding to Google Sheets or Beehiiv. CRM Integration:** Connect to a CRM to create or update contact records for new guests. Custom Notifications:** Customize the content and format of the Telegram notification. Need Help? If you need assistance setting up this workflow, encounter any issues, or would like to explore setting up similar automation workflows tailored to your company's specific needs, please contact us at 1 Node.
by Davide
The Agent Decisioner is a dynamic, AI-powered routing system that automatically selects the most appropriate large language model (LLM) to respond to a user's query based on the query’s content and purpose. This workflow ensures dynamic, optimized AI responses by intelligently routing queries to the best-suited model. Advantages 🔁 Automatic Model Routing:** Automatically selects the best model for the job, improving efficiency and relevance of responses. 🎯 Optimized Use of Resources:** Avoids overuse of expensive models like GPT-4 by routing simpler queries to lightweight models. 📚 Model-Aware Reasoning:** Uses detailed metadata about model capabilities (e.g., reasoning, coding, web search) for intelligent selection. 📥 Modular and Extendable:** Easy to integrate with other tools or expand by adding more models or custom decision logic. 👨💻 Ideal for RAG and Multi-Agent Systems:** Can serve as the brain behind more complex agent frameworks or Retrieval-Augmented Generation pipelines. How It Works Chat Trigger: The workflow starts when a user sends a message, triggering the Routing Agent. Model Selection: The AI Agent analyzes the query and selects the best-suited model from the available options (e.g., Claude 3.7 Sonnet for coding, Perplexity/Sonar for web searches, GPT-4o Mini for reasoning). Structured Output: The agent returns a JSON response with the user’s prompt and the chosen model. Execution: The selected model processes the query and generates a response, ensuring optimal performance for the task. Set Up Steps Configure Nodes: Chat Trigger: Set up the webhook to receive user messages. Routing Agent (AI Agent): Define the system message with model strengths and JSON output rules. OpenRouter Chat Model: Connect to OpenRouter for model access. Structured Output Parser: Ensure it validates the JSON response format (prompt + model). Execution Agent (AI Agent1): Configure it to forward the prompt to the selected model. Connect Nodes: Link the Chat Trigger to the Routing Agent. Connect the OpenRouter Chat Model and Output Parser to the Routing Agent. Route the parsed JSON to the Execution Agent, which uses the chosen model via OpenRouter Chat Model1. Credentials: Ensure OpenRouter API credentials are correctly set for both chat model nodes. Test & Deploy: Activate the workflow and test with sample queries to verify model selection logic. Adjust the routing rules if needed for better accuracy. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by Belmont Digital
Description This n8n workflow verifies the deliverability of mailing addresses stored in Keap/Infusionsoft by integrating with Lob’s address verification service. Who is this for? This template is designed for Keap/Infusionsoft users who need to ensure the accuracy of mailing addresses stored in their CRM systems. What problem is this workflow solving? / Use Case This workflow addresses the challenge of maintaining accurate mailing addresses in CRM databases by verifying the deliverability of addresses. What this workflow does A new contact is created in Keap/Infusionsoft Webhook sent to n8n Verify if the address is deliverable via LOB Report back to Keap/Infusionsoft Set Up Steps Watch this setup video: https://www.youtube.com/watch?v=T7Baopubc-0 Takes 10-30 minutes to set up Accounts Needed: Keap/Infusionsoft LOB Account (https://www.lob.com $0.00/mo 300 US addresses Verifications) n8n Before using this template, ensure you have API keys for your Keap/Infusionsoft app and Lob. Set up authentication for both services within n8n. How to customize this workflow to your needs You can customize this workflow by adjusting the trigger settings to match Keap/Infusionsoft’s workflow configuration. Additionally, you can modify the actions taken based on the deliverability outcome, such as updating custom fields or sending notifications.
by Airtop
About The Product Hunt Automation Staying up-to-date with specific topics and launches on Product Hunt can be time-consuming. Manually checking the site multiple times a day interrupts your workflow and risks missing important launches. What if you could automatically get relevant launches delivered to your Slack workspace? How to Monitor Product Hunt In this guide, you'll learn how to create a Product Hunt monitoring system using Airtop's built-in node in n8n. This automation will scan Product Hunt for your chosen topics and deliver the most relevant launches directly to Slack. What You'll Need A free Airtop API key A Slack workspace with permissions to add incoming webhooks Estimated setup time: 5 minutes Understanding the Process The Monitor Product Hunt automation uses Airtop's cloud browser capabilities to access Product Hunt and extract launch information. Here's what happens: Airtop visits Product Hunt and navigates the page It searches for and extracts up to 5 launches related to your chosen topic The information is formatted and sent to your specified Slack channel This process can run on your preferred schedule, ensuring you never miss relevant launches. Setting Up Your Automation We've created a ready-to-use template that handles all the complex parts. Here's how to get started: Connect your Airtop account by adding the API key you created Connect your Slack account Set your prompt in the Airtop node. For this example, we’ve set it to be “Extract up to 5 launches related to AI products” Choose your preferred monitoring schedule. Customization Options While our template works immediately, you might want to customize it for your specific needs: Adjust the prompt and the maximum number of launches to monitor Customize the Slack message format Change the monitoring frequency Add filters for particular keywords or companies Real-World Applications Here's how teams can use this automation: A startup's engineering team could track trends in other product’s tech stack, helping them stay informed about potential issues and improvements. A product manager can track launches of competitor products, enabling them to gather valuable market insights and user feedback directly from the tech community on that launch. Best Practices To get the most out of this automation: Choose Specific Search Terms**: For more relevant results, instead of broad terms like "AI," use specific phrases like "machine learning for healthcare" Optimize Scheduling**: When setting the monitoring frequency, consider your team's workflow. Running the scenario every 4 hours during working hours often provides a good balance between staying updated and avoiding notification fatigue. Set Up Error Handling**: Enable n8n's error output to alert you if the automation encounters any issues with accessing Product Hunt or sending messages to Slack. Regular Topic Review**: Schedule a monthly review of your monitored topics to ensure they're still relevant to your needs and adjust as necessary. What's Next? Now that you've set up your Product Hunt monitor automation, you might be interested in: Creating a similar monitor for other tech websites Setting up automated content curation for your team's newsletter Building a competitive intelligence dashboard using web monitoring Happy Automating!
by Zacharia Kimotho
How to scrap emails from websites This workflow shows how to quickly build an Email scraping API using n8n. Email marketing is at the core of most marketing strategies, be it content marketing, sales, etc. As such, being able to find contacts in bulk for your business on a large scale is key. There are available tools available in the market that can do this, but most are premium; why not build a custom one with n8n? Usage The workflow gets the data from a website and performs an extraction based on the date around on the website Copy the webhook URL to your browser Add a query parameter eg ?Website=https://mailsafi.com . This should give you a URL like this {{$n8nhostingurl/webhook/ea568868-5770-4b2a-8893-700b344c995e?Website=https://mailsafi.com Click on the URL and wait for the extracted email to be displayed. This will return the email address on the website, or if there is no email, the response will be "workflow successfully executed." Make sure to use HTTP:// for your domains Otherwise, you may get an error.
by n8n Team
This workflow demonstrates how to export SQL to XML and present the data nicely formatted using an XSL Template. The upper part of the workflow starts with a webhook. Then it gets several random records from the SQL table and converts them into an XML string. Then a final XML file is created that contains a link to the XML Stylesheet file. The lower part of the workflow contains a helper Webhook that reads an XSL Template from the GitHub gist and serves it back via the Respond to Webhook node. This is required to comply with the CORS rules of modern browsers. These rules dictate that both XML data and a stylesheet file should come from the same domain.
by Samir Saci
Tags: Sustainability, CSRD, Reporting, ESG, Compliance, Automation Context Hey! I'm Samir, a Supply Chain Engineer and Data Scientist from Paris, founder of LogiGreen Consulting We help companies automate sustainability workflows using AI, Data Analytics, and No-Code tools like N8N. > Sustainability Reporting meets Automation with n8n! 📬 For business inquiries, you can add me on Here What is a CSRD XHTML Report? Under the Corporate Sustainability Reporting Directive (CSRD), companies must publish their ESG disclosures in a machine-readable XHTML format, embedding XBRL tags that make the report structured and standardized. These files must follow strict formatting and tagging rules to ensure compliance, traceability, and accessibility for both regulators and analysts. Who is this template for? This workflow is designed for sustainability teams, ESG consultants, or developers who want to automatically check the structure and format of CSRD reports submitted in XHTML. How does it work? This N8N workflow automates the audit process: 📤 Input Node → Uploads or fetches the XHTML file via URL or Webhook. 🧪 Validates Structure → Uses a custom code node to parse HTML and identify required tags (e.g., <ix:nonNumeric>, namespaces). 📋 Outputs a Report → Returns a summary report of errors, warnings, and key metadata (like entity name, reporting period). 📤 Export Option → Save the results in Google Sheets or send via email. Prerequisite A sample XHTML file that you can find in my GitHub Repository Google Sheets API* and *OpenAI API** credentials Next Steps Follow the sticky notes inside each node to adjust parsing rules or extend validation to specific XBRL tags relevant to your sector (e.g., GHG emissions, water usage). *📺 Check my complete tutorial to understand how to use it: * 🎥 Check My Tutorial 🚀 Interested in combining CSRD compliance with automation and analytics? Let’s connect on LinkedIn Notes This workflow includes an example XHTML file to test the validator. You can plug this into your internal systems or even extend it with AI to auto-summarize the sustainability report. This workflow has been created with N8N 1.82.1 Submitted: April 3rd, 2025
by OneClick IT Consultancy P Limited
Travel Agent that Auto Response on Mail In this guide, we’ll break down how to set up an AI-powered auto-reply system that works while you sleep. Ready to 10X your efficiency? Let’s dive in! What’s the Goal? AI-driven auto-responses for Email. Instant replies to FAQs, order confirmations, and support queries. 24/7 availability - no more “We’ll get back to you soon” delays. Seamless integration with existing business tools. By the end, you’ll have a self-running communication assistant that never takes a coffee break. Why Does It Matter? Why automate replies? Because time = money and manual typing is so 2010. Here’s why this workflow is a game changer: Zero Human Error: AI doesn’t get tired or make typos. Lightning-Fast Replies: Customers get instant answers, improving satisfaction. 24/7 Availability: No more “Out of Office” replies. Focus on High-Value Work: Free your team from mundane tasks. Think of it as hiring a super efficient virtual assistant - minus the salary. How It Works Here’s the step by step magic behind the automation Step 1: Trigger the Workflow Detect new messages from WhatsApp, Email, or Slack. Use n8n’s webhook or API integration to capture incoming queries. Step 2: Process the Message with AI Send the message to an AI model (like OpenAI GPT-4 or Gemini). Generate a context-aware, human-like response. Step 3: Send the Automated Reply Route the AI-generated response back to the original platform. Ensure personalization (e.g., “Hi [Name], thanks for reaching out!”). Step 4: Log & Optimize Store interactions in a database (Airtable, Google Sheets). Continuously improve AI responses based on past data. How to use the workflow? Importing a workflow in n8n is a straightforward process that allows you to use pre-built or shared workflows to save time. Below is a step-by-step guide to importing a workflow in n8n, based on the official documentation and community resources. Steps to Import a Workflow in n8n 1. Obtain the Workflow JSON Source the Workflow:** Workflows are typically shared as JSON files or code snippets. You might receive them from: The n8n community (e.g., n8n.io workflows page). A colleague or tutorial (e.g., a .json file or copied JSON code). Exported from another n8n instance (see export instructions below if needed). Format:** Ensure you have the workflow in JSON format, either as a file (e.g., workflow.json) or as text copied to your clipboard. 2. Access the n8n Workflow Editor Log in to n8n:** Open your n8n instance (via n8n Cloud or your self-hosted instance). Navigate to the Workflows tab in the n8n dashboard. Open a New Workflow:** Click Add Workflow to create a blank workflow, or open an existing workflow if you want to merge the imported workflow. 3. Import the Workflow Option 1: Import via JSON Code (Clipboard): In the n8n editor, click the three dots (⋯) in the top-right corner to open the menu. Select Import from Clipboard. Paste the JSON code of the workflow into the provided text box. Click Import to load the workflow into the editor. Option 2: Import via JSON File: In the n8n editor, click the three dots (⋯) in the top-right corner. Select Import from File. Choose the .json file from your computer. Click Open to import the workflow.