AI AUTOMATION / VOICE
AI VOICE
RECEPTIONIST
Someone calls. An agent answers, figures out what they need, checks the calendar, moves bookings around, writes down who called. All mid-conversation.
01 / WORKFLOW
THE CALL IS ONLY THE START.

ElevenLabs holds the conversation. The moment the agent needs to do something real, it calls an n8n webhook. n8n does the work, sends the result back, and the talking continues. Neither side could do this alone.
- PHONE CALL
- ELEVENLABS
- N8N WEBHOOK
- GOOGLE SERVICES
- RESULT
- ELEVENLABS
02 / HOW THE CALL WORKS
A CONVERSATION WITH TOOLS BEHIND IT.
- A caller dials the business number. Twilio picks up the connection.
- ElevenLabs takes the conversation from there. Voice, listening, the works.
- The agent works out what the caller wants, the way a receptionist would.
- Need a fact or an action? It fires an n8n webhook tool with the details.
- n8n runs the operation and hands back structured data. The agent keeps talking, now with the answer.
Voice in, tool call out, workflow does the work, result comes back as speech. That loop is the whole system.
03 / APPOINTMENTS
IT CAN ACTUALLY CHANGE THE CALENDAR.
Four operations. Check, book, move, cancel. All against a real Google Calendar, all inside the call.
CHECK
The agent sends a time range. n8n reads the calendar and works out what is free, honoring business hours, the timezone, existing events, and a minimum gap between bookings.
BOOK
Creates the event with start, end, caller name and email, plus a short summary of what the appointment is about.
MOVE
Takes the event ID and new times, updates the event. Same booking, new slot.
CANCEL
Takes the event ID, deletes the event. Done.
TEMPLATE VALUES / 09:00 TO 17:00, 60 MINUTE MINIMUM GAP, AMERICA/CHICAGO. CONFIG, NOT PRODUCTION RULES. CHANGE THEM.
04 / CLIENT DATA
THE CALL BECOMES A RECORD.
A Google Sheet plays client database. Thin, but enough for the job.
FIND
Caller says they have been here before and gives an email. The workflow looks it up. Known caller, known history.
ADD
New caller. First name, last name, email, phone, balance. One appended row and they exist now.
This is not a CRM and does not pretend to be one. In this template, Sheets is the record. A production build could swap in a real CRM later without touching the tool pattern at all.
05 / POST-CALL
THE HANGUP IS NOT THE END.
After the call, ElevenLabs ships the analysis to n8n. The workflow pulls the caller email, the phone number, and the transcript summary, then appends it all to the Calls sheet. Every conversation leaves a paper trail on its own.
- CALL
- TRANSCRIPT
- SUMMARY
- N8N
- CALL LOG
FIELD MAP / ELEVENLABS ANALYSIS.TRANSCRIPT_SUMMARY GOES INTO THE CALL SUMMARY COLUMN.
06 / ARCHITECTURE
THREE SYSTEMS. ONE CONVERSATION.
Phone company, voice AI, workflow engine. Each does the part it is good at and stays out of the rest.
- TWILIO
- ELEVENLABS
- N8N
- CALENDAR / CLIENTS / CALL LOG
- ELEVENLABS
- CALLER
- TWILIO
The phone number and the inbound connection. Rings, answers, passes it on.
- ELEVENLABS
The voice, the listening, the instructions, the tool calls. Everything the caller hears.
- N8N
The hands. Webhooks come in, operations happen, structured results go back.
- GOOGLE CALENDAR
The schedule. Read and written, never guessed.
- GOOGLE SHEETS
Client rows and call summaries. The memory that outlives the call.
07 / REQUIREMENTS
WHAT IT TAKES TO RUN.
Five pieces, each doing exactly one job. The repo's setup is six steps and honest about all of them.
| Service | Credential / Setup | Purpose |
|---|---|---|
| ElevenLabs | Account / API access | Voice agent + tools |
| Twilio | Account + phone number | Inbound calls |
| Google Calendar | Calendar OAuth2 | Availability + appointments |
| Google Sheets | Sheets OAuth2 | Client records + call logs |
| n8n | Running instance | Webhooks + orchestration |
ELEVENLABS SETUP
Build the agent: language, greeting, instructions, personality, which LLM, the native end-call tool. Then one custom webhook tool per action. That mapping is the whole integration.
- checkAvailabilityAVAILABILITY WEBHOOK
- bookAppointmentBOOKING WEBHOOK
- updateAppointmentUPDATE WEBHOOK
- cancelAppointmentCANCELLATION WEBHOOK
- getClientLOOKUP WEBHOOK
- addClientCREATION WEBHOOK
PATTERN, NOT CONTRACT / NAMES SHOW THE SHAPE. YOUR ENDPOINTS, YOUR CALL.
TWILIO SETUP
Get a number, bring it into ElevenLabs, attach it to the agent, set the inbound connection. Four moves.
GOOGLE CALENDAR SETUP
The connected account needs access to the working calendar. Lookup, create, update, delete, all through OAuth. The template ships a demo calendar ID. Replace it with yours or nothing works.
GOOGLE SHEETS SETUP
One spreadsheet, two tabs. Clients holds first name, last name, email, phone, balance. Calls holds email, phone, call summary. Lookup keys off email. Same deal as the calendar: demo ID in, your ID required.
- Import the JSON into n8n, connect Calendar + Sheets OAuth.
- Add ElevenLabs + Twilio credentials, swap in your calendar and sheet IDs.
- Map the n8n webhook URLs into the ElevenLabs tools, test a call.
08 / WHY IT WORKS
THE VOICE ASKS. THE WORKFLOW ACTS.
The model never touches the calendar. It asks for things. n8n does them. That gap is the entire safety story.
- VOICEunderstand the caller
- TOOLSperform actions
- WORKFLOWenforce logic
- DATAprovide the answer
Every tool call is a round trip, and round trips cost time on a live call. Keep the tools small and the instructions plain. The tutorial mentions a couple of extra seconds around tool use. Treat that as a warning, not a measurement.
09 / EXAMPLES
WHAT IT SOUNDS LIKE.
BOOK
CALLER“Can I book something tomorrow afternoon?”
AGENT“Sure. Let me check what's available.” Checks the calendar. “I have 2 PM open. Book it?”
MOVE
CALLER“Can we move my appointment to Friday?”
Event ID in, new times on, calendar updated, confirmed out loud.
CANCEL
CALLER“I need to cancel my appointment.”
Event ID in, event deleted, confirmed out loud.
RETURNING CLIENT
CALLER“I've worked with you before. My email is…”
Sheet lookup by email. Known caller from here on.
09 / WORK WITH ZOLINE
HAVE A PROCESS THAT SHOULD ANSWER ITSELF?
Calls, scheduling, intake, follow-ups. The AI is the easy half. The tools behind it are the other half.