Google's free/busy endpoint returns when you are busy and never what you are doing.
Google Calendar publishes two things a phone agent needs: Events: insert to create a booking, and Freebusy: query to find open time across several calendars at once. The second one is more interesting than it looks, because of what it leaves out: Freebusy returns intervals, not events, so an agent built on it knows you are busy at two o'clock and has no way to learn who with.
Who books on Google Calendar, and why does it end up as the system of record?
Google Calendar is the default calendar for any business running on Google Workspace, which in practice means a very large share of small professional and service businesses that never adopted an industry-specific booking platform at all. For them the calendar is not a component of the booking system; it is the booking system.
This is the most common situation in the whole integrations list and the least discussed, because there is no vendor with an incentive to write about it. A two-person law office, an independent vet clinic, a consultancy, a specialist trade: the appointments live in Google Calendar, the rules live in someone's head, and it works fine until the phone rings while everyone is busy.
It also means the calendar contains everything, not just appointments. Personal commitments, internal meetings, a dentist appointment, a school pickup. Any integration that reads it is reading a lot more than a booking schedule, which is the reason the free/busy distinction below is worth understanding rather than skipping.
What gap does Google Calendar leave?
It has no front door. Google Calendar holds the schedule and provides nothing that answers a phone, captures a request, or tells a caller what is open; every one of those steps requires a person to look at the screen.
Businesses in this position have usually already tried the obvious fixes and abandoned them. A public booking link exposes availability they wanted to keep judgment over. An answering service produces messages with no useful detail. Voicemail works exactly as well as voicemail has ever worked.
So the phone stays manual, and the cost is invisible: nobody counts the calls that reached voicemail, and the business concludes it does not have a phone problem because nothing is obviously broken.
None of this is a criticism of Google Calendar. It is a calendar. It has never claimed to be anything else, which is more than can be said for some of the software on this page.
What does the Google Calendar API actually allow?
Creating events, reading and updating them, and querying free/busy across multiple calendars in a single call. All are named methods in Google's own API reference. The free/busy query is deliberately narrow: it returns busy intervals and nothing about the events inside them.
Verified against the vendor's own API reference
| Capability | In Google Calendar’s API | Endpoint |
|---|---|---|
| Create an event | Yes | Events: insert |
| Create from natural text | Yes | Events: quickAdd |
| Read busy time across several calendars | Yes | Freebusy: query |
| Read event detail | Yes, if granted | Events: list / get |
| Update or move an event | Yes | Events: patch / update / move |
| Subscribe to changes | Yes | Events: watch |
| Learn what a busy block is about, from Freebusy alone | Not returned | - |
Read from Google Calendar API v3 reference on August 12, 2026. APIs change; this is what the index listed that day.
What that means for your build
The last two rows are the scope decision, and it is yours rather than ours. An agent built on Freebusy: query alone can find open time and book into it while remaining structurally incapable of reading a single event title; that is the default we recommend, and it is genuinely a technical guarantee rather than a promise about our conduct. Granting Events: list as well lets the agent do more, like recognising an existing client's upcoming appointment when they call to move it. Both are legitimate. The difference is worth deciding deliberately rather than by default.
What it will not do
- Read event details it has not been granted. With free/busy scope only, event titles, attendees and locations are not returned by the API at all.
- Know how long your appointments should be. A calendar stores durations, it does not encode the rules behind them, so those come from your configuration.
- Distinguish a personal commitment from a work one. To the free/busy endpoint, both are simply busy, which is usually exactly what you want.
- Resolve a double booking made outside the calendar. If it is not in Google Calendar, it does not exist to the agent.
What does this sound like for a business with no booking software?
Ordinary, which is the point. The caller cannot tell that the business has no booking platform, because the constraint was never visible to them in the first place.
An example call: composite, not a recording
A client calls a two-person accounting practice in the week before a filing deadline, which is the week nobody can pick up the phone.
- Caller
Hi - I need to come in and go through my return before the deadline. Is there anything left this week?
- Agent
Let me look at both partners' availability. There's Wednesday at 11:00 with Sarah, or Thursday at 3:30 - Thursday is the longer slot if you've got a lot to go through.
One Freebusy: query covers both calendars at once. The agent sees the gaps and nothing about what fills them. - Caller
Thursday. It's the rental property that's complicated it this year.
- Agent
Noted - I've put that on the appointment so Sarah can pull what she needs beforehand. Bring the rental statements and anything on repairs versus improvements.
Events: insert creates the appointment with the context attached, which is what makes the meeting productive rather than exploratory. - Caller
Great. And is Sarah around Monday if I have questions before?
- Agent
She's got time Monday afternoon, though I can't tell you what she's doing with the rest of the day - I only see free and busy. Want me to note that you might call?
Answering honestly from the limits of what it can see. The agent does not have the detail and says so rather than guessing.
An appointment booked across two partners' calendars with the complicating detail captured, during the week the practice is least able to answer its phone.
An agent built on Google's free/busy endpoint cannot read your calendar even if you ask it to - the endpoint returns intervals, not events, so the privacy is a property of the API rather than a promise from a vendor.
If your calendar holds personal commitments alongside client work, the free/busy-only build is the one to ask about. It is the default here for a reason.
Start free pilotQuestions Google Calendar businesses ask
Yes. Events: insert creates an event and Freebusy: query finds open time across multiple calendars in one call; both are named methods in Google's own API reference, verified August 12, 2026. For a business whose calendar is its booking system, this is usually the whole integration: read the gaps, offer real times, write the appointment with the caller's context attached.
Not if it is built on free/busy scope, and that is the default we recommend. Freebusy: query returns busy intervals (start and end times) with no event titles, attendees or locations. The agent knows you are unavailable from 2:00 to 3:00 and has no mechanism to learn why. That is a property of the API rather than a policy we are asking you to trust us on, which is a meaningfully stronger guarantee.
When you want the agent to recognise existing appointments: a client calling to move Thursday, for instance, which needs the agent to see that Thursday's appointment is theirs. That requires Events: list rather than free/busy alone. It is a reasonable trade and plenty of businesses make it; the point is that it should be a decision you make, not a scope quietly requested during setup because it was easier.
It is one of the most straightforward setups in this whole list, and it is far more common than the industry's marketing suggests. There is no booking platform to negotiate with, no partner programme, no plan tier gating the API. The rules that live in your head (how long each appointment type runs, how far ahead you will book, who takes which work) get written down during onboarding, which several businesses have told us was the more useful half of the exercise.
Hear it book across two calendars
The free pilot is about fourteen days to a working line with no call limit. Ask it what you are doing on Tuesday afternoon and listen to it decline; it genuinely does not know.
Start free pilotLast updated .