Resource Booking Setup - Microsoft 365 (Office)


The MazeMap Resource Booking feature enables convenient space bookings in a hybrid work environment. This feature is customisable for booking various spaces such as rooms, workspaces and desks.

Customers can import resource details from supported external calendars, such as Google or Microsoft 365, or use MazeMap's built-in hybrid desks solution service. This service is particularly useful for adding desks that are not available in a standard calendar provider.

This page describes how to set up resource booking with Microsoft 365.

Setup Microsoft 365

1) Sign up and consent

Before you can start using Microsoft 365 and MazeMap, you will need to sign up and provide consent for the collection and use of your data. This is necessary to ensure that we are able to provide you with the best possible service and to comply with relevant data protection regulations.

To sign up and provide your consent, please follow these steps:

  1. Click the following link to sign up for Resource Booking with MazeMap:

    1. https://login.microsoftonline.com/common/adminconsent?client_id=edf3fbfc-b7f9-4c31-88f5-a7400bf5463f&redirect_uri=https%3A%2F%2Fuse.mazemap.com%2Foauthsuccess.html.

    2. If Teams links should be included: https://login.microsoftonline.com/common/adminconsent?client_id=6f5d5dbb-e640-488f-81f0-866bc32a5b1f&redirect_uri=https%3A%2F%2Fuse.mazemap.com%2Foauthsuccess.html

  2. Review the terms of service and privacy statement for both Microsoft 365 and MazeMap. Provide your consent by clicking the Accept button.

Screenshot 2024-03-18 at 10.28.11.png
Result of link A
image-20241104-094910.png
Result of link B
  1. Create a request with MazeMap Support with your Tenant ID.

  2. MazeMap Support will be in contact.

For customers with Resource Booking predating March 2024, see section Deprecated setup - Sign up and consent.

2) Booking options

Rooms needs to auto accept meeting requests.

3) Data access

  • Full access to user calendars - allowing MazeMap to create, read, update and delete events in user calendars. This is necessary to book a room with a user that is logged in.

  • Reading user’s basic profile (name, picture and username): This is used to provide a more personalized user experience. This information is only accessed for a signed-in user.

 

In more detail:

 

Here is a full list over all the Microsoft 365 API Calls*:  

  • Getting availability (overview in map for specific point in time) + schedule for a single room for some time in the future (we use the timestamps, not the other information in the schedule items)

  • Booking a room anonymously (e.g. through kiosk)

  • Booking a room with a user

  • Cancel a reservation

  • Get user reservations

  • Getting a token for MazeMap to authenticate with the external API for making future calls. Used in all flows.

  • User login. This endpoint is directly accessed from the client and starts an Oauth flow. The access token retrieved from this is used in following calls to MazeMap and MazeMap use the token on behalf of the user to authenticate when creating reservations.

 

All access to these APIs are done using HTTPS.

The login flow is client side only. It does not go through MazeMap servers. The user gets prompted for a login flow from Microsoft 365 which returns an access token. This access token is stored locally in the browser (for 60 minutes) and used in calls to MazeMap when booking a room. The access token is forwarded directly to the Microsoft 365 APIs for booking a room (impersonation).

During this whole process, the only thing MazeMap stores is whether the room was booked successfully or if any errors occurred. End users only see if a room is available or not and for what time it is available, not what the room is booked for and not the meetings’ participants.

*This list includes the API Calls which are currently in use in the application. They do not need updates when we change some of the calls later, because the purpose will be the same and the rights we request from both the customer and each user are the same. In the future some things may change though because:

  • Microsoft makes changes

  • We want to optimise the flow (faster alternative API calls doing the same action)

  • New requirements/ new features

Auto unbooking with occupancy sensors

The optional auto unbooking feature allows resources to automatically be un-booked if occupancy sensors or wifi check-in policies show that the resource is unused. This frees up the resources for other users. For example, automatically cancelling a meeting room booking if a sensor in the room shows no one is present, allows another user to book the room.

To be able to do cancellation without a signed-in user, write permission to all calendars is required.

To sign up and provide your consent, please follow these steps:

  1. Click the following link to sign up for auto un-booking with MazeMap: https://login.microsoftonline.com/common/adminconsent?client_id=5de804c1-0453-4ffa-9000-df9f5623e222&redirect_uri=https%3A%2F%2Fuse.mazemap.com%2Foauthsuccess.html

  2. Review the terms of service and privacy statement for both Microsoft 365 and MazeMap, and provide your consent by clicking the Accept button.

 

Booking config settings

 

Deprecated setup - Sign up and consent

Before March 2024, these were the steps to sign up and consent.

 

To sign up and provide your consent, please follow these steps:

  1. Click the following link https://login.microsoftonline.com/common/adminconsent?client_id=7282620c-73d8-46d2-8dc6-7e2602fd1003&redirect_uri=https%3A%2F%2Fadmin.mazemap.com%2Fbooking%2Foffice365%2Findex.html to sign up for Resource Booking with MazeMap.

  2. Review the terms of service and privacy statement for both Microsoft 365 and MazeMap, and provide your consent for the by clicking the accept button

  3. Create a request with MazeMap Support with your Tenant ID

  4. MazeMap support will be in contact