by Shiva
AI Voice Calling Bot - OpenAI GPT-4o + ElevenLabs + Twilio Integration for Multilingual Appointment Booking & Service Orders Overview Transform your business with an intelligent voice calling bot that handles customer calls automatically in 25+ languages. This N8n workflow integrates OpenAI GPT-4o, ElevenLabs text-to-speech, and Twilio for seamless appointment scheduling, pizza orders, and service bookings. Key Features Multilingual Support**: Conversations in English, Spanish, French, German, Italian, Portuguese, Chinese, Japanese, Arabic, and 20+ more languages Natural AI Conversations**: GPT-4o powered responses with ElevenLabs realistic voice synthesis Multi-Service Handling**: Appointments, orders, and service requests with automatic logging Real-time Processing**: Instant speech-to-text and audio response generation Prerequisites N8n instance (self-hosted or cloud) Twilio account with phone number OpenAI API key (GPT-4o access) ElevenLabs API credentials Google Sheets access Cloud storage for audio files Setup Instructions Step 1: Configure Credentials Add API keys for OpenAI, ElevenLabs, Twilio, and Google Sheets in N8n credentials manager. Step 2: Prepare Data Storage Create Google Sheets for call logs and appointments with columns: timestamp, caller_id, speech_input, ai_response, language, call_sid. Step 3: Configure Twilio Set webhook URL to your N8n endpoint: https://your-n8n-instance.com/webhook/voice-webhook Step 4: Update Sheet IDs Replace placeholder Google Sheet IDs in workflow nodes with your actual sheet IDs. Customization Options Voice Settings**: Adjust ElevenLabs multilingual voice models and parameters AI Behavior**: Modify system prompts for specific business needs and languages Service Types**: Add custom service handling logic Business Hours**: Implement language-specific operating hours Monitoring Track call analytics, language preferences, conversion rates, and customer satisfaction across all supported languages through automated Google Sheets logging. Ready for production use with comprehensive error handling and scalability for global businesses.
by n8n Team
This workflow automatically adds a note of the PR from GitHub to the Pipedrive contact if their GitHub email matches a Person in Pipedrive. Prerequisites Pipedrive account and Pipedrive credentials GitHub account and GitHub credentials How it works GitHub Trigger node activates the workflow when a GitHub user adds a PR. HTTP Request node gets the user's data and sends it further. Pipedrive node searches the same email that GitHub user has in Pipedrive. IF node checks whether a person with the same email exists in Pipedrive. In case there's such a person in Pipedrive, the Pipedrive node creates a note within the person's profile.
by Mihai Farcas
This n8n workflow operates as a two-agent system where each agent has a specialized task. The process flows from initial user input to a final analysis, with a seamless handoff between the agents. How it works The Chat Trigger The entire process begins when you send a message using n8n's chat interface. This message serves as the initial prompt or query for the system. The Research Agent Takes Over The user's message is first sent to the Research Agent. This agent's job is to understand the query and gather relevant information. To do this, it has access to: LLM: Google Gemini, which acts as the agent's "brain" to process language and make decisions. Tools: web_search: It uses this tool (powered by your self-hosted SearXNG instance) to perform live searches on the internet. get_current_date: It can access the current date, which is useful for context-aware or time-sensitive research. The Research Agent uses these tools to find the most relevant information related to your query and then compiles it into a concise summary. Handoff to the Sentiment Analysis Agent Once the Research Agent has completed its task, it passes its findings directly to the Sentiment Analysis Agent. The Final Analysis The Sentiment Analysis Agent receives the text from the Research Agent. Its sole purpose, as defined by its system prompt, is to analyze the sentiment of the provided information. It determines if the content is positive, negative, or neutral and formulates a final response. This final analysis is then sent back to you in the chat, completing the workflow. Set up steps Select the Language Model (LLM): This workflow is pre-configured with Google Gemini. You can select a different model for the agents as needed. Configure LLM Credentials: Ensure that valid credentials for your chosen LLM are correctly set up within your n8n instance. Set Up the SearXNG Connection: Configure the node to connect to your self-hosted SearXNG instance. This enables the agent's web search capabilities. Define the Research Agent's Task: Customize the system prompt for the "Research Agent" to define its role, instructions, and how it should conduct its research. Define the Sentiment Analysis Agent's Task: Adjust the system prompt for the "Sentiment Analysis Agent" to specify how it should analyze the information provided by the Research Agent. Test the Workflow: Use the built-in chat interface in the n8n canvas to send a message and verify that the agents are functioning correctly.
by n8n Team
This workflow creates a GitHub issue when a new ticket is created in Zendesk. Subsequent comments on the ticket in Zendesk are added as comments to the issue in GitHub. Prerequisites Zendesk account and Zendesk credentials. GitHub account and GitHub credentials. GitHub repository to create issues in. How it works The workflow listens for new tickets in Zendesk. When a new ticket is created, the workflow creates a new issue in GitHub. The GitHub issue number is then saved in one of the ticket's fields (in setup we call this "GitHub Issue Number"). The next time a comment is added to the ticket, the workflow retrieves the GitHub issue number from the ticket's field and adds the comment to the issue in GitHub. Setup This workflow requires that you set up a webhook in Zendesk. To do so, follow the steps below: In the workflow, open the On new Zendesk ticket node and copy the webhook URL. In Zendesk, navigate to Admin Center > Apps and integrations > Webhooks > Actions > Create Webhook. Add all the required details which can be retrieved from the On new Zendesk ticket node. The webhook URL gets added to the “Endpoint URL” field, and the “Request method” should match what is shown in n8n. Save the webhook. In Zendesk, navigate to Admin Center > Objects and rules > Business rules > Triggers > Add trigger. Give trigger a name such as “New tickets”. Under “Conditions” in “Meet ALL of the following conditions”, add “Status is New”. Under “Actions”, select “Notify active webhook” and select the webhook you created previously. In the JSON body, add the following: { "id": "{{ticket.id}}", "comment": "{{ticket.latest_comment_html}}" } Save the Zendesk trigger. You will also need to set up a field in Zendesk to store the GitHub issue number. To do so, follow the steps below: In Zendesk, navigate to Admin Center > Objects and rules > Tickets > Fields > Add field. Use the number field option and give the field a name such as “GitHub Issue Number”. Save the field. In n8n, open the Update ticket node and select the field you created in Zendesk.
by Yaron Been
🎤 Audio-to-Insights: Auto Meeting Summarizer Transform your meeting recordings into actionable insights automatically. This powerful n8n workflow monitors your Google Drive for new audio files, transcribes them using OpenAI's Whisper, generates intelligent summaries with ChatGPT, and logs everything in Google Sheets - all without lifting a finger. 🔄 How It Works This workflow operates as a seamless 6-step automation pipeline: Step 1: Smart Detection The workflow continuously monitors a designated Google Drive folder (polls every minute) for newly uploaded audio files. Step 2: Secure Download When a new audio file is detected, the system automatically downloads it from Google Drive for processing. Step 3: AI Transcription OpenAI's Whisper technology converts your audio recording into accurate text transcription, supporting multiple audio formats. Step 4: Intelligent Summarization ChatGPT processes the transcript using a specialized prompt that extracts: Key discussion points and decisions Action items with assigned persons and deadlines Priority levels and follow-up tasks Clean, professional formatting Step 5: Timestamp Generation The system automatically adds the current date and formats it consistently for tracking purposes. Step 6: Automated Logging The final summary is appended to your Google Sheets document with the date, creating a searchable archive of all meeting insights. ⚙️ Setup Steps Prerequisites Before setting up the workflow, ensure you have: Active Google Drive account OpenAI API key with credits Google Sheets access n8n instance (cloud or self-hosted) Configuration Steps 1. Credential Setup Google Drive OAuth2**: Required for folder monitoring and file downloads OpenAI API Key**: Needed for both transcription (Whisper) and summarization (ChatGPT) Google Sheets OAuth2**: Essential for writing summaries to your spreadsheet 2. Google Drive Configuration Create a dedicated folder in Google Drive for meeting recordings Copy the folder ID from the URL (the long string after /folders/) Update the folderToWatch parameter in the workflow 3. Google Sheets Preparation Create a new Google Sheet or use an existing one Ensure it has columns: Date and Meeting Summary Copy the spreadsheet ID from the URL Update the documentId parameter in the workflow 4. Audio Requirements Supported Formats**: MP3, WAV, M4A, MP4 Recommended Size**: Under 100MB for optimal processing Language**: Optimized for English (customizable for other languages) Quality**: Clear audio produces better transcriptions 5. Workflow Activation Import the workflow JSON into your n8n instance Configure all credential connections Test with a sample audio file Activate the workflow trigger 🚀 Use Cases Project Management Team Standup Summaries**: Convert daily standups into actionable task lists Sprint Retrospectives**: Extract improvement points and action items Stakeholder Updates**: Generate concise reports for leadership Sales & Customer Success Discovery Call Notes**: Capture prospect pain points and requirements Demo Follow-ups**: Track questions, objections, and next steps Customer Check-ins**: Monitor satisfaction and expansion opportunities Consulting & Professional Services Client Strategy Sessions**: Document recommendations and implementation plans Requirements Gathering**: Organize complex project specifications Progress Reviews**: Track deliverables and milestone achievements HR & Training Interview Debriefs**: Standardize candidate evaluation notes Training Sessions**: Create searchable knowledge bases Performance Reviews**: Document development plans and goals Research & Development Brainstorming Sessions**: Capture innovative ideas and concepts Technical Reviews**: Log decisions and architectural choices User Research**: Organize feedback and insights systematically 💡 Advanced Customization Options Enhanced Summarization Modify the ChatGPT prompt to focus on specific elements: Add speaker identification for multi-person meetings Include sentiment analysis for customer calls Generate department-specific summaries (technical, sales, legal) Extract financial figures and metrics automatically Integration Expansions Slack Integration**: Auto-post summaries to relevant channels Email Notifications**: Send summaries to meeting participants CRM Updates**: Push action items directly to Salesforce/HubSpot Calendar Integration**: Schedule follow-up meetings based on action items Quality Improvements Audio Preprocessing**: Add noise reduction before transcription Multi-language Support**: Configure for international teams Custom Templates**: Create industry-specific summary formats Approval Workflows**: Add human review before final storage 🛠️ Troubleshooting & Best Practices Common Issues Large File Processing**: Split recordings over 100MB into smaller segments Poor Audio Quality**: Use noise reduction tools before uploading API Rate Limits**: Implement delay nodes for high-volume usage Formatting Issues**: Adjust ChatGPT prompts for consistent output Optimization Tips Upload files in supported formats only Ensure stable internet connection for cloud processing Monitor OpenAI API usage and costs Regularly backup your Google Sheets data Test workflow changes with sample files first 📊 Expected Outputs Sample Summary Format: Meeting Summary - March 15, 2024 Key Discussion Points: Q1 budget review and allocation decisions New product launch timeline and milestones Team restructuring and role assignments Action Items: John: Finalize budget proposal by March 20th (High Priority) Sarah: Schedule product demo sessions for March 25th Team: Submit org chart feedback by March 18th Decisions Made: Approved additional marketing budget of $50K Delayed product launch to April 15th for quality assurance Promoted Lisa to Senior Developer role 📞 Questions & Support For any questions, customizations, or technical support regarding this workflow: 📧 Email Support Primary Contact**: Yaron@nofluff.online Response Time**: Within 24 hours on business days Best For**: Setup questions, customization requests, troubleshooting 🎥 Learning Resources YouTube Channel**: https://www.youtube.com/@YaronBeen/videos Step-by-step setup tutorials Advanced customization guides Workflow optimization tips 🔗 Professional Network LinkedIn**: https://www.linkedin.com/in/yaronbeen/ Connect for ongoing support Share your workflow success stories Get updates on new automation ideas 💡 What to Include in Your Support Request Describe your specific use case Share any error messages or logs Mention your n8n version and setup type Include sample audio file characteristics (if relevant) Ready to transform your meeting chaos into organized insights? Download the workflow and start automating your meeting summaries today!
by n8n Team
This template shows how to sync data from one service to another. Specifically, in this example we're saving a new qualified lead from a Postgres database to a Google Sheets file. Setup instructions are located inside the workflow template.
by Hunyao
What it does Captures token usage and cost from your AI Agent/LLM. Logs model, tokens, cost, tool use, and conversation I/O to Google Sheets for simple observability and billing. Perfect for Developers adding usage monitoring to AI agents. Teams needing cost transparency in prototypes. How it works Chat Trigger collects user input for the AI Agent. A Set node injects metadata like workflow, execution, and client IDs. LangChain Code node returns a configured Chat model with a callback that reads usage metadata. The callback computes input, output, and total costs based on per‑million token prices you define. It appends token metrics to a Google Sheet via the Google Sheets Tool. The Agent records intermediate tool calls. An If node checks whether a tool was used. When tools are used, the workflow logs input, output, tool name, and metadata to an Observability sheet. How to use SELF-HOSTED N8N ONLY - the Langchain Code node is only available in the self-hosted version of n8n. It is not available in n8n cloud. Requirements Self-hosted version of n8n If you have any questions in running the workflow, see the attached video: https://youtu.be/JSulRS128MA
by please-open.it
Intro This workflow needs a user to authenticate by using an openid connect provider in order to call the webhook. If the user is not authenticated, it starts a login process by using an Authorization Code with PKCE https://datatracker.ietf.org/doc/html/rfc7636, a standard way to authenticate users with openid connect. Then, after the user logs in, the webhook is refreshed and gets the user's token from a cookie. With this token, all details about the user are requested through the userinfo endpoint on the identity provider. How to set up with Keycloak Keycloak Keycloak is an open source identity and access management solution. Feel free to get a demo realm at https://please-open.it or get your own Keycloak server up and running. After creating a realm, go to "Realm Settings" and click on "OpenID Endpoint Configuration" Retrieve authorization_endpoint, token_endpoint and userinfo_endpoint values. Set those variables in the "Set variables" node. In Keycloak, create a new client (name it as you want) Disable the client authentication, check only "standard flow" : At the third step, put the webhook url in "valid redirect URIs", fill "Web origins" with a "+". You're done, open the webhook and it asks you to authenticate. Usage User informations The userinfo node returns this structure about the user has logged in : [ { "sub":"73a6543f-f420-4fa6-9811-209e903c348b", "email_verified":true, "preferred_username": "mathieu.passenaud@please-open.it", "email": "mathieu.passenaud@please-open.it" } ] I can use those infos in my workflow for custom operations. APIs calls the "code" node returns me a cookie named "n8n-custom-auth" which is the access_token returned by the identity provider. This access_token can be used to call APIs connected to this identity provider (for example, we call userinfo API with this token). Example : asks a user to log in with his Google account then call an API (Gmail, drive...) with his own token. How it works We published a blog post about this flow, how it works and how you can use it : https://blog.please-open.it/n8n-openid-client/
by Artur
Streamline your accounting by automatically creating QuickBooks Online customers and sales receipts whenever a successful Stripe payment is processed. Ideal for businesses looking to reduce manual data entry and improve accounting efficiency. How it works Trigger: The workflow is triggered when a new successful payment intent event is received from Stripe. Retrieve Customer Data: Fetches customer details from Stripe associated with the payment. Check QuickBooks Customer: Searches QuickBooks Online to see if the customer already exists using their email address. Create or Use Existing Customer: If the customer doesn't exist in QuickBooks, they are created; otherwise, the existing customer is used. Generate Sales Receipt: A sales receipt is created in QuickBooks Online with payment details, including item descriptions, amounts, and currency. Set up steps Connect Accounts: Authenticate both your QuickBooks Online and Stripe accounts in n8n. Webhook Setup: Configure the Stripe webhook to send payment_intent.succeeded events to this workflow. Test the Workflow: Trigger a test payment in Stripe to validate the integration. Customize Details: Adjust item descriptions or other fields in the QuickBooks sales receipt JSON body as needed. This workflow requires basic familiarity with n8n, but setup can be completed in under 15 minutes for most users.
by Aurélien P.
📈 Daily Crypto Market Summary Bot (Binance to Telegram) This workflow fetches 24h price change data from Binance for selected crypto pairs (BTC/USDC, ETH/USDC, SOL/USDC) every hour using a cron schedule. It performs in-depth analysis—including volatility, volume, bid-ask spread, momentum, and market comparison—then formats a detailed market summary. The final report is sent to a Telegram chat using HTML formatting, highlighting top gainers, losers, and key metrics in a clean, readable layout. 🔑 Key Features ⏱ Runs every hour (cron: 5 * * * *) 🔍 Filters and analyzes major coins: BTC, ETH, SOL 📊 Calculates market metrics: Volatility Bid-ask spread Momentum Estimated market cap Market average comparison 📈 Highlights gainers, losers, and top coins by volume ✂️ Splits messages to fit Telegram’s 4096 character limit 💬 Sends output in rich HTML format to a Telegram group or chat 🎯 Use Cases ✅ Crypto traders wanting hourly performance insights ✅ Telegram groups needing automated market updates ✅ Analysts monitoring key coin metrics in real-time ✅ Bot developers creating crypto dashboards or alerts 🛠 Technical Details Data Source:** Binance 24hr ticker API (/api/v3/ticker/24hr) Coins Monitored:** BTCUSDC, ETHUSDC, SOLUSDC (can be expanded) Metrics Calculated:** Price change percentage Volatility (high vs low price) Bid-ask spread % Momentum (vs weighted average) Estimated market cap Number of trades Market average movement Message Format:** HTML with emojis, bold styling, and section headings Auto-split messages when exceeding Telegram's 4096-char limit Error Handling:** Retry on HTTP failure (up to 5 times with 5s delay) Message length checked and split for Telegram compatibility ⚙️ Setup Requirements Telegram Bot Token — Create a bot via @BotFather on Telegram Chat ID — Use a personal ID or group chat ID (add the bot to the group) n8n Instance — Either cloud or self-hosted (Optional) Modify relevantSymbols in the Function node to track different coins 🧠 Notes This workflow is highly customizable—feel free to modify the analytics, tracked pairs, or formatting. Great base for alerting systems or crypto dashboards. 📷 Example Output (Telegram) 📊 Crypto Market Summary — 2025-04-20 14:05:05 UTC 🌐 Market Overview (BTC, ETH, SOL) Average Change: -1.54% 24h Volume: $850,358,765.46 Most Volatile: SOLUSDC (4.53%) Most Liquid: BTCUSDC (0.0000% spread) 💹 Top by Volume ETHUSDC: $403,860,356.75 | -1.640% SOLUSDC: $279,241,338.60 | -1.706% BTCUSDC: $167,257,070.12 | -1.261% 📉 Losers SOLUSDC 🔻 Change: -1.71% (24h) 💰 Current: $137.10 📊 Range: $135.82 - $141.97 📈 Volatility: 4.53% 🔄 Volume: 2.01M | $279,241,338.60 ⚖️ Bid-Ask Spread: 0.0073% ⬇️ vs Market Avg: -0.17% 🔽 Momentum: -1.42% 🔢 Trades: 366,119 ETHUSDC 🔻 Change: -1.64% (24h) 💰 Current: $1,577.42 📊 Range: $1,565.60 - $1,631.98 📈 Volatility: 4.24% 🔄 Volume: 252.11K | $403,860,356.75 ⚖️ Bid-Ask Spread: 0.0044% ⬇️ vs Market Avg: -0.10% 🔽 Momentum: -1.53% 🔢 Trades: 596,801 BTCUSDC 🔻 Change: -1.26% (24h) 💰 Current: $84,336.65 📊 Range: $83,963.35 - $85,634.50 📈 Volatility: 1.99% 🔄 Volume: 1.97K | $167,257,070.12 ⚖️ Bid-Ask Spread: 0.0000% ⭐ vs Market Avg: 0.27% 🔽 Momentum: -0.68% 🔢 Trades: 124,202
by Angel Menendez
Who is this for? This workflow is designed for teams using Slack for communication and ServiceNow for incident management. It simplifies incident lookup by enabling team members to fetch incident details directly within Slack via a Slash Command. What problem is this workflow solving? Manually switching between Slack and ServiceNow to retrieve incident details can be time-consuming and disrupt workflow efficiency. This workflow bridges the two platforms, providing instant access to critical incident information in Slack, saving time, and improving response efficiency. What this workflow does? The workflow listens for a Slash Command in Slack that includes an incident ID, extracts the ID from the incoming payload, queries ServiceNow for the corresponding incident details, and sends a formatted response back to Slack. Depending on the query result, it can: Display incident details (e.g., ID, description, severity, and priority). Notify the user if no matching incident is found. Alert the user if there’s an issue connecting to ServiceNow. Setup Slack Setup: Create a Slash Command in Slack with the appropriate endpoint URL. Configure the command to send a POST request to the webhook endpoint of this workflow. For details on how to setup the Slack app using Slash commands and n8n, check out this video. ServiceNow Setup: Create or use an existing account with the necessary permissions to access incident data. Configure the ServiceNow node with your ServiceNow credentials. n8n Workflow Activation: Deploy and activate the workflow in your n8n instance. Ensure all nodes are properly configured and connected. How to customize this workflow to your needs Modify Incident Query Parameters:** Adjust the query logic in the Search For Incident in ServiceNow node to include additional filters or data points based on your organization’s needs. Slack Response Customization:** Customize the Slack response template to display additional incident details or to match your team’s tone and style. Error Handling:** Enhance the error handling nodes to include more detailed logs or send alerts to a dedicated Slack channel.
by Nskha
n8n Creators Template: Creator Profile Stats Updater This n8n workflow template is designed to automate the process of updating a creator's profile statistics, including total workflows, complex workflows, approved workflows, pending workflows, total nodes, and total views. It utilizes various nodes to fetch data, process it, and update a SVG file hosted on GitHub to reflect the latest stats. Workflow Overview Schedule Trigger: Triggers the workflow execution at specified intervals. Config: Sets up configuration details like creator username, colors for text, icons, border, and card. Get Workflows: Fetches workflows associated with the creator from the n8n API. Workflows Data: Processes the fetched data to calculate various statistics. Get User: Fetches user details from the n8n API. Download Image: Downloads the creator's profile image. Extract From File: Extracts binary data from the downloaded image file. SVG: Generates an SVG file with updated stats and visual representation. GitHub: Commits the updated SVG file to the specified GitHub repository. Final: Prepares the final data set for further processing or output. Sticky Note: Provides a visual note or reminder within the workflow editor. Embed & Live Preview Since it's a .SVG format you can host it anywhere. treat it like normal image so you can embed it with any site, forum, page that support posting images. here's example code for markdown: Here's the result Or served through CDN & Cache Setup Instructions GitHub Credentials: Ensure you have GitHub credentials set up in your n8n instance to allow the workflow to commit changes to your repository. Configure Trigger: Adjust the Schedule Trigger node to set the desired execution intervals for the workflow. Set Configuration: Customize the Config node with your GitHub username and preferred aesthetic options for the SVG. Deploy Workflow: Import the workflow into your n8n instance and deploy it. Customization Options Text and Icon Colors**: Customize the colors used in the SVG by modifying the respective fields in the Config node. Profile Image Size**: Adjust the image size in the Download Image node URL if needed. Commit Messages**: Modify the commit messages in the GitHub nodes to suit your version control conventions [I've used $now funaction to include current time in message which will gives allways a diffrent commit value]. Requirements n8n (Self-hosted or Cloud version compatible with 2024 releases and up) GitHub account and repository Basic understanding of n8n workflow configuration Support and Contributions For support, please refer to the n8n community forum or the official n8n documentation. Contributions to the template can be made you're allowed to reuse this workflow and reshare with edit (like new design/colors etc..) under your name.