Use cases → Scheduling
Check multiple users’ calendar availability at once
Query many users’ free/busy calendars with a delegated service account to coordinate group scheduling without asking each person individually.
| Who it is for | Anyone building a scheduling tool or workflow that needs to find a common available slot across several users. |
|---|---|
| APIs | Calendar API |
| Typical scopes | calendar.readonly |
The problem
Manually checking each attendee’s calendar is slow and error-prone, especially across teams or departments. Automating the process avoids missed slots and endless back-and-forth, but requires careful handling of access and batching.
How it works
- Impersonate each user via domain-wide delegation with the service account.
- Use the Calendar API’s freeBusy.query endpoint to request availability for all relevant users in one call.
- Parse the response for overlapping free slots.
- Propose or automatically book a meeting in an available window, if desired.
What changes
Group availability is surfaced in seconds, making large-scale scheduling practical and reducing manual coordination.
Watch it explained
“google calendar API” — nghia doan on YouTube. Third-party video, included because it covers this ground well. We are not affiliated with the channel.
Questions people ask
Does this work for external guests?
No, only users within the Workspace domain that the service account is delegated to can be impersonated for free/busy queries. External calendars will not be included.
What calendar is checked for each user?
Only the user’s primary calendar is queried by default. Secondary calendars and shared calendars are excluded unless explicitly specified.
Want this built?
This is a pattern we run in production. We will set up the delegation and build this on top of it — $500 per hour, most of it working the same day.
Talk to us Or read the setup guideRelated use cases
Build a real picture of team availability
Read calendars across the domain to answer who is free, who is overloaded and where the week actually went.
Turn a finished meeting into follow-up automatically
Detect that a meeting happened, pull the notes, and draft the follow-up before anyone opens their laptop.
Turn a booking into a record everywhere it matters
When a meeting is booked, create the record, the folder and the confirmation in one pass.