In this article, you'll learn how to set up the Appointment Booking skill for your Voice Agent, connect a Google or Outlook calendar, control availability and working hours, and troubleshoot common issues.
User level: Admin
What the Appointment Booking skill does
When a caller asks for an appointment, your Voice Agent checks your connected calendar for open slots, proposes available times, confirms the caller's choice, and creates the event, all during the call.
This skill is built for teams that book time with customers over the phone:
AI Receptionists scheduling consultations and callbacks
Service businesses booking in-person visits (car service, repairs, clinics)
Field service teams scheduling technician visits at the customer's location
Consultants and sales teams booking discovery or follow-up calls
Before you start
You need:
A CloudTalk account with Voice Agents enabled
A Google Calendar or Microsoft Outlook account with permission to grant third-party app access (see Troubleshooting if your company restricts this)
Admin access to edit the Voice Agent
Set up the skill
Open your Voice Agent and go to Skills.
Click Add next to Appointment Booking.
Connect your calendar. Choose Google Calendar or Microsoft Outlook and complete the OAuth consent flow. If your company already has a connected calendar integration, you can select it here instead of creating a new one.
Select a calendar. Choose the specific calendar the agent will read availability from and write bookings to. Each Voice Agent uses one calendar.
Configure the booking settings:
Event name: the title written to the calendar event (e.g. "Sales Meeting", "New Patient Consultation").
Meeting duration: 15, 30, or 60 minutes, or a custom length.
Meeting type: how the appointment happens (see below).
What to include in the calendar event: what the agent should extract from the conversation and write into the event description.
Click Save. Your agent can now book appointments.
Availability, working hours, and buffers
The agent only offers slots that are free in your connected calendar. Working hours, buffers between meetings, and blocked time are all controlled in your calendar provider, not in CloudTalk. This means your existing calendar setup is the single source of truth.
To control when the agent can book:
Google Calendar: set your working hours in Calendar settings. Follow Google's guide: Set your working hours & location. Note that working hours require a Google Workspace account. To block specific time, create events or out-of-office entries directly in the calendar.
Microsoft Outlook: set your work hours in Outlook settings. Follow Microsoft's guide: Set your work hours and location in Outlook. Work hours require a work or school Microsoft 365 account.
Any event already on the calendar is treated as busy, so the agent won't offer that slot.
Timezones: the agent uses the connected calendar's default timezone and states it when proposing times ("Tuesday at 2 PM Eastern"). Callers in other timezones should convert accordingly.
What gets written to the calendar
Each booking creates an event on your selected calendar:
Title: your configured event name
Time: the confirmed slot, with your configured duration
Description: caller's name, phone number, reason for the appointment, and any custom fields you configured
Location: your company address (in-person) or the caller's address (service visit)
SMS confirmation
When you enable the Appointment Booking skill, CloudTalk automatically adds a default SMS scenario: after the call ends, the caller receives a text with the appointment details. The message template is prefilled and fully editable. You can change the wording or delete the scenario entirely.
The scenario is only created if your account has an SMS-capable number.
Managing the calendar integration
Connected calendar accounts live under Account > Integrations. The integration detail page shows the connected account email, its status, and the list of Voice Agents using it.
A few things to know:
Multiple Google or Outlook accounts can be connected in one company, for example different team members connecting their own calendars.
The same integration can be used by multiple Voice Agents, but each agent books into exactly one calendar.
The specific calendar is chosen per agent in the skill settings, not on the integration page.
Troubleshooting
The calendar connection shows an error.
This happens when the OAuth token stops working, for example the connecting admin left the company, the account was disabled, or permissions were revoked. Your Voice Agents stay active, but the booking skill is paused and won't be offered to callers until the connection is restored. Open Account > Integrations, check which agents are affected, and click Reconnect.
I can't complete the OAuth consent.
Some companies restrict which third-party apps can access Google Workspace or Microsoft 365. If the consent screen shows an approval or permission error, ask your IT admin to allow CloudTalk:
Google Workspace: the admin manages third-party app access in the Google Admin console (Security > API controls > App access control).
Microsoft 365: the admin manages app consent in the Microsoft Entra admin center (Enterprise applications > Consent and permissions), or approves the request via admin consent workflow.
The agent offers times we're not available.
Check the working hours and blocked time in the connected calendar, since the agent mirrors exactly what the calendar shows as free. Also verify the correct calendar is selected in the skill settings.
Callers hear the wrong timezone.
The agent uses the calendar's default timezone. Update the timezone in your Google Calendar or Outlook settings if it doesn't match your business location.
We already built a calendar integration with custom Tools.
Existing custom tools keep working. We recommend migrating to the native skill for simpler setup and built-in error handling. Your Customer Success manager can help.
Need help or have a question? Just reach out through our Support portal — we’re here for you.



