Automate outbound voice calls from Go High Level opportunities with Vapi
This workflow triggers when a new opportunity is created in Go High Level (GHL), fetches the associated contact details, and initiates an outbound call using Vapi. The call is made by a Vapi assistant configured with the appropriate credentials.
π§Ύ Requirements
Go High Level (GHL)
- A Go High Level account
- GHL developer private app and credentials enabled in n8n
- Webhook URL from n8n added to your GHL private app
Vapi
- A Vapi account with credit
- A connected phone number to make calls
- An assistant created and ready to make calls
- Your Vapi API key
π Useful Links
π Workflow Breakdown
1. Trigger: GHL Opportunity Created
- Triggered by a Webhook (POST) from Go High Level when a new opportunity is created.
- Webhook URL must be enabled in your GHL private app.
2. Get a GHL Contact
- Retrieves contact details from GHL CRM using the contact ID from the opportunity.
- Includes information such as phone number, name, and custom fields.
3. Wait 5 Minutes
- Introduces a short delay before making the call to avoid immediate outreach.
- Helps ensure data is synced and gives the system time for any follow-up automation.
4. Set Vapi Fields (Manual Step)
- Set the required fields for the Vapi API call:
vapiPhoneNumberIdβ the number id making the callvapiAssistantIdβ the assistant who will handle the callvapiApiβ your secure Vapi API key
5. Start Outbound Vapi Call
- Sends a POST request to
https://api.vapi.ai/call - Payload includes:
- Contactβs phone number
- Selected Vapi assistant
- Vapi phone number id to start the call
β Summary
This n8n automation connects your CRM (Go High Level) with voice automation (Vapi) to immediately respond to new opportunities. Once a lead is created, they will receive a personalized voice call from a Vapi AI assistant.
πββοΈ Need Help?
Feel free to contact us at 1 Node
Get instant access to a library of free resources we created.
Automate Outbound Voice Calls from GoHighLevel Opportunities with VAPI
This n8n workflow automates the process of initiating outbound voice calls through VAPI (Voice API) whenever a new opportunity is created or updated in GoHighLevel. It's designed to streamline communication, allowing businesses to immediately engage with new leads or follow up on existing opportunities without manual intervention.
What it does
This workflow simplifies and automates the following steps:
- Listens for GoHighLevel Opportunity Events: It acts as a webhook listener, waiting for new or updated opportunity events from GoHighLevel.
- Extracts Contact Information: Upon receiving an event, it extracts essential contact details such as the contact's phone number and name from the GoHighLevel opportunity data.
- Prepares VAPI Call Data: It constructs the necessary JSON payload for the VAPI API, including the extracted phone number and a dynamic message that incorporates the contact's name.
- Initiates Outbound Call via VAPI: It makes an HTTP POST request to the VAPI API endpoint to initiate an outbound voice call to the contact.
- Introduces a Delay (Optional but Recommended): After initiating the call, it includes a configurable wait period. This can be useful for rate limiting or allowing time for the call to connect before any subsequent actions (though no subsequent actions are defined in this specific workflow).
Prerequisites/Requirements
To use this workflow, you will need:
- n8n Instance: A running instance of n8n.
- GoHighLevel Account: An active GoHighLevel account with opportunities configured.
- VAPI (Voice API) Account: An account with VAPI or a similar Voice API service that allows initiating outbound calls via an HTTP request.
- VAPI API Key/Authentication: The necessary API key or authentication details for your VAPI service to authorize the HTTP requests.
- GoHighLevel Webhook Configuration: You will need to configure a webhook in GoHighLevel to send opportunity events to the n8n Webhook node.
Setup/Usage
- Import the Workflow: Import this JSON workflow into your n8n instance.
- Configure GoHighLevel Webhook:
- In your n8n workflow, activate the "Webhook" node and copy its unique URL.
- In GoHighLevel, navigate to your workflow automation settings.
- Create a new workflow or edit an existing one that triggers on "Opportunity Created" or "Opportunity Updated" events.
- Add a "Webhook" action to this GoHighLevel workflow and paste the n8n Webhook URL you copied.
- Configure "Edit Fields" Node:
- The "Edit Fields" (Set) node is configured to extract
contact.phoneandcontact.namefrom the incoming GoHighLevel data. Ensure these paths match the data structure sent by your GoHighLevel webhook. Adjust if necessary.
- The "Edit Fields" (Set) node is configured to extract
- Configure "HTTP Request" Node (VAPI):
- Method: Set to
POST. - URL: Enter your VAPI outbound call API endpoint (e.g.,
https://api.vapi.ai/call). - Headers: Add an
Authorizationheader with your VAPI API key (e.g.,Bearer YOUR_VAPI_API_KEY). - Body Parameters:
- Set the "Body Content Type" to
JSON. - Construct the JSON body, mapping the
phoneandnamefrom the previous "Edit Fields" node. An example body might look like:
Adjust the{ "phoneNumber": "{{ $json.phone }}", "message": "Hello {{ $json.name }}, this is an automated call regarding your recent opportunity." }messageand other VAPI-specific parameters as needed.
- Set the "Body Content Type" to
- Method: Set to
- Configure "Wait" Node (Optional):
- The "Wait" node is currently set to 10 seconds. Adjust this duration as per your requirements or remove it if not needed.
- Activate the Workflow: Once all configurations are complete, activate the workflow in n8n.
Now, whenever an opportunity event occurs in GoHighLevel that triggers your configured webhook, n8n will automatically initiate an outbound call via VAPI to the associated contact.
Related Templates
Track competitor SEO keywords with Decodo + GPT-4.1-mini + Google Sheets
This workflow automates competitor keyword research using OpenAI LLM and Decodo for intelligent web scraping. Who this is for SEO specialists, content strategists, and growth marketers who want to automate keyword research and competitive intelligence. Marketing analysts managing multiple clients or websites who need consistent SEO tracking without manual data pulls. Agencies or automation engineers using Google Sheets as an SEO data dashboard for keyword monitoring and reporting. What problem this workflow solves Tracking competitor keywords manually is slow and inconsistent. Most SEO tools provide limited API access or lack contextual keyword analysis. This workflow solves that by: Automatically scraping any competitorβs webpage with Decodo. Using OpenAI GPT-4.1-mini to interpret keyword intent, density, and semantic focus. Storing structured keyword insights directly in Google Sheets for ongoing tracking and trend analysis. What this workflow does Trigger β Manually start the workflow or schedule it to run periodically. Input Setup β Define the website URL and target country (e.g., https://dev.to, france). Data Scraping (Decodo) β Fetch competitor web content and metadata. Keyword Analysis (OpenAI GPT-4.1-mini) Extract primary and secondary keywords. Identify focus topics and semantic entities. Generate a keyword density summary and SEO strength score. Recommend optimization and internal linking opportunities. Data Structuring β Clean and convert GPT output into JSON format. Data Storage (Google Sheets) β Append structured keyword data to a Google Sheet for long-term tracking. Setup Prerequisites If you are new to Decode, please signup on this link visit.decodo.com n8n account with workflow editor access Decodo API credentials OpenAI API key Google Sheets account connected via OAuth2 Make sure to install the Decodo Community node. Create a Google Sheet Add columns for: primarykeywords, seostrengthscore, keyworddensity_summary, etc. Share with your n8n Google account. Connect Credentials Add credentials for: Decodo API credentials - You need to register, login and obtain the Basic Authentication Token via Decodo Dashboard OpenAI API (for GPT-4o-mini) Google Sheets OAuth2 Configure Input Fields Edit the βSet Input Fieldsβ node to set your target site and region. Run the Workflow Click Execute Workflow in n8n. View structured results in your connected Google Sheet. How to customize this workflow Track Multiple Competitors β Use a Google Sheet or CSV list of URLs; loop through them using the Split In Batches node. Add Language Detection β Add a Gemini or GPT node before keyword analysis to detect content language and adjust prompts. Enhance the SEO Report β Expand the GPT prompt to include backlink insights, metadata optimization, or readability checks. Integrate Visualization β Connect your Google Sheet to Looker Studio for SEO performance dashboards. Schedule Auto-Runs β Use the Cron Node to run weekly or monthly for competitor keyword refreshes. Summary This workflow automates competitor keyword research using: Decodo for intelligent web scraping OpenAI GPT-4.1-mini for keyword and SEO analysis Google Sheets for live tracking and reporting Itβs a complete AI-powered SEO intelligence pipeline ideal for teams that want actionable insights on keyword gaps, optimization opportunities, and content focus trends, without relying on expensive SEO SaaS tools.
Monitor bank transactions with multi-channel alerts for accounting teams
Enhance financial oversight with this automated n8n workflow. Triggered every 5 minutes, it fetches real-time bank transactions via an API, enriches and transforms the data, and applies smart logic to detect critical, high, and medium priority alerts based on error conditions, amounts, or risk scores. It sends multi-channel notifications via email and Slack, logs all data to Google Sheets, and generates summary statistics for comprehensive tracking. π°π¨ Key Features Real-time monitoring every 5 minutes for instant alerts. Smart prioritization (Critical, High, Medium) based on risk and errors. Multi-channel notifications via email and Slack. Detailed logging and summary reports in Google Sheets. How It Works Schedule Trigger: Runs every 5 minutes. Fetch Transactions: HTTP request retrieves real-time transaction data. API Error?: If condition for error logic is met, sends error alert. Enrich & Transform Data: Advanced risk calculation enhances data. Critical Alert?: If condition (50% or risk > 8) is met, raises alert. High Priority?: If condition (5% or risk > 7) is met, raises alert. Medium Priority?: If condition is met, raises alert. Log Priority to Sheet: Google Sheets appends critical, high, or medium priority data. Send Critical Email: HTML email to execute sheets append. Send High Priority Email: Email to finance team. Send High Priority Slack: Slack notification to finance team. Send Medium Priority Email: Email to finance team. Merge All Alerts: Combines all alerts for comprehensive tracking. Generate Summary Stats: Code block for analytics. Log Summary to Sheet: Summary statistics storage. Setup Instructions Import the workflow into n8n and configure the bank API credentials in "Fetch Transactions." Set up Google Sheets OAuth2 and replace the sheet ID for logging nodes. Configure Gmail API Key and Slack Bot Token for alerts. Test the workflow with sample transaction data exceeding risk or amount thresholds. Adjust priority conditions (e.g., 50%, 5%, risk > 8) based on your risk policy. Prerequisites Bank API access with real-time transaction data (e.g., https://api.bank.com) Google Sheets OAuth2 credentials Gmail API Key for email alerts Slack Bot Token (with chat:write permissions) Structured transaction data format Google Sheet Structure: Create a sheet with columns: Transaction ID Amount Date Risk Score Priority (Critical/High/Medium) Alert Sent Summary Stats Updated At Modification Options Adjust the "Schedule Trigger" interval (e.g., every 10 minutes). Modify "Critical Alert?" and "High Priority?" conditions for custom thresholds. Customize email and Slack templates with branded messaging. Integrate with fraud detection tools for enhanced risk analysis. Enhance "Generate Summary Stats" with additional metrics (e.g., average risk). Discover more workflows β Get in touch with us
Track daily moods with AI analysis & reports using GPT-4o, Data Tables & Gmail
Track your daily mood in one tap and receive automated AI summaries of your emotional trends every week and month. Perfect for self-reflection, wellness tracking, or personal analytics. This workflow logs moods sent through a webhook (/mood) into Data Tables, analyzes them weekly and monthly with OpenAI (GPT-4o), and emails you clear summaries and actionable recommendations via Gmail. βοΈ How It Works Webhook β Mood β Collects new entries (π, π, or π©) plus an optional note. Set Mood Data β Adds date, hour, and note fields automatically. Insert Mood Row β Stores each record in a Data Table. Weekly Schedule (Sunday 20:00) β Aggregates the last 7 days and sends a summarized report. Monthly Schedule (Day 1 at 08:00) β Aggregates the last 30 days for a deeper AI analysis. OpenAI Analysis β Generates insights, patterns, and 3 actionable recommendations. Gmail β Sends the full report (chart + AI text) to your inbox. π Example Auto-Email Weekly Mood Summary (last 7 days) π 5 ββββββββββ π 2 ββββ π© 0 Average: 1.7 (Positive π) AI Insights: Youβre trending upward this week β notes show that exercise days improved mood. Try keeping short walks mid-week to stabilize energy. π§© Requirements n8n Data Tables enabled OpenAI credential (GPT-4o or GPT-4 Turbo) Gmail OAuth2 credential to send summaries π§ Setup Instructions Connect your credentials: Add your own OpenAI and Gmail OAuth2 credentials. Set your Data Table ID: Open the Insert Mood Row node and enter your own Data Table ID. Without this, new moods wonβt be stored. Replace the email placeholder: In the Gmail nodes, replace your.email@example.com with your actual address. Deploy and run: Send a test POST request to /mood (e.g. { "mood": "π", "note": "productive day" }) to log your first entry. β οΈ Before activating the workflow, ensure you have configured the Data Table ID in the βInsert Mood Rowβ node. π§ AI Analysis Interprets mood patterns using GPT-4o. Highlights trends, potential triggers, and suggests 3 specific actions. Runs automatically every week and month. π Security No personal data is exposed outside your n8n instance. Always remove or anonymize credential references before sharing publicly. π‘ Ideal For Personal mood journaling and AI feedback Therapists tracking client progress Productivity or self-quantification projects ποΈ Sticky Notes Guide π‘ Mood Logging Webhook POST /mood receives mood + optional note. β οΈ Configure your own Data Table ID in the βInsert Mood Rowβ node before running. π’ Weekly Summary Runs every Sunday 20:00 β aggregates last 7 days β generates AI insights + emails report. π΅ Monthly Summary Runs on Day 1 at 08:00 β aggregates last 30 days β creates monthly reflection. π£ AI Analysis Uses OpenAI GPT-4o to interpret trends and recommend actions. π Email Delivery Sends formatted summaries to your inbox automatically.