Google Calendar: booking clients with managers across multiple clubs

The AI agent finds free time in managers' calendars and books the client with whoever is available. The company connects one Google account, groups each club's managers into a separate “calendar” and assigns it to its bots. One calendar can be assigned to several bots — for example, the chat bot and the voice bot of the same club.

How it works

Company Google account ──┬── Vasily's calendar ──┐
                         ├── Peter's calendar   ├── "Fitness club 1" ──▶ club 1 chat bot
                         ├── Maria's calendar  ─┘                    └▶ club 1 voice bot
                         ├── Nikolai's calendar ─┐
                         └── Daniil's calendar  ─┴── "Fitness club 2" ──▶ club 2 chat bot

In a conversation the bot does two things:

  1. Finds free slots. A single request to Google returns the busy times of every manager in the bot's calendar. A slot is free if at least one of them is free at that time. The bot only offers the client times it has checked.
  2. Books. Once the client agrees, the bot checks availability again, picks a free manager and creates an event with a Google Meet link in that manager's own calendar. If several managers are free, bookings are distributed among them in turn.

The bot only tells the client the date and time. It does not share the meeting link — the manager sends it personally.

What the club needs

One company Google account

Any Google account the administrator has access to. Its own calendar is used only as a fallback until “calendars” are created. Good practice: a dedicated account such as booking@… rather than the director's personal email.

Managers share their calendars

Each manager, in their own Google Calendar: Settings → My calendars → Share with specific people → Add people, enters the company account's email and chooses the “Make changes to events” permission.

A manager's Google Calendar settings: the company account has the “Make changes to events” permission
The manager shares their calendar with the company account. It must be the “Make changes to events” permission. (Screenshot shows the Russian UI.)

The “See only free/busy” permission is not enough: the bot will see busy times but won't be able to create an event. Such a calendar is marked “read-only” in the dashboard and can't be added to a “calendar”.

Working hours are defined by events

The bot treats any time not taken by an event as free. Managers block off non-working hours, lunch, days off and vacations with recurring events in their own calendars. There is no separate schedule in the dashboard: the calendar is the source of truth.

Setup in the dashboard

Step 1. Connect Google

Settings → Integrations → Google Calendar → Connect. Sign in with the company account and grant calendar access. The card switches to “Connected” and a “Booking calendars” block appears below it.

Step 2. Create a “calendar” per club

Click “+ Add calendar”, give it a name and tick that club's managers. The list shows every calendar the managers have shared with the company account, plus the account's own calendar.

The calendar form in Sales Workshop: the name “Fitness club 2 · Mira” and ticked managers' calendars
The calendar form: a name and ticked managers. A greyed-out calendar is shared without write access.

Repeat for every club. The result looks like this:

The Google Calendar card in Sales Workshop settings with two calendars: “Fitness club 1 · Leninsky” and “Fitness club 2 · Mira”
Two club calendars, each with its own managers.

You can edit or delete a calendar at any time. A new club manager is added with a single tick in the existing calendar — no bot needs to be reconfigured.

Step 3. Assign the calendar to a bot

Open the bot and go to the Tools tab. Under the “Find free calendar slots” tool there is a Booking calendar selector.

The bot's Tools tab: the calendar “Fitness club 1 · Leninsky” is selected under free slot search
Choosing a calendar for a bot. The chat bot and the voice bot of the same club choose the same calendar.

Make the same choice on every bot of the club. The chat bot and the voice bot of one club select the same calendar and book with the same managers.

What happens if nothing is selected

SituationWhere the bot books
A calendar is selectedWith that calendar's managers
Nothing selected, the company has exactly one calendarInto that calendar
Nothing selected, several calendars or noneInto the company account's own calendar
The selected calendar was deletedAs in the two rows above

With several clubs, select the calendar explicitly on every bot.

What it looks like in a conversation

Left: a WhatsApp conversation where the bot offers slots and confirms the booking; right: the lead timeline and the event in the manager's Google Calendar
The client conversation, the lead timeline in the dashboard and the event in the manager's calendar.

On the left is the conversation with the client. On the right is the lead timeline in the dashboard: the calendar check, the booking line with the manager's name and the Meet link, and the event as the manager sees it in their Google Calendar. The bot puts the client's name, phone number and a link to the lead into the event description, so the manager can open the conversation in one click.

FAQ

Can a client be booked with a specific manager by name?
No. The bot picks any free manager in the calendar. If your club needs booking by name or by service, contact your Sales Workshop account manager.
Our clubs use different Google accounts. Will that work?
One account is connected per company. Managers of all clubs share their calendars with that account. A separate connection per club is not supported.
A manager has left.
Untick them in the club's calendar. Events already created stay in their Google Calendar.
A client messages on WhatsApp and also calls. Is that one booking?
These are two separate conversations, and each makes its own booking if the client accepts a slot twice. The bot checks availability before booking, so it will never double-book the same manager for the same time.
We reconnected Google. Are the calendars gone?
No. When you reconnect the same account, the calendars and their members are kept. If a different account is connected, managers need to share their calendars with it again.