Office 365 and Hosted Exchange Calendar Integration with Zoapi using Microsoft Graph API


When an Office365 or Exchange Calendar is integrated with Zoapi Hub, the room’s display shows the upcoming meeting scheduled, you can view room calendar and get reminders for scheduled meetings. You can also configure your Room Scheduler tablet for the room. This would require IT admin to provide valid authorization for Zoapi to access room calendars. This document explains the detailed procedure to integrate your Exchange calendar with Zoapi Hub and Room scheduler app.

Before you can add a calendar service, an Office365/Exchange administrator must do the following:

  • Have a user account with enough privileges to manage Office365/Exchange calendars. You can optionally create a dedicated user account for this purpose with full privileges.
  • Create or locate a calendar resource to be used by the Zoapi Hub/Zoapi Room Scheduler
  • Enable the assigned user account to have full delegate access to each calendar resource
  • Enable the assigned user account to edit each calendar resource

After the Office365/Exchange administrator completes these steps, you use the credentials of the assigned user to provide authorization to the Zoapi Hub in your Zoapi dashboard account to use the calendar service.


  • An admin account on Office365/Exchange
  • The ability to create and manage calendars for rooms
  • The ability to create a new Office365/Exchange user

Note: Your network, including firewalls and proxies, must allow traffic to 


Create a Service account (Optional – If you decide to use a dedicated account)

  • Login to ECP.
  • Go to “mailboxes” under “recipients” Click “+”
  • Select “User mailbox”
  • Create an email address, for example,
  • This same user email will be used by all of your Zoapi hub
  • Make a note of the “User login name” and “password”

Create or Obtain the Room and Room Email 

  • Log into your local ECP as an admin
  • Go to “Resources” > “Recipients”
  • Click on the plus (+) sign if you need to add a room
  • Make a note of the display names of your rooms and email addresses

Exchange admin center

Delegate Rooms to the created Service Account   

  • Log into ECPas an admin
  • Go to “Resources” > “Recipients”
  • Double click the first room
  • Click the “mailbox delegation”

Exchange mailbox delegation

  • Scroll down to “Full Access” and click on the plus “(+)” sign
  • Select the assigned email and click “add->”

Exchange calendar access grant

Share the resource with the created Service Account 

  • Login with assigned user email (i.e.
  • Open the user’s “Calendar” and from the top navigation go to the user’s dropdown menu and click on “Open another mailbox…”

Exchange open mailbox

  • This will open a Microsoft pop-up dialog window. Input the resource you would like to share

Exchange open another mailbox

  • This will open the resource mailbox. Click on the calendar in the bottom left-hand corner of your navigation.
  • Right-click under “Your Calendars” and click on “Share calendar”

Exchange change calendar permission

  • This will open Microsoft’s Share calendar dialog window. Enter the assigned users Email, and share “Delegate” access. Click “Send” in the top left corner of this dialog window.

Exchange share this calendar

Exchange calendar delegate

  • Log into the assigned user’s Email and check your inbox. Click on the invitation from the resource and “Accept” the invitation.

Exchange accept calendar permission

  • Accepting the invite will open the calendar tab. You should see the resource calendar listed on the left side of the page under Other Calendars. Ensure this calendar is accounted for.

Exchange calendar resource

If the room is not displayed under “Other Calendar” section

  • Click on the “+” icon present next to “other calendar”
  • Enter the room mailbox
  • And click on open

Exchange open other calendar            Exchange open calendar


Requirements for the REST API to work in Office365/Exchange 2016 hybrid deployments

Microsoft Graph provides openness (open standards support like JSON, OAuth and OData, connecting from most popular platforms) and flexibility (granular, tightly scoped permissions to access user data). If your organization wants to enable Microsoft Graph API, the following deployment requirements must be met:

  • Mailbox requirements
  • All on-premises mailboxes that will use the REST APIs must be located on databases located on Office365/Exchange 2016 CU3 servers.
  • Infrastructure requirements
  • All Office365/Exchange 2016 servers must be upgraded to CU3 or later.
  • On-premises Active Directory must synchronize with Azure Active Directory.
  • Any Office365/Exchange 2013 servers coexisting in the same load-balanced array with Office365/Exchange 2016 servers must be removed from the array.
  • Networking requirements
  • From a DNS perspective, the Autodiscover namespace and on-premises client namespace must have Internet DNS records.
  • If you have a firewall or application gateway that inspects and restricts access, update the appropriate settings to allow discovery and access.

IT administrators can find more information in the following resources

Integrating Calendar with Zoapi Hub

  • You can integrate your Zoapi Hubs to your room calendar. With this, you can view all the meetings booked in the room, view meeting description, launch meeting invite links with ‘Single Click Join’. Zoapi also provides onDisplay reminders to remind you about the meeting timings.
  • Login to your Zoapi Dashboard account at
  • Use the ‘Integration tab’ to integrate meeting room to your preferred calendars. Here you can integrate your Nexudus/Google/Office365 or Exchange account with zoapi by providing right permission. You can see the individual instruction by clicking the add button.
  • Once you have the integration, go to ‘Calendar tab’ and select ‘Integrate calendar with Zoapi Device’. Click on ‘Calendar service’ and Map Zoapi Device to your meeting room and save. Now your Zoapi device will display meeting scheduled in the corresponding room.

Integrating Calendar with Zoapi Room Scheduler App

  • To use the Room Scheduler App, first you need to integrate your calendar account with Zoapi. You can login to your dashboard account and follow the steps explained in previous section.
  • Once you have the integration, go to ‘Calendar tab’ and select ‘Integrate calendar with Tablet’. Click on ‘Add Table Integration’ button and select ‘Tablet Display’ and choose your integration and meeting room. This will generate tablet integration app key entry. Copy the unique ‘App Key’ and enter it in the Zoapi Room Scheduler application. You can also disable an integrated tablet application using the Activate/Deactivate button.