AI Voice Receptionist for Service Businesses
Marketing agencies serving local service businesses (roofers, HVAC, plumbers, dentists, law firms) need an AI receptionist that can answer calls 24/7 in any language, book appointments in real-time, transfer urgent calls, and trigger automated follow-up sequences — all inside GoHighLevel. Most existing solutions use fragile native integrations or require expensive middleware. We built a system that works end-to-end with zero middleware, is white-label ready, and deploys to a new client in under 2 hours.
Caller Calls In
The call hits Vapi, which streams audio to Deepgram for real-time transcription and routes to GPT-4o for intent detection.
AI Handles the Call
The agent identifies the caller's intent (booking, cancel, reschedule, urgent, FAQ) and executes the appropriate flow with natural conversation.
Tools Execute
Custom code tools call the GHL REST API directly — creating contacts, checking availability, booking appointments, or transferring calls.
CRM Updates
GoHighLevel receives all data: new contacts, appointments on calendar, pipeline opportunities, tagged and segmented automatically.
Workflows Fire
7 automated workflows trigger: confirmation SMS, 24h & 2h reminders, cancellation follow-ups, no-show sequences, and Google review requests.
Recap & Analytics
Every call is transcribed, summarized, and sent as a recap email to the business owner. Full visibility into every interaction.
| Intent | Flow | Tools Used |
|---|---|---|
| 📆 New Booking | Qualify → create contact → check availability → book → confirm | create_contact check_availability create_appointment |
| ❌ Cancel | Collect phone → find appointment → confirm → cancel | find_appointment cancel_appointment |
| 🔄 Reschedule | Find → cancel old → check new slots → book new | find_appointment cancel_appointment check_availability create_appointment |
| 🚨 Urgent | Detect emergency → live transfer to business owner | transfer_call |
| ❔ FAQ | Answer question → redirect to booking | — |
| 📩 Call Recap | Auto-transcribe → summarize → email to business | Vapi analysisPlan → GHL webhook |
Voice & AI
CRM & Automation
| Tool | Function | API Endpoint |
|---|---|---|
create_contact |
Creates contact in GHL with phone, email, address | POST /contacts/ |
check_availability |
Queries Google Calendar for open slots (5-day window) | GET /calendars/.../free-slots |
create_appointment |
Books the appointment on the calendar | POST /calendars/events/appointments |
find_appointment |
Looks up existing appointments by phone number | GET /calendars/events/appointments |
cancel_appointment |
Cancels appointment by event ID | PUT /calendars/events/.../status |
transfer_call |
Live transfer to business owner for emergencies | Vapi SIP transfer |
send_message_sms |
Sends transcribed voicemail via SMS | POST /conversations/messages |
| Workflow | Trigger | Actions |
|---|---|---|
| Vapi → GHL Bridge | Webhook (end-of-call) | Create/update contact + opportunity + internal notification |
| Booking Confirmation | Appointment created | SMS + email to client, notification to business |
| Reminder 24h | 24h before appointment | SMS reminder to client |
| Reminder 2h | 2h before appointment | SMS reminder to client |
| Cancellation | Appointment cancelled | SMS confirmation + business notification + 48h follow-up |
| No-show | Appointment no-show | Notification + follow-up sequence |
| Google Review | Appointment completed | 3-touch sequence: Day 1, Day 7, Day 30 (SMS + Email) |
🌐 Multilingual Voice AI
Not just translation — culturally authentic conversations in each language. Regional expressions, natural pacing, and tone that feels local whether the caller speaks English, Spanish, French, or any other language.
🔢 Phone Number Collection by Voice
Voice transcription fragments digit sequences — numbers become partial digits across multiple utterances. Standard collection methods fail consistently.
🔌 GHL Native Integration Limitations
Vapi's built-in GHL integration returned OAuth errors and was unreliable. The native connection was unusable for production.
⏱ Tool Chaining Latency
When the AI called multiple tools back-to-back (create contact → check availability), it would stutter or fire them simultaneously, confusing the conversation.
(all test scenarios)
end-to-end
per new client
ready to deploy
-
🤖Production Voice Agent7 custom tools, 6 call intents, multilingual, deployed on Vapi with natural voice
-
💬AI Chat AssistantSame intelligence as the voice agent, deployed as a widget for websites, WhatsApp, Instagram, Facebook & SMS
-
⚡7 GHL WorkflowsFull automation from booking confirmation to Google review requests
-
🔍System Audit700+ line assessment of existing setup with root cause analysis of all failures
-
📖RUNBOOK.mdComplete operations manual: architecture, troubleshooting, API key rotation procedures
-
🚀White-Label OnboardingInteractive guide for deploying to new clients in under 2 hours
Need a Voice AI System That Actually Works?
I build production-grade voice AI agents integrated with GoHighLevel, Vapi, and your existing CRM. From prompt engineering to workflow automation — end-to-end delivery.
💬 Hire Me on Contra 📧 jaco@leongael.xyz