Configure classic Calendar Interop

From February 28, 2018, the classic Calendar Interop tool will not be available. You can use the new Calendar Interop tool instead. Learn about the new Calendar Interop tool.

Classic Calendar Interop provides two services.

  1. Google Calendar users can view the free/busy calendar status of Exchange users within Google Calendar
  2. Exchange users can view the free/busy calendar status of Google Calendar users within Microsoft® Outlook®

The following instructions will enable both services.

Exchange server setup

1. Create an Exchange public folder database
If you've already created an Exchange public folder database, you can skip this step. The public folder database is not created by default in Exchange versions 2007 and higher.

To create the public folder database, please refer to Microsoft's How to create a new public folder database article.

2. Create an Exchange role account with a mailbox

You need to create or use an existing Exchange role account that has both an Exchange mailbox and public folder write access. Google will use this account to authenticate to your Exchange server and write Google calendar f/b data to your Exchange public folder database.

You can grant a local service account public folder write access within the Exchange Management Shell by using the following command:

Add-PublicFolderClientPermission -Identity <Public Folder Identity> -User <Domain\user> -AccessRights Owner

Here's an example of what that should look like:

Add-PublicFolderClientPermission -Identity "\NON_IPM_SUBTREE\SCHEDULE+ FREE BUSY\EX:/o=First Organization/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)" -User ALTOSTRAT\gcal_svc -AccessRights Owner

You can read Microsoft's full list of instructions in its Add-PublicFolderClientPermission article.

Tip: If you are unsure of the identity of the public folder store, use the following command to get the complete identity details:

Get-PublicFolder -Identity "\NON_IPM_SUBTREE\SCHEDULE+ FREE BUSY" -GetChildren | fl

Note: The Exchange Information Store caches permission data. Please wait for a few hours for the permissions to take effect.

3. Configure the Exchange availability address space for your G Suite alias domain
Every G Suite domain is automatically given a test alias domain that you can use in this step. You can view your test alias domain by signing in to your Admin console and clicking More controls > Domains. You can also use any alias domain you may have added yourself in the past.

If your primary domain name in Exchange and G Suite are different, you can use your G Suite primary domain name in this step, as opposed to a domain alias. If, however, your primary domain names in Exchange and G Suite are the same, you'll need to use a G Suite domain alias.

Next, add your G Suite domain alias as an availability address space in Exchange and assign it the public folder f/b access method using the following command in the Exchange Management Shell:

Add-AvailabilityAddressSpace -ForestName <Google Alias Domain> -AccessMethod PublicFolder

Here's an example of what that should look like:

Add-AvailabilityAddressSpace -ForestName -AccessMethod PublicFolder

What is an availability address space? You can read Microsoft's Availability Address Space article for more information.

4. Create mail-enabled contacts in Exchange for your G Suite users

Create a mail-enabled contact (not a mail-enabled user) in Exchange for each G Suite user whose free/busy data you want to sync to Exchange. You must add a valid SMTP email address for each mail-enabled contact you create.

If you use the same primary domain name for both G Suite and Exchange, you'll need to add an email address within your G Suite domain alias to each of your mail-enabled contacts.

Why use an alias domain name?

Exchange determines its f/b access method based on the availability address space (which corresponds to the domain name) of the user it's querying. The interop service stores Google users' f/b data in your Exchange public folder database, but the default f/b access method for your primary domain in Exchange does not query the public folder. As a result, Exchange will not find a Google user's f/b data if the user's mail-enabled contact email address is within your Exchange primary domain (and, thus, your default availability address space). Creating a second availability address space using your G Suite domain alias and assigning it the public folder f/b access method solves this problem.

You can read Microsoft's help center articles for more information about creating mail-enabled contacts.

Once you've finished creating a mail-enabled contact for each Google user whose f/b data you'd like to sync, you'll need to make note of each contact's legacy distinguished name (LegacyExchangeDN) information, which you'll use in step #7.

G Suite setup

5. Configure classic Calendar Interop settings
  1. Click G Suite > Calendar > Calendar interop management.
    Where is it?
  2. In the Exchange Web Services url field, enter the Exchange Web Services URL for the Exchange Web Services server associated with your Exchange server. For example:

  3. In the Admin account field, enter the Exchange server role account User Principal Name (UPN). Enter the username in format (not in domain\username or username format). Click Enter password and enter the password for the role account.

  4. Check the Enable Server Version of Free Busy Sync box.

  5. Click Save changes.

6. Add interop users
  1. Click the Users tab to enter the list of G Suite users whose f/b data you'd like to sync to Exchange.

  2. Enter a list of Exchange mail-enabled contacts (created in step # 4) for G Suite users, along with their legacyExchangeDN attribute value in CSV format. Enter one email address per line, and use the full email address, including the domain name, such as

    Here's an example:,GOOGLE, /o=First Organization/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=jsmith,GOOGLE, /o=First Organization/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=bjones,GOOGLE,"/o=First Organization/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=Michael, Wise"

    It might take up to two hours for the sync to happen for the added users.
Why use the legacyExchangeDN? The interop service syncs your Google users' f/b data to your Exchange public folder database. The public folder is able to organize the f/b data by user because of the legacyExchangeDN value. As a result, when an Exchange user looks up the f/b status of a Google user, Exchange is able to easily find the right Google user's data.

Was this article helpful?
How can we improve it?