B6AIDocs

Connect Google Calendar to B6AI

Set up the Google Calendar integration end to end, from creating credentials in Google Calendar to verifying the live connection and using it in your bots.

8 min read

Overview

The Google Calendar integration lets bots check availability and book appointments during a conversation, perfect for demos, callbacks, consultations and service bookings.

Customers pick a time in chat and the event lands on your calendar, with an invite sent automatically.

What you will need
A Google Calendar account with administrator access, and a B6AI user with the Enterprise Admin role, integrations are configured once at the workspace level and shared by every bot.

What you can do with Google Calendar

Once connected, your bots and agents can use Google Calendar inside conversations and automations. Typical uses include:

  1. Check free/busy on a calendar before offering a slot.
  2. Create an event/booking and invite the customer.
  3. Reschedule or cancel an existing event.
  4. List upcoming available slots for the customer to choose from.

How the integration works

B6AI uses Google OAuth 2.0 and the Calendar API. You grant calendar access and choose the target calendar; B6AI reads availability and creates events server-side.

Prerequisites

Make sure all of the following are in place before you start. Each one is required, skipping any will cause the connection to fail later.

  1. A Google account or Workspace with the calendar you want to use.
  2. A Google Cloud project where you can enable the Calendar API and create OAuth credentials.
  3. Access to the target calendar.
  4. The Enterprise Admin role in B6AI.

Create or prepare your Google Calendar account

If your organization does not already use Google Calendar, create an account first. Existing customers can skip to the next step.

  1. In Google Cloud Console, enable the “Google Calendar API”.
  2. In Google Calendar → the calendar’s Settings → Integrate calendar, copy the Calendar ID (often the email, or an …@group.calendar.google.com value).

Generate your Google OAuth 2.0 credentials (Client ID & Secret)

B6AI authenticates with Google Calendar using your Google OAuth 2.0 credentials (Client ID & Secret). Follow these steps exactly, each field you copy here is entered into B6AI later.

  1. In Google Cloud Console, open APIs & Services → OAuth consent screen and add the calendar scopes below.
  2. Open Credentials → Create credentials → OAuth client ID → Web application.
  3. Add the B6AI redirect URL under Authorized redirect URIs.
  4. Create the client and copy the Client ID and Client secret.
text
https://app.b6ai.ai/integrations/google-calendar/callback
Keep secrets safe
Treat every token, key and secret like a password. Never commit them to source control, paste them into chat, or email them. B6AI stores them encrypted at rest, enter them only in the integration settings.

The B6AI redirect / callback URL

During credential setup, Google Calendar asks for an authorized redirect (callback) URL. This is where Google Calendar returns you after you approve access. Use the exact URL below, a mismatch is the most common cause of a failed connection.

text
https://app.b6ai.ai/integrations/google-calendar/callback
Why this matters
OAuth providers reject the sign-in if the redirect URL does not match one you registered, character for character (including https and any trailing path). Copy it exactly.

Required permissions & scopes

Grant only the scopes below. Each one maps to a specific B6AI capability; requesting fewer reduces risk and speeds up any review your Google Calendar administrator performs. The table explains exactly what each scope allows and why it is needed.

Scope / permissionWhat it allowsWhy B6AI needs it
calendar.eventsCreate, read and update eventsBook, reschedule and cancel appointments
calendar.readonlyRead calendars and free/busyCheck availability before offering a slot

Connect Google Calendar in B6AI

Now enter your credentials in B6AI. Signed in as an Enterprise Admin, open Settings → Integrations, find the Google Calendar card and click Connect, then complete the form. Every field is explained below.

  1. In B6AI, open Settings → Integrations → Google Calendar and click Connect.
  2. Paste the Client ID and Client secret and complete consent.
  3. Enter the Calendar ID, time zone and default slot length.
  4. Click Save.
FieldWhat it isExample value
Client IDOAuth client identifier…apps.googleusercontent.com
Client secretOAuth client secretGOCSPX-…
Calendar IDThe target calendarbookings@yourco.com
Time zoneTime zone used for slots and eventsAsia/Kolkata
Default slot lengthDefault appointment duration30m

Verify the connection

Confirm the integration is live before you rely on it in a bot.

  1. Confirm the Google Calendar card shows “Connected”.
  2. Run the test: it creates a test event about an hour ahead.
  3. Confirm the event appears on the calendar, then delete it.
Connected
A green “Connected” status plus a successful test confirms Google Calendar is ready to use in your bots, action nodes and automations.

Troubleshooting

If the connection fails or an action does not work, match the symptom below to its cause and fix.

Symptom / errorLikely causeHow to fix it
redirect_uri_mismatchCallback not registeredAdd the exact B6AI redirect URL
404 (calendar)Wrong Calendar IDCopy the Calendar ID from the calendar’s settings
403 insufficientA required scope is missingAdd the calendar.events scope and reconnect
Double-bookingAvailability wasn’t checked firstEnable the free/busy check before booking

Limitations & rate limits

Keep these constraints in mind so your bots behave predictably at scale.

  1. The Calendar API enforces per-user and per-project quotas.
  2. Time zones must be consistent between B6AI and the calendar.
  3. B6AI reads and writes only the calendars you grant access to.
Rate limits
The Calendar API applies per-user/per-project quotas; heavy booking volume may need a quota increase.

Security best practices

  1. Grant only the scopes and permissions listed above, never request more “just in case”.
  2. Rotate your Google OAuth 2.0 credentials (Client ID & Secret) on a regular schedule, and immediately if you suspect exposure.
  3. Restrict the Enterprise Admin role (which manages integrations) to a small, trusted group.
  4. Prefer a dedicated service account or bot user over a personal login, so access survives staff changes.
  5. Review the integration’s activity in the B6AI Activity Logs periodically for unexpected calls.
  6. Disconnect the integration the moment a credential leaks; then rotate it in Google Calendar before reconnecting.

Recommendations

  1. Test against a sandbox or non-production Google Calendar account before connecting live data.
  2. Document which bots and flows depend on this integration so changes are predictable.
  3. Set a recurring reminder to review scopes and rotate credentials.
  4. Enable only the capabilities you actually use today; you can widen scopes later.
Was this page helpful?