OnCallClerk Logo
Scheduling integration

AI receptionist with Google Calendar integration

OnCallClerk talks to Google Calendar in real time during the call. The agent reads your actual availability, offers slots that are genuinely free, and writes the event before the caller hangs up — no message-taking, no callback queue, no double-bookings.

I.What it does

Six things this integration handles for you

Real-time free/busy lookup

Before the agent offers a slot, it queries the live free/busy view across every calendar you select — primary, shared resource, and team. Slots already booked in another system are never offered.

Direct event creation

When the caller agrees to a time, the agent writes the event with the correct title, description, location, and attendee email — synchronously, while still on the call. No queue, no delay, no later sync job.

Caller-aware invites

The caller's name, phone number, captured intent, and call summary are written into the event description. Optional invite emails go out to the customer immediately if they share an email address.

Multi-calendar routing

Route appointments to different calendars based on what the caller asked for — service vs. consultation, location A vs. B, technician vs. estimator — using simple if-then rules.

Buffers and business hours

Per-service-type duration, buffer time, and lead time. The agent will not offer 4:55pm if your day ends at 5pm, and won't offer same-day for services that need 24 hours of notice.

Two-way sync

If a customer reschedules in Google Calendar, the agent picks it up. If a slot is freed by a manual cancellation, the agent will offer it again. Calendar is the source of truth.

II.Anatomy of a booked call

What actually happens between “Thursday at 2pm works” and the calendar event

  1. 01

    Caller asks to book

    The agent recognizes a booking intent ("I'd like to come in for an estimate") and confirms which service type the caller wants.

  2. 02

    Agent fetches availability

    The agent calls the Google Calendar free/busy API across every calendar in scope, applying your buffers, business hours, and lead-time rules.

  3. 03

    Agent offers slots out loud

    "I have Thursday at 2pm or Friday at 10am — which works better?" The caller picks one, or asks for something else and the loop continues.

  4. 04

    Agent collects the rest

    Name, phone (already known from caller ID), email if available, service address, and any custom intake questions you defined.

  5. 05

    Agent writes the event

    A single calendar.events.insert call creates the event on the right calendar, with a structured description containing the call summary and lead data.

  6. 06

    Agent confirms verbally

    "You're booked for Thursday at 2pm. I've sent a confirmation to your email." Caller hangs up. The event is already in your calendar.

III.Setup

From OAuth to first booking in under ten minutes

01

Connect Google Calendar

In your dashboard → Integrations → Google Calendar, click Connect. Sign in with the Google account that owns the calendars and grant calendar.events scope.

02

Pick the calendars to read and write

Choose any calendars visible to that account — including shared team calendars. You can pick separate read targets (for availability) and write targets (where new bookings land).

03

Define your services

For each bookable thing (consultation, estimate, install, follow-up), set duration, buffer, lead time, and which calendar receives the booking. Add custom questions the agent should ask.

04

Test on a real call

Call your agent's number, ask to book an appointment, and watch the event appear in Google Calendar before you hang up. If anything is off, tweak from the dashboard — no redeploy.

Building this on top of our API instead? See the REST API reference and TypeScript SDK for OAuth and tool-call handlers.

V.FAQ

Common questions

Does the AI agent actually book appointments live, or just take a message?

+
Live. When the caller picks a time, OnCallClerk writes the Google Calendar event before the call ends and confirms the exact date and time back to the caller verbally. There is no human queue in between.

Can it handle multiple staff calendars?

+
Yes. You can connect any number of calendars per Google Workspace account. Use routing rules to send the right service type to the right person — for example, plumbing repairs to the on-call tech, while estimates go to the office calendar.

What if a slot gets booked elsewhere mid-call?

+
The agent re-checks availability immediately before writing the event. If something was booked in the intervening seconds, it apologizes, surfaces the next valid slot, and continues. No double-bookings.

Does it support Google Workspace shared and resource calendars?

+
Yes — any calendar visible to the connected account, including resource calendars (rooms, vehicles, equipment). Useful for clinics, salons, and trades that book a person and a resource together.

Can I use a non-Google calendar?

+
Yes. We also integrate with Outlook/Microsoft 365, Calendly, and any system that exposes a calendar API or webhook. The booking experience is identical from the caller's perspective.

How is this different from connecting Google Calendar through Zapier?

+
Zapier is asynchronous — it polls or triggers after the fact, so the caller cannot get a real confirmation while still on the line. OnCallClerk speaks to Google Calendar directly inside the conversation turn, so the caller hears "you're booked for Thursday at 2pm" with certainty.

Stop turning callers into voicemails

Sign up, connect Google Calendar, and have your AI agent booking real appointments by the end of the afternoon.