Inbound AI Appointment Booking Agent: the thinking.
An inbound voice agent that takes the caller’s details, checks the calendar in real time, books the slot, and texts a confirmation.
The starting point.
What made this worth building.
Booking calls follow the same steps every time — who is calling, what they need, when they are free — yet they still wait for a person to pick up. Missed or delayed calls become lost appointments.
The direction I chose.
The approach taken.
A Retell voice agent backed by n8n workflows. It collects the caller’s name and the service they need, checks live availability in Google Calendar, offers open times, books the chosen slot, handles the case where the first choice is gone by offering alternatives, and triggers an SMS confirmation.
How the pieces connect.
Each stage exists because the one before it cannot be trusted on its own.
- 01Inbound call
- 02Caller and service details
- 03Live availability (Google Calendar)
- 04Book the slot · alternatives if taken
- 05SMS confirmation
The decisions behind it.
The constraints I set deliberately, and would defend.
- Read availability from the calendar on every call rather than from a cached list, so the agent never offers a slot that is already gone.
- Offer alternative slots when the first choice is taken, instead of ending the call.
- Keep booking and messaging in n8n workflows, so the agent only decides what to say and the workflow does the writing.
What has to hold true.
How I would know it works — and how I would know it does not.
- Verified end to end with live inbound test calls: details collected, availability checked, slot booked, confirmation sent.
- Not yet run against real customers or production traffic.
Where this stands today.
Stated plainly, with nothing implied.
This project is complete.
Designed and built the agent and its n8n workflows. Personal prototype, validated with live test calls only — not a client or production deployment.
Keep going