by Bao Duy Nguyen
Who is this for? This template is ideal for developers, DevOps engineers, and automation managers who manage their n8n workflows using GitHub. It helps teams streamline their CI/CD automation by syncing changes from GitHub directly into n8n after a pull request (PR) is merged. What problem is this workflow solving? Manually restoring workflows after reviewing and merging code in GitHub can be tedious and error-prone. This workflow solves that by automating the restore process, ensuring that any new or updated workflow committed to your GitHub repo is automatically imported into your n8n environment. What this workflow does Triggers when a GitHub pull request is closed and merged. Fetches the details of the merge commit. Retrieves the list of added and modified workflow files. Downloads and decodes each workflow file. Creates or updates** the corresponding workflow in your n8n instance automatically. Setup Connect GitHub: Use the GitHub Trigger node and configure GitHub API credentials. Note: I'd recommended to use GitHub PAT (Personal Access Token) classic with repo and admin:repo_hook permission scopes enabled. Connect n8n API: Provide your n8n API credentials in the n8n nodes. - Check this doc Set repository variables: Update github_owner and repo_name in the Define Local Variables node. Enable webhook: Make sure your GitHub repository has a webhook for pull_request events pointing to this workflow. How to customize this workflow to your needs Modify filters to handle only certain branches or file paths. Add Slack or email notifications to confirm successful imports. Insert logging or version tagging for better traceability. Extend with conditional logic for workflow testing before applying changes. This automated flow provides a seamless CI/CD loop between GitHub and n8n, empowering teams to manage workflow versioning efficiently and securely.
by Floyd Mahou
How it works • Allows users to manage their Google Calendar via WhatsApp using natural language • Handles event creation, updates, deletions, availability checks, and agenda overviews • AI agent interprets the user’s message and triggers the appropriate calendar action • Responses are sent back to the user via WhatsApp, with confirmation or schedule info Set up steps • Set up a WhatsApp Business Cloud account and configure your webhook • Connect your Google Calendar using n8n credentials • Deploy OpenAI API key for natural language understanding • Link each calendar action (create, update, delete, search) to the TimePilot agent • Customize confirmation messages and automate reply formatting Note: More detailed configuration and custom logic are described inside sticky notes within the workflow.
by Aadarsh Jain
Who is this for? This workflow is designed for DevOps engineers, platform engineers, and Kubernetes administrators who want to interact with their Kubernetes clusters through natural language queries in n8n. It's perfect for teams who need quick cluster insights without memorizing complex kubectl commands or switching between multiple cluster contexts manually. How it works? The workflow operates in three intelligent stages: Cluster Discovery & Context Switching - Automatically lists available clusters from your kubeconfig and switches to the appropriate cluster based on your natural language query Command Generation - Uses GPT-4o to analyze your request and generate the correct kubectl command with proper flags, selectors, and output formatting Command Execution - Executes the generated kubectl command against your selected cluster and returns the results The workflow supports multi-cluster environments and can handle queries like: "Show me all pods in production cluster" "List failing deployments in production" "Get pod details in kube-system namespace" Setup Clone the MCP Server git clone https://github.com/aadarshjain/kubectl-mcp-server cd kubectl-mcp-server Configure your kubeconfig - Ensure your ~/.kube/config contains all the clusters you want to access Set up MCP STDIO credentials in n8n Command: /full/path/to/python-package Arguments: /full/path/to/kubectl-mcp-server/server.py Import the workflow into your n8n instance Configure OpenAI credentials for the GPT-4o models Test the workflow using the chat interface with queries like "show pods in [cluster-name]"
by Oneclick AI Squad
Description AI-Powered Multi-language Customer Support In this guide, we'll walk you through setting up a comprehensive AI-driven workflow that handles customer messages in any language through WhatsApp and email channels, providing intelligent translation, summarization, and automated responses. Ready to revolutionize your customer support? Let's get started! What's the Goal? Automatically handle customer messages** from WhatsApp and email in any language Translate and validate** incoming messages with smart language detection Generate intelligent summaries** with priority classification for support teams Provide automated responses** back to customers via their preferred channel Log all interactions** to database for tracking and analytics Send notifications** to admin team for high-priority cases Deliver 24/7 multilingual customer support** without manual effort Integrate seamlessly** with WhatsApp Business API and email systems By the end, you'll have a fully automated customer support system that handles multilingual communications, prioritizes urgent cases, and maintains comprehensive interaction logs. Why Does It Matter? Manual handling of multilingual customer support can be overwhelming and inefficient. Here's why this workflow is a game-changer: Break Global Language Barriers**: Handle customer inquiries in any language effortlessly Never Miss Important Messages**: Priority detection ensures urgent cases get immediate attention Save 80% of Manual Work**: Automation handles routine inquiries and escalates complex ones 24/7 Availability**: Respond to customers anytime, enhancing satisfaction and retention Professional Customer Experience**: Consistent, well-formatted responses in the customer's language Complete Audit Trail**: Database logging provides insights and accountability Scalable Solution**: Handle growing customer base without proportional staff increase Think of it as your always-on, multilingual customer support team that never sleeps and never misses a beat. How It Works Here's the step-by-step magic behind the automation: Step 1: Multi-Channel Message Capture WhatsApp Trigger**: Captures incoming WhatsApp messages via Business API webhook Email Trigger (IMAP)**: Monitors designated customer support email for new messages Both channels feed into the same processing pipeline for consistent handling Step 2: Data Normalization & Validation Data Normalizer & Validator**: Standardizes message format regardless of source channel Extracts key information: sender details, message content, timestamp, channel source Validates data integrity and handles malformed inputs gracefully Step 3: Smart Language Translation Smart Language Translator**: Automatically detects source language and translates to English Preserves original message context and cultural nuances Stores both original and translated versions for reference Step 4: Enhanced Summary & Priority Processing Enhanced Summary & Priority Processor**: Uses AI to analyze translated content Generates concise summaries highlighting key customer concerns Priority Classification**: Automatically tags messages as: 🔴 High Priority: Urgent issues, complaints, billing problems 🟡 Medium Priority: Product inquiries, general support 🟢 Low Priority: Thank you messages, general feedback Creates structured output with priority flags for support team triage Step 5: Message Source Intelligence Check Message Source**: Determines optimal response channel and method Routes WhatsApp messages back to WhatsApp, emails back to email Maintains conversation context and threading Step 6: Automated Customer Response Customer WhatsApp Auto-Response**: Sends acknowledgment via WhatsApp Customer Email Auto-Response**: Sends professional email replies Responses include: Confirmation of message receipt Estimated response time based on priority Reference number for tracking Next steps or immediate solutions for common issues Step 7: Database Logging & Analytics Log to Database**: Stores complete interaction history including: Original message and translation Priority classification and reasoning Response sent and timestamp Customer contact information Channel and source metadata Enables analytics, reporting, and quality assurance Step 8: Admin Notifications & Alerts Admin Email Notification**: Immediate email alerts for high-priority cases Admin WhatsApp Alert**: SMS/WhatsApp notifications for urgent escalations Workflow Completion & Metrics**: Performance tracking and completion confirmations Workflow Architecture ┌─────────────────┐ ┌──────────────────┐ │ WhatsApp │ │ Email Trigger │ │ Trigger │ │ (IMAP) │ └─────────┬───────┘ └─────────┬────────┘ │ │ └──────────┬───────────┘ │ ┌──────────▼──────────┐ │ Data Normalizer & │ │ Validator │ └──────────┬──────────┘ │ ┌──────────▼──────────┐ │ Smart Language │ │ Translator │ └──────────┬──────────┘ │ ┌──────────▼──────────┐ │ Enhanced Summary & │ │ Priority Processor │ └──────────┬──────────┘ │ ┌──────────▼──────────┐ │ Check Message │ │ Source │ └─────────┬┬──────────┘ ┌┘└┐ ┌──────────▼┐ ┌▼──────────┐ │ Customer │ │ Customer │ │ WhatsApp │ │ Email │ │ Response │ │ Response │ └──────────┬┘ └┬──────────┘ └┬─┬┘ ┌─────────▼─▼─────────┐ │ Log to Database │ └─────────┬───────────┘ │ ┌─────────▼───────────┐ │ Admin Email │ │ Notification │ └─────────┬───────────┘ │ ┌─────────▼───────────┐ │ Admin WhatsApp │ │ Alert │ └─────────┬───────────┘ │ ┌─────────▼───────────┐ │ Workflow Completion │ │ & Metrics │ └─────────────────────┘ How to Use the Workflow? Importing a workflow in n8n is straightforward and allows you to use pre-built or shared workflows to save time. Below is a step-by-step guide to importing the Multi-language Customer Support workflow in n8n. 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 Format**: Ensure you have the workflow in JSON format, either as a file (e.g., customer-support-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 Configuration Requirements Essential Setup Notes: WhatsApp Integration: Configure WhatsApp Business API credentials in the WhatsApp Trigger node Set up webhook URL in your WhatsApp Business account Test connection with a sample message Email Configuration: Set up IMAP credentials for your customer support email in the Email Trigger node Configure SMTP settings for outbound email responses Ensure proper email authentication (SPF, DKIM records) Translation Services: Add Google Translate API credentials in the Smart Language Translator node Alternative: Configure Azure Translator or AWS Translate based on preference Set up language detection and translation parameters Database Connection: Configure database credentials in the "Log to Database" node Create required tables for storing customer interactions: CREATE TABLE customer_interactions ( id SERIAL PRIMARY KEY, customer_contact VARCHAR(255), channel VARCHAR(50), original_message TEXT, translated_message TEXT, summary TEXT, priority VARCHAR(20), response_sent TEXT, timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); Admin Notifications: Set up admin email addresses in notification nodes Configure WhatsApp/SMS credentials for urgent alerts Customize notification templates and thresholds Priority Classification Rules: Customize JavaScript code in "Enhanced Summary & Priority Processor" node Define keywords and patterns for priority detection: // High Priority Keywords const urgentKeywords = ['urgent', 'emergency', 'billing issue', 'not working', 'broken', 'refund', 'complaint']; // Medium Priority Keywords const mediumKeywords = ['question', 'how to', 'support', 'help', 'information']; // Classification logic if (urgentKeywords.some(keyword => message.toLowerCase().includes(keyword))) { priority = 'HIGH'; } else if (mediumKeywords.some(keyword => message.toLowerCase().includes(keyword))) { priority = 'MEDIUM'; } else { priority = 'LOW'; } Response Templates: Customize auto-response templates in both WhatsApp and Email response nodes Include your company branding and contact information Set up response templates for different priority levels and common scenarios Testing and Deployment: Test Each Channel: Send test messages via WhatsApp and email to verify end-to-end flow Verify Translations: Test with messages in different languages Check Database Logging: Confirm all interactions are properly stored Test Admin Notifications: Verify alerts are sent for high-priority cases Monitor Performance: Set up workflow execution monitoring and error handling Your Multi-language Customer Support workflow is now ready to handle customer communications 24/7 across multiple channels with intelligent automation and human oversight where needed!
by Allan Daemon
This creates a git backup of the workflows and credentials. It uses the n8n export command with git diff, so you can run as many times as you want, but only when there are changes they will create a commit. Setup You need some access to the server. Create a repository in some remote place to host your project, like Github, Gitlab, or your favorite private repo. Clone the repository in the server in a place that the n8n has access. In the example, it's the ., and the repository name is repo. Change it in the commands and in the workflow commands (you can set it as a variable in the wokflow). Checkout to another branch if you won't use the master one. cd . git clone repository Or you could git init and then add the remote (git remote add origin YOUR_REPO_URL), whatever pleases you more. As the server, check if everything is ok for beeing able to commit. Very likely you'll need to setup the user email and name. Try to create a commit, and push it to upstream, and everything you need (like config a user to comit) will appear in way. I strong suggest testing with exporting the commands to garantee it will work too. cd ./repo git commit -c "Initial commmit" --allow-empty -u is the same as --set-upstream git push -u origin master Testing to push to upstream with the first exported data npx n8n export:workflow --backup --output ./repo/workflows/ npx n8n export:credentials --backup --output repo/credentials/ cd ./repo git add . git commit -c "manual backup: first export" git push After that, if everything is ok, the workflow should work just fine. Adjustments Adjust the path in used in the workflow. See the the git -C PATH command is the same as cd PATH; git .... Also, adjust the cron to run as you need. As I said in the beginning, you can run it even for every minute, but it will create commits only when there are changes. Credentials encryption The default for exporting the credentials is to do them encrypted. You can add the flag --decrypted to the n8n export:credentials command if you need to save them in plain. But as general rule, it's better to save the encryption key, that you only need to do that once, and them export it safely encrypted.
by Marcelo Abreu
What this workflow does Runs automatically every Monday morning at 8 AM Collects your Meta Ads data from the last 7 days for a given account (date range is configurable) Formats the data, aggregating it at the campaign, ad set, and ad levels Generates AI-driven analysis and insights on your results, providing actionable recommendations Renders the report as a visually appealing PDF with charts and tables Sends the report via Slack (you can also add email or WhatsApp) A sample for the first page of the report: Setup Guide Create an account of pdforge and use the pre-made Meta Ads template. Connect Meta Ads, OpenAI and Slack to n8n Set your Ad Account Id and date range (choose from 'last_7d', 'last_14d', 'last30d') (opcional) Customize the scheduling date and time Requirements Meta Ads (via Facebook Graph API): Documentation pdforge access: Integration guide AI API access (e.g. via OpenAI, Anthropic, Google or Ollama) Slack acces (via OAuth2): Documentation Feel free to contact me via Linkedin, if you have any questions! 👋🏻
by Mykolas Bartkus
What This Workflow Does This n8n workflow reads backlinks from a Google Sheet, sends each one to the DataForSEO On-Page API, and checks: Whether the backlink is still live on the target page Whether it's dofollow or nofollow Whether it's missing (i.e., lost) The result is then written back to the same Google Sheet under a Status column. Your result will look like this: Step-by-Step Setup Instructions Add your DataForSEO and Google Sheets credentials in n8n Make sure your Google Sheet has these columns: Backlink URL, Landing page, and Status Click the Test Workflow button to check a batch of backlinks Workflow Breakdown Trigger: Manual test start Read Data: Pulls backlink URLs and target pages from Google Sheets Format URLs: Extracts domain from URL Send POST Request to DataForSEO: Triggers a crawl on the backlink URL Wait 20 seconds: Allows crawl to finish Fetch Link Results: Retrieves backlink data from DataForSEO Validate Backlink: Checks if the backlink is live, and whether it’s dofollow Update Google Sheets: Logs the status as Live, Lost, or Lost (Nofollow)
by Jimleuk
This n8n workflow is a fun way to query and search over your credentials on your n8n instance. Good to know Your credentials should remain safe as this workflow does not decrypt or use any decrypted data. Example Usage "Which workflows are using Slack and Google Calendar?" "Which workflows have AI in their name but are not using openAI?" How it works Using the n8n API, it fetches all workflow data on the instance. Workflow data contains references to credentials used so this will be extracted. With some necessary reformatting, the workflows and their credentials metadata are stored to a SQLite database. Next, an AI agent is used with a custom SQL tool that reads the SQLite database created in the previous step. The AI agent is instructed to perform SQL queries against our workflow credential table when asked about credentials by the user. Requirements You'll need an n8n API key. Please note that only workflows will be scoped to your API key. Customising the workflow Add extra table fields to the SQLite database to answer even more complex queries such as: workflow status to differentiate between active and inactive workflows.
by Ayoub
Who is this for? This workflow is designed for businesses or developers looking to integrate voice-based chat applications with dynamic responses and conversational memory. What problem does this solve? It automates AI-powered voice conversations, maintaining context between sessions and converting speech-to-text and text-to-speech. What this workflow does: The workflow receives audio input, transcribes it using OpenAI, and processes the conversation using Google Gemini Chat Model (you can use OpenAI Chat Model). Responses are converted back to speech using ElevenLabs. Prerequisites: You'll need API keys for: OpenAI (you can obtain it from OpenAI website) ElevenLabs (you can obtain it from their website) Google Gemini (You can obtain it from Google AI Studio) Setup: Configure you API keys Ensure that the value (voice_message) in the "Path" parameter in the Webhook node is used as the name of the parameter that will contain the voice message you are sending via the HTTP Post request.
by David Roberts
AI evaluation in n8n This is a template for n8n's evaluation feature. Evaluation is a technique for getting confidence that your AI workflow performs reliably, by running a test dataset containing different inputs through the workflow. By calculating a metric (score) for each input, you can see where the workflow is performing well and where it isn't. How it works This template shows how to calculate a workflow evaluation metric: whether a category matches the expected one. The workflow takes support tickets and generates a category and priority, which is then compared with the correct answers in the dataset. We use an evaluation trigger to read in our dataset It is wired up in parallel with the regular trigger so that the workflow can be started from either one. More info Once the category is generated by the agent, we check whether it matches the expected one in the dataset Finally we pass this information back to n8n as a metric
by Jimleuk
This n8n template demonstrates how to calculate the evaluation metric "Relevance" which in this scenario, measures the relevance of the agent's response to the user's question. The scoring approach is adapted from the open-source evaluations project RAGAS and you can see the source here https://github.com/explodinggradients/ragas/blob/main/ragas/src/ragas/metrics/_answer_relevance.py How it works This evaluation works best for Q&A agents. For our scoring, we analyse the agent's response and ask another AI to generate a question from it. This generated question is then compared to the original question using cosine similarity. A high score indicates relevance and the agent's successful ability to answer the question whereas a low score means agent may have added too much irrelevant info, went off script or hallucinated. Requirements n8n version 1.94+ Check out this Google Sheet for a sample data https://docs.google.com/spreadsheets/d/1YOnu2JJjlxd787AuYcg-wKbkjyjyZFgASYVV0jsij5Y/edit?usp=sharing
by Gain FLow AI
Meeting Prep: Automated Meeting Attendee Enrichment Overview This workflow automates the process of gathering critical information about your meeting attendees right after they book a meeting. Whether they book through Calendly or Cal.com, this workflow extracts key details, uses Apollo.io to enrich their profiles with company and contact data, and logs everything into a Google Sheet for easy access. This ensures you're always prepared with relevant insights before every meeting. Use Case This workflow is perfect for: Sales Professionals**: Get instant insights into prospects' companies, roles, and social presence before calls. Customer Success Teams**: Understand your clients' business context to provide more tailored support. Recruiters**: Gather comprehensive candidate information ahead of interviews. Consultants**: Prepare for client meetings with a deeper understanding of their organization and industry. Anyone who takes meetings**: Save time on manual research and ensure you always have the data you need to make a great impression. How It Works Meeting Booking Trigger: The workflow springs into action the moment a new meeting is booked. It supports two popular scheduling platforms: Calendly: Triggers when an invitee.created event occurs. Cal.com: Triggers on a BOOKING_CREATED event. Extract Initial Data: From the booking event, the workflow extracts essential information like the attendee's name, email, company, and any notes provided during scheduling. Log Initial Entry: It immediately logs these initial details into your designated Google Sheet ("Meeting Prep" spreadsheet). This ensures a record exists, even if further enrichment isn't possible. Generate Apollo Query: Using the extracted name and company, the workflow dynamically builds a search URL for Apollo.io. This query is designed to find the most relevant person and company profiles on Apollo. Enrich with Apollo.io: The generated Apollo URL is then used to scrape Apollo.io via an Apify Scraper. This step attempts to pull extensive data, including job title, location, phone numbers, company size, industry, website URL, and social media profiles (LinkedIn, Twitter, Facebook, Github) for both the person and their company. A conditional check verifies if data was successfully retrieved from Apollo. Update Google Sheet: If data is available from Apollo: The Google Sheet entry is updated with all the rich, newly found information, changing the status to "Enriched". If data is not available: The Google Sheet entry's status is updated to "Info Not Available," clearly indicating that manual research might be needed. How to Set It Up To set up this powerful meeting prep workflow, follow these steps: Get Your API Keys: Calendly: Obtain your Calendly API key for the "Calendly Trigger" node. Cal.com: Get your Cal.com API key for the "Cal.com Trigger1" node. Apify: You'll need an Apify API token. Replace <YOURAPIKEY> in the "Scrape Apollo" node's URL with your actual Apify token. Google Sheet Setup: Copy the Template: Make a copy of the provided Google Sheet Template ("Meeting Prep") into your own Google Drive. This template has the necessary columns for enriched data. Connect Google Sheets: Ensure your Google Sheets OAuth2 API credentials are set up in n8n and linked to the "Google Sheets1" and "Google Sheets2" nodes. Update Sheet IDs: In both "Google Sheets1" and "Google Sheets2" nodes, update the documentId with the ID of your copied "Meeting Prep" Google Sheet. Import the Workflow: Import the provided workflow JSON into your n8n instance. Activate and Test: Once all credentials and sheet IDs are configured, activate the workflow. Test it by booking a new meeting through your connected Calendly or Cal.com account. Watch as your Google Sheet automatically populates with detailed attendee information! This workflow will dramatically cut down on your meeting preparation time, allowing you to focus on more strategic conversations.