Skip to main content

Limit Google Calendar Sync to Specific Mailboxes

This advanced configuration gives you the flexibility of Domain-Wide Delegated Access (DWDA), while limiting access to only the users and rooms you choose.

Liza avatar
Written by Liza
Updated this week

Prerequisites

To complete this setup, you'll need:

  • Global Admin access in Kadence

  • Admin access to Google Workspace (or a Google Admin to assist)

We would also recommend the following Google article for further assistance.

Step

Global Admin

Google Admin

Create project, service account, and app

Set DWDA access, share calendars

Configure integration in Kadence

Add rooms to Kadence


Google Admin Setup

Google Cloud Project

1. Create a Google Cloud Project

  • Click the project picker → New Project

    Create a Google Cloud Project

  • Name and create the project

    New Google Cloud Project

  • Select the new project from the picker

2. Enable Required APIs

In APIs & Services → Library, enable:

  • Google Calendar API (required)

  • Google Workspace Marketplace SDK (optional, if limiting user access)

Enable Google Calendar API

3. Create a Service Account

See this Google guide for more information.

  • Go to APIs & Services → Credentials

    Add Credentials

  • Click Manage service accounts → Create Service Account

    Manage Service Accounts

  • Name the account and click Done

    Create a Service Account

  • Go to the service account → Keys → Add Key → JSON

    Create a new JSON Key

  • Download and store the JSON key securely

    Download the new JSON key


4. Enable Domain-Wide Delegated Access (DWDA)

See this Google guide for more information.

  • Navigate to Security → API Controls → Manage Domain-Wide Delegation

  • Click Add new

  • Use:

    • Client ID: your service account’s unique ID

    • OAuth scope:

      https://www.googleapis.com/auth/calendar
  • Click Authorize


Share Resource Calendars

5. Get Resource Calendar Email

  • In Google Admin: Directory → Buildings and Resources → Manage Resources

  • Select the room → copy the Resource email address

6. Share Access with Service Account

  • Open Google Calendar

  • Add the room’s calendar

  • Go to Calendar settings → Share with specific people

  • Add your service account email

  • Set access to See all event details → Click Send


Create a Marketplace App (Optional)

Use this step to scope DWDA access to only specific groups or users. See this Google guide for more information.

7. Set Up the App

  • In Google Cloud, Go to OAuth Consent Screen → Select Internal

  • Name the app (e.g. Kadence Room Integration)

  • Navigate to Google Workspace Marketplace SDK → Manage

  • In App Configuration, set:

    • Visibility: Private

    • Install: Admin only

    • OAuth Scope:

      https://www.googleapis.com/auth/calendar.events

8. Distribute App to Selected Users

  • Go to Store Listing → View in Marketplace → Admin Install

  • Choose "Everyone" or target specific groups or OUs


Global Admin Setup in Kadence

Configure the Integration

  • Log into Kadence as a Global Admin

  • Navigate to Settings → Integrations → Add calendar integration

  • Click Connect under Google Calendar

  • In the setup form:

    • Enable Use own service account

    • Upload the JSON key

    • (Optional) Toggle Use mailbox as service account

    • Enter service account email

  • Click Finish Setup

Refer to the full Google Calendar Integration Guide if needed.


Add Rooms to Kadence

  • Go to Buildings → Select a building → Floor → Add → Room

  • Fill in room details

  • Paste the resource email under Calendar

  • Click Add

Refer to the full Resource Management Guide if needed.


FAQs

Why limit calendar access?

To ensure Kadence can only view and book calendars you explicitly share, ideal for privacy/compliance.

Is the Marketplace App required?

Only if you want to limit DWDA to selected users or groups.

Why use DWDA at all?

Without DWDA, Google prevents Kadence from creating bookings with attendees.

Lost your JSON key?

Generate a new one in Google Cloud Console → Service Accounts → Keys.

Can I scope this to one team?

Yes – via Marketplace App settings.

"Use mailbox as service account" ON vs OFF?

  • ON: Books from the service account's mailbox if the user can't be booked directly

  • OFF: Fails if it can't book on the user’s behalf

How to revoke access?

  • Remove the app from Google Admin

  • Remove DWDA under Security → API Controls


Need Help?

For floorplan requests or questions, contact:
📩 [email protected]

For support with anything else, reach out to:
📩 [email protected]

For more helpful articles see:
📚 Kadence Help Center

Did this answer your question?