by Eduard
β‘ UPDATE on May 2025 β added section with all n8n instance webhooks Using n8n a lot? Soar above the limitations of the default n8n dashboard! This template gives you an overview of your workflows, nodes, and tags β all in one place. πͺ Built using XML stylesheets and the Bootstrap 5 library, this workflow is self-contained and does not depend on any third-party software. π It generates a comprehensive overview JSON that can be easily integrated with other BI tools for further analysis and visualization. π Reach out to Eduard if you need help adapting this workflow to your specific use-case! π Benefits: Workflow Summary** π: Instant overview of your workflows, active counts, and triggers. Left-Side Panel** π: Quick access to all your workflows, nodes, and tags for seamless navigation. Workflow Details** π¬: Deep dive into each workflow's nodes, timestamps, and tags. Node Analysis** π§©: Identify the most frequently used nodes across your workflows. Tag Organization** ποΈ: Workflows are grouped according to their tags. Webhooks** β‘: List of all webhook endpoints with the links to workflows. Visually Stunning** π¨: Clean, intuitive, and easy-to-navigate dashboard design. XML & Bootstrap 5** π οΈ: Built using XML stylesheets and Bootstrap 5, ensuring a self-contained and responsive dashboard. No Dependencies** π: The workflow does not rely on any third-party software. Bootstrap 5 files are loaded via CDN but can be delivered directly from your server. β οΈ Important note for cloud users Since the cloud version doesn't support environmental variables, please make the following changes: get-nodes-via-jmespath node. Update the instance_url variable: enter your n8n URL instead of {{$env["N8N_PROTOCOL"]}}://{{$env["N8N_HOST"]}} Create HTML node. Please provide the n8n instance URL instead of {{ $env.WEBHOOK_URL }} πExample: Follow me on LinkedIn for more tips on AI automation and n8n workflows!
by Aaron Smusz
This workflow automatically manages Acrobat Sign signatures, respond with "intent" to Acrobat-Sign webhooks. Prerequisites Adobe Acrobat Sign and Sign webhook Basic knowledge of JavaScript Nodes Webhook nodes trigger the workflow on new sign intents on a document Respond to Webhook node sets the response headers. Function node processes data returned by the previous node. Set node sets the required values.
by Angel Menendez
CallForge - AI-Powered Sales Call Data Processor Automate sales call analysis and store structured insights in Notion with AI-powered intelligence. Who is This For? This workflow is ideal for: β Sales teams looking to automate call insight processing. β Sales operations managers managing AI-driven call analysis. β Revenue teams using Gong, Fireflies.ai, Otter.ai, or similar transcription tools. It streamlines sales call intelligence, ensuring that insights such as competitor mentions, objections, and customer pain points are efficiently categorized and stored in Notion for easy access. π What Problem Does This Workflow Solve? Manually reviewing and documenting sales call takeaways is time-consuming and error-prone. With CallForge, you can: β Identify competitors mentioned in sales calls. β Capture objections and customer pain points for follow-up. β Track sales call outcomes and categorize insights automatically. β Store structured sales intelligence in Notion for future reference. β Improve sales strategy with AI-driven, automated call analysis. π Key Features & Workflow Steps ποΈ AI-Powered Call Data Processing This workflow processes AI-generated sales call insights and structures them in Notion databases: Triggers automatically when AI call analysis data is received. Extracts competitor mentions from the call transcript and logs them in Notion. Identifies and categorizes sales objections for better follow-ups. Processes integration mentions, capturing tools or platforms referenced in the call. Extracts customer use cases, categorizing pain points and feature requests. Aggregates all extracted insights and updates relevant Notion databases. π Notion Database Integration Competitors β Logs mentioned competitors for sales intelligence. Objections β Tracks and categorizes common objections from prospects. Integrations β Captures third-party tools & platforms discussed in calls. Use Cases β Stores customer challenges & product feature requests. π How to Set Up This Workflow 1. Prepare Your AI Call Analysis Data Ensure AI-generated sales call data is passed into the workflow. Compatible with Gong, Fireflies.ai, Otter.ai, and other AI transcription tools. 2. Connect Your Notion Database Set up Notion databases for: πΉ Competitors (tracks competing products) πΉ Objections (logs customer objections & concerns) πΉ Integrations (captures mentioned platforms & tools) πΉ Use Cases (categorizes customer pain points & feature requests) 3. Configure n8n API Integrations Connect your Notion API key** in n8n under βNotion API Credentials.β Set up webhook triggers** to receive data from your AI transcription tool. Test the workflow** using a sample AI-generated call transcript. CallForge - 01 - Filter Gong Calls Synced to Salesforce by Opportunity Stage CallForge - 02 - Prep Gong Calls with Sheets & Notion for AI Summarization CallForge - 03 - Gong Transcript Processor and Salesforce Enricher CallForge - 04 - AI Workflow for Gong.io Sales Calls CallForge - 05 - Gong.io Call Analysis with Azure AI & CRM Sync CallForge - 06 - Automate Sales Insights with Gong.io, Notion & AI CallForge - 07 - AI Marketing Data Processing with Gong & Notion CallForge - 08 - AI Product Insights from Sales Calls with Notion π§ How to Customize This Workflow π‘ Modify Notion Data Structure β Adjust fields to match your companyβs CRM setup. π‘ Enhance AI Data Processing β Align fields with different AI transcription providers. π‘ Expand with CRM Integration β Sync insights with HubSpot, Salesforce, or Pipedrive. π‘ Add Notifications β Send alerts via Slack, email, or webhook when key competitor mentions or objections are detected. βοΈ Key Nodes Used in This Workflow πΉ If Nodes β Checks if AI-generated data includes competitors, integrations, objections, or use cases. πΉ Notion Nodes β Creates or updates entries in Notion databases. πΉ Split Out & Aggregate Nodes β Processes multiple insights and consolidates AI outputs. πΉ Wait Nodes β Ensures smooth sequencing of API calls and database updates. πΉ HTTP Request Node β Sends AI-extracted insights to Notion for structured storage. π Why Use This Workflow? β Eliminates manual data entry and speeds up sales intelligence processing. β Ensures structured and categorized sales insights for decision-making. β Improves team collaboration with AI-powered competitor tracking & objections logging. β Seamlessly integrates with Notion to centralize and manage sales call insights. β Scalable for teams using n8n Cloud or self-hosted deployments. This workflow empowers sales teams with automated AI insights, streamlining sales strategy and follow-ups with minimal effort. π
by Davide
This workflow automates the process of sending text-to-speech (TTS) voice calls using API. It allows users to submit a form with the message content, recipient's phone number, voice type, and language, and then sends a voice call with the provided text. This workflow is a simple yet powerful way to automate text-to-speech voice calls using API. Itβs ideal for notifications, reminders, or any scenario where voice communication is needed. Below is a breakdown of the workflow: 1. How It Works The workflow is designed to send voice calls with text-to-speech functionality. Here's how it works: Form Submission: The workflow starts with a Form Trigger node, where users submit a form with the following fields: Body: The text message to be converted to speech (max 600 characters). To: The recipient's phone number (including the international prefix, e.g., +39xxxxxxxxxx). Voice: The voice type (male or female). Lang: The language for the voice call (e.g., en-us, it-it, fr-fr, etc.). Once the form is submitted, the workflow is triggered. Send Voice Call: The Send Voice node sends a POST request to the ClickSend API (https://rest.clicksend.com/v3/voice/send). The request includes: The text message (Body) to be converted to speech. The recipient's phone number (To). The voice type (Voice). The language (Lang). Machine detection is enabled to detect if the call is answered by a machine. The API processes the request and initiates a voice call to the specified number, where the text is read aloud by the selected voice. Outcome: The recipient receives a voice call, and the submitted text is read aloud in the chosen voice and language. 2. Set Up Steps To set up and use this workflow in n8n, follow these steps: Register on ClickSend: Go to ClickSend and create an account. Obtain your API Key and take advantage of the 2 β¬ free credits provided. Configure ClickSend API in n8n: In the Send Voice node, set up HTTP Basic Authentication: Username: Use the username you registered with on ClickSend. Password: Use the API Key provided by ClickSend. Set Up the Form Trigger: The Form Trigger node is pre-configured with fields for: Body: The text message to be converted to speech. To: The recipient's phone number. Voice: Choose between male or female voice. Lang: Select the language for the voice call. Customize the form fields if needed (e.g., add more languages or voice options). Test the Workflow: Submit the form with the required details (text, phone number, voice, and language). The workflow will send a voice call to the specified number, and the recipient will hear the text read aloud. Optional Customization: Modify the workflow to include additional features, such as: Adding more languages or voice options. Sending multiple voice calls in bulk. Integrating with other APIs or services for advanced use cases.
by James Li
Summary Onfleet is a last-mile delivery software that provides end-to-end route planning, dispatch, communication, and analytics to handle the heavy lifting while you can focus on your customers. This workflow template loads in a spreadsheet from your local storage and automatically creates Onfleet tasks on a one-time basis upon workflow trigger. You can use this workflow as a task importer. Configurations Update the Read Binary File node with the absolute file path to the local spreadsheet of interest Update the Onfleet node with your own Onfleet credentials, to register for an Onfleet API key, please visit https://onfleet.com/signup to get started You can easily change how the Onfleet task is created by mapping to additional data in the spreadsheet For import templates, visit Onfleet Support to learn more π
by Luciano Gutierrez
Supabase AI Agent with RAG & Multi-Tenant CRUD Version: 1.0.0 n8n Version: 1.88.0+ Author: Koresolucoes License: MIT Description A stateful AI agent workflow powered by Supabase and Retrieval-Augmented Generation (RAG). Enables persistent memory, dynamic CRUD operations, and multi-tenant data isolation for AI-driven applications like customer support, task orchestration, and knowledge management. Key Features: π§ RAG Integration: Leverages OpenAI embeddings and Supabase vector search for context-aware responses. ποΈ Full CRUD: Manage agent_messages, agent_tasks, agent_status, and agent_knowledge in real time. π€ Multi-Tenant Ready: Supports per-user/organization data isolation via dynamic table names and webhooks. π Secure: Role-based access control via Supabase Row Level Security (RLS). Use Cases Customer Support Chatbots: Persist conversation history and resolve queries using institutional knowledge. Automated Task Management: Track and update task statuses dynamically. Knowledge Repositories: Store and retrieve domain-specific information for AI agents. Instructions 1. Import Template Go to n8n > Templates > Import from File and upload this workflow. 2. Configure Credentials Add your Supabase and OpenAI API keys under Settings > Credentials. 3. Set Up Multi-Tenancy (Optional) Dynamic Webhook Path**: Replace the default webhook path with /mcp/tool/supabase/:userId to enable per-user routing. Table Names**: Use a Set Node to dynamically generate table names (e.g., agent_messages_{{userId}}). 4. Activate & Test Enable the workflow and send test requests to the webhook URL. Tags AI Agent RAG Supabase CRUD Multi-Tenant OpenAI Automation Screenshots License This template is licensed under the MIT License.
by Angel Menendez
This workflow is triggered by a parent workflow initiated via a Slack shortcut. Upon activation, it collects input from a modal window in Slack and initiates a vulnerability scan using the Qualys API. Key Features Trigger:** Launched by a parent workflow through a Slack shortcut with modal input. API Integration:** Utilizes the Qualys API for vulnerability scanning. Data Conversion:** Converts XML scan results to JSON for further processing. Loop Mechanism:** Continuously checks the scan status until completion. Slack Notifications:** Posts scan summary and detailed results to a specified Slack channel. Workflow Nodes Start VM Scan in Qualys: Initiates the scan with specified parameters. Convert XML to JSON: Converts the scan results from XML format to JSON. Fetch Scan Results: Retrieves scan results from Qualys. Check if Scan Finished: Verifies whether the scan is complete. Loop Mechanism: Handles the repetitive checking of the scan status. Slack Notifications: Posts updates and results to Slack. Relevant Links Qualys API Documentation Qualys Platform Documentation Parent workflow link Link to Report Generator Subworkflow
by Simon Mayerhofer
This workflow allows you to batch update/insert Airtable rows in groups of 10, significantly reducing the number of API calls and increasing performance. π How It Works Copy the 3 Nodes Copy the three nodes inside the red note box into your workflow. Set Your Fields In the Set Fields node, define the fields you want to update. β€ Only include fields that match column names in your Airtable table. β€ Make sure the field names are spelled exactly as they appear in Airtable. β€ Make sure the field type are correctly set. So numbers columns in Airtable need numbers type set as the field. Configure the Airtable Batch Node Enter your Airtable Base ID The part with app... in the URL: airtable\.com / app8pqOLeka1Cglwg / tblnXZOdy8VtkAAJD/... Enter your Airtable Table ID The part with tbl... in the URL: airtable\.com / app8pqOLeka1Cglwg / tblXXZOdy8VtkAAJD /... Set Matching Fields (fieldsToMergeOn) Provide a string array that tells Airtable how to match existing rows. Examples: Match by one field (e.g. TaskID): {{["TaskID"]}} Match by multiple fields (e.g. firstname and lastname): {{["firstname", "lastname"]}} Choose the Mode (mode field) Available options: upsert: Update if a record exists, otherwise insert a new one insert: Always insert as new records update: Only update existing records (you must provide a field named id)
by Harshil Agrawal
This workflow allows you to receive updates when a customer is subscribed to a list in GetResponse and add them to a base in Airtable. GetResponse Trigger node: This node triggers the workflow when a customer is added to a list. Based on your use-case, you can select a different event. Set node: The Set node is uded here to ensure that only the data that we set in this node gets passed on to the next nodes in the workflow. For this workflow, we set the name and email of the customer. Airtable node: The data from the Set node is added to a table in Airtable. Based on your use-case, you may want to add the infromation about the customer to a CRM instead of a table in Airtable. Replace the Airtable node with the node of the CRM where you want to add the data.
by Ezema Kingsley Chibuzo
π§ What It Does This n8n workflow collects leads from Google Maps, scrapes their websites via direct HTTP requests, and extracts valid email addresses β all while mimicking real user behavior to improve scraping reliability. It rotates User-Agent headers, introduces randomized delays, and refines URLs by removing only query parameters and fragments to preserve valid page paths (like social media links). The workflow blends Apify actors, raw HTTP requests, HTML-to-Markdown conversion, and smart email extraction to deliver clean, actionable lead data β ready to be sent to Airtable, Google Sheets, or any CRM. Perfect for lean, scalable B2B lead generation using n8nβs native logic and no external scrapers. π‘Why this workflow Modest lead scrapers rely on heavy tools or APIs like Firecrawl. This workflow: Uses lightweight HTTP requests (with randomized user-agents) to scrape websites. Adds natural wait times to avoid rate limits and IP bans. Avoid full-page crawlers, yet still pulls emails effectively. Works great for freelancers, marketers, or teams targeting niche B2B leads. Designed for stealth and resilience. π€ Who itβs for Lead generation freelancers or consultants. B2B marketers looking to extract real contact info. Small businesses doing targeted outreach. Developers who want a fast, low-footprint scraper. Anyone who wants email + website leads from Google Maps. βοΈ How It Works 1. π₯ Form Submission (Lead Input) A Form Trigger collects: Keyword Location No. of Leads (defaults to 10) This makes the workflow dynamic and user-friendly β ready for multiple use cases and teams. 2. π Scrape Business Info (via Apify) Apifyβs Google Maps Actor searches for matching businesses. The Dataset Node fetches all relevant business details. A Set Node parses key fields like name, phone, website, and category. A Limit Node ensures the workflow only processes the desired number of leads. 3. π First Loop β Visit & Scrape Website Each business website is processed in a loop. A Code Node cleans the website URL by removing only query parameters/fragments β keeping full paths like /contact. A HTTP Request Node fetches the raw HTML of the site: Uses randomized User-Agent headers (5 variants) to mimic real devices and browsers. This makes requests appear more human and reduces the risk of detection or blocking. HTML is converted to Markdown using the Markdown Node, making it easier to scan for text patterns. A Wait Node introduces a random delay between 2-7 seconds: Helps avoid triggering rate limits, Reduces likelihood of being flagged as a bot. A Merge Node combines scraped markdown + lead info for use in the second loop. 4. π Second Loop β Extract Emails In this second loop, the markdown data is processed. A Code Node applies regex to extract the first valid email address. If no email is found, "N/A" is returned. A brief 1 second Wait Node simulates realistic browsing time. Another Merge Node attaches the email result to the original lead data. 5. β Filter, Clean & Store A Filter Node removes all entries with "N/A" or invalid email results. A Set Node ensures only required fields (like website, email, and company name) are passed forward. The clean leads are saved to Airtable (or optionally, Google Sheets) using an upsert-style insert to avoid duplicates. π‘οΈ Anti-Flagging Design This workflow is optimized for stealth: No scraping tools or headless browsers (like Puppeteer or Firecrawl). Direct HTTP requests with rotating User-Agents. Randomized wait intervals (2-7s). Only non-intrusive parsing β no automation footprints. π How to Set It Up Open n8n (Cloud or Self-Hosted). Install Apify node search Apify and click on Install. Do this before importing your file. Import the provided .json file into your n8n editor. Set up the required credentials: π Apify API Key** (used for Google Maps scraping) π Airtable API Key** (or connect Google Sheets instead) Recommended Prepare your Airtable base or Google Sheet with fields like: Email, Website, Phone, Company Name. Review the Set node if you'd like to collect more fields from Apify (e.g., Ratings, Categories, etc.). π Customization Tips The Apify scraper returns rich business data. By default, this workflow collects name, phone, and website β but you can add more in the "Grab Desired Fields" node. Need safer scraping at scale? Swap the HTTP Request for Firecrawlβs Single URL scraper (or any headless service like Browserless, Oxylabs, Bright Date, or ScrapingBee) β they handle rendering and IP rotation. Want to extract from internal pages (like /contact or /about)? Use Firecrawlβs async crawl mode β just note it takes longer. For speed and efficiency, this built-in HTTP + Markdown setup is usually the fastest way to grab emails.
by Jeyson Orozco
Description This template creates a nightly backup of all n8n workflows and saves them to a Google Drive folder. Each night, the previous night's backups are moved to an βn8n_oldβ folder and renamed with the corresponding date. Backups older than a specified age are automatically deleted (this feature is active for 30 days, you can remove it if you don't want the backups to be deleted). Prerequisites Google Drive account and credentials Get from the following link. Link n8n version from v 1.63.4 to 1.70.1 or higher N8n api key Guide from the following link. Link A destination folder for backups: βn8n_oldβ βn8n_backupsβ (if it doesn't exist, create it) Configuration Update all Google Drive nodes with your credentials. Edit the Schedule Trigger node with the desired time to run the backup. If you want to automatically purge old backups. Edit the βPURGE DAYSβ node to specify the age of the backups you want to delete. Enable the βPURGE DAYSβ node and the 3 subsequent nodes. Enable the workflow to run on the specified schedule. Last updated January 2025
by Tenkay
This workflow performs basic XOR-based encryption and decryption using a custom password. It is intended to be triggered by another workflow and processes structured input in JSON format. Input Structure The workflow expects a single array of objects with the following fields: action-type: either "encrypt" or "decrypt" key: the password used for encryption and decryption data: the content to encrypt or decrypt Example: Encryption Input [ { "action-type": "encrypt", "key": "Password", "data": "Hello, this is a secret message" } ] Example: Decryption Input [ { "action-type": "decrypt", "key": "Password", "data": "ChwGAQceF15eE2QXFRcUagxGVgV8TBoNBA4VQVoQZkwVUhImU1FTEg==" } ] Output The output returns an array of results, each containing either the encrypted string (base64 format) or the decrypted plain text. Use Case This workflow is useful for simple internal message encoding, data obfuscation, or testing purposes. It is not recommended for securing sensitive or personal data, as XOR encryption is not cryptographically secure. The workflow logic is written in JavaScript using n8n Function nodes, without any external dependencies.