Set up Calendar Interop

(Optional) Allow Calendar users to book Exchange resources

You can let your Calendar users book Microsoft Exchange calendar resources, such as meeting rooms, when they schedule a meeting.

Set up Exchange resource bookings

Open all   |   Close all

Step 1: Create additional role accounts on Exchange

When a G Suite user adds a resource to a Calendar event, it checks the availability of multiple Exchange resources in order to provide suggestions. This results in significantly increased traffic to Exchange, which might trigger throttling on your main Exchange role account.

To remedy this, you need to set up 10 additional mailbox role accounts. These accounts are in addition to the main role account you created in Allow Calendar users to see Exchange availability data. Google uses these additional role accounts for load balancing when checking the availability of Exchange calendar resources.

Set up the role accounts

  1. Verify the main role account you created in Allow Calendar users to see Exchange availability data is a mailbox account and not a mail user account.
  2. Set up the 10 additional mailbox role accounts on Exchange. You should reuse the password from the main role account you created in Allow Calendar users to see Exchange availability data.

    For details on creating additional role accounts with mailboxes, consult the following Microsoft instructions:

Example: Create the role accounts using Exchange PowerShell on an on-premises Exchange server

$password = (ConvertTo-SecureString -String 'password' -AsPlainText -Force)
for ($i=1; $i -le 10; $i++) { New-Mailbox -name "Calendar Interop Load Balancing Account $i" -userprincipalname "calendar_interop_load_balancing_account$i@your_domain" -password
$password }

Example: Create the role accounts using Exchange PowerShell on Microsoft Office 365 Exchange Online

$password = (ConvertTo-SecureString -String 'password' -AsPlainText -Force)
for ($i=1; $i -le 10; $i++) { New-Mailbox -name "Calendar Interop Load Balancing Account $i" -MicrosoftOnlineServicesID "calendar_interop_load_balancing_account$i@your_domain" -password
$password }

Make sure to replace the password and your_domain variables with the appropriate values.

Step 2: Make Exchange calendar resources available

To make Exchange calendar resources available to Google Calendar users, run the Set-CalendarProcessing command.

Example: To make a specific calendar resource available using Exchange PowerShell

Set-CalendarProcessing -Identity "Room 221" -ProcessExternalMeetingMessages $true

Make sure to replace the Room 221 variable with the appropriate value.

Example: To make multiple calendar resources available using Exchange PowerShell

$Members = Get-Mailbox -Filter {(RecipientTypeDetails -eq "RoomMailbox")}
foreach ($r in $Members) { $r | Set-CalendarProcessing -ProcessExternalMeetingMessages $true}

For details on the Set-CalendarProcessing command, consult the Microsoft documentation.

Step 3: Create a filter for G Suite users

Create a filter that allows booking requests only from your G Suite users. To do this, in Exchange set up a mail flow rule using the following parameters:

  • Apply this rule if and then The recipient is, then enter all the resources that allow booking requests from Calendar (for example,
  • Do the following and then Block the message, then select Delete the message without notifying anyone.
  • Except if and then The sender's domain is, then enter your G Suite domain.

Important: Add your Exchange domains to the list of exceptions to the blocking rule to make sure you don't block email coming from your Exchange users.

For details on creating mail flow rules, consult the Microsoft documentation.

Step 4: Create a room mailbox distribution group

Create a room mailbox distribution group for Exchange resources. The distribution group contains the list of Exchange calendar resources available to G Suite users.


  • You can have only one distribution group in your Calendar Interop setup.
  • You must name the distribution group Calendar Interop Resources.
  • An Exchange resource you add to the group cannot have the same name as a Google Calendar resource.

Example: Add all rooms to the distribution group using Exchange PowerShell

$Members = Get-Mailbox -Filter {(RecipientTypeDetails -eq "RoomMailbox")} | Select -ExpandProperty Alias

New-DistributionGroup -Name "Calendar Interop Resources" -RoomList -Members $Members

To make sure the correct rooms are added to the newly created group, run this command:

Get-DistributionGroupMember "Calendar Interop Resources"

For details on setting up a room mailboxes, consult the Microsoft documentation.

Step 5: Refresh the Exchange resources
  1. Open Calendar Interop Tools.
  2. Next to Resource list tester, click Refresh.

    You should see the list of resources you added in step 2. It can take up to 30 minutes for the resources to appear.

  3. Go back to Calendar Interop Tools.
  4. Next to Resource availability lookup tester, enter the email address of an Exchange calendar resource.
  5. Click Perform test.

    You should see the test executed successfully 10 times, once for each additional mailbox role account.

Step 6: Turn on Exchange resource booking for your domain
  1. Sign in to your Google Admin console.

    Sign in using your administrator account (does not end in

    Important: Make sure you sign in to your primary domain.

  2. From the Admin console Home page, go to Appsand thenG Suiteand thenCalendar.
  3. Click Calendar Interop management.
  4. Check the Enable Interoperability for Calendar box.
  5. Check the Room booking box to schedule Exchange rooms from Calendar.
  6. Click Save.
Step 7: Verify the Exchange resource booking setup
  1. Sign in to a G Suite account.
  2. In Google Calendar, create an event.
  3. On the right, click Rooms.

    The Exchange resources you added appear as a suggested room.

  4. Click the rooms or resources you want to add to the event and then Save.

    For more information, see Add a room to an event.

  5. If prompted, select Invite external guests.

    A booking email is sent to the Exchange resource and the resource is booked.

  6. If the resource isn't booked, make sure the resource is available. For details, see step 2 for details.
If you use Google Cloud Directory Sync (GCDS)

If you're syncing Exchange resources to G Suite with GCDS, you need to ensure G Suite users don't see the same resource twice (once from each system) in order to avoid duplicates.

Option 1: Using Exchange resources through Calendar Interop

Have users access the Exchange resources through Calendar Interop instead of G Suite. In this case, we suggest you delete the resources from G Suite and set up Calendar Interop room booking as usual.

The contents of resource calendars on Google will be lost.

Learn more about calendar resource syncing.

Option 2: Using a mix of G Suite and Exchange resources

Use resources from both G Suite and Exchange. In this case, and to avoid resources showing as duplicates, make sure:

Google, Google Workspace, and related marks and logos are trademarks of Google LLC. All other company and product names are trademarks of the companies with which they are associated.
Was this helpful?
How can we improve it?

Need more help?

Sign in for additional support options to quickly solve your issue