Microsoft 365

This app allows accessing the Microsoft 365 platform directly in Eliona using the Microsoft Graph API.

Microsoft Graph is the gateway to data and intelligence in Microsoft 365. It provides a unified programmability model that you can use to access the tremendous amount of data in Microsoft 365, Windows, and Enterprise Mobility + Security.

This app connects rooms and other resources to to Eliona and provides information about their booking status.

The main ability of the app, though, is the possibility to use the whole Graph API directly in Eliona using the authentication-providing proxy functionality.

Installation

The Microsoft 365 App is installed via the App Store in Eliona.

Assets

The Microsoft 365 App automatically creates all the necessary asset types and assets that are accessible via the configured endpoints. The following asset types are created:

  • Room: A room in Azure AD.

  • Equipment: Any piece of equipment that can be booked. Like a room, but generalized.

Following attributes are defined:

Configuration

For a detailed guide to configuring apps, follow the manual.

The Microsoft 365 App is configured by defining one or more authentication credentials. Each configuration requires the following data:

The configuration must contain either client secret for app permissions or user credentials for delegated permissions.

The configuration is done via a corresponding JSON structure. As an example, the following JSON structure can be used to define an endpoint for app permissions:

{
  "clientId": "adasf8676a-example-client-id-asfd2867130",
  "clientSecret": "8nx-8Kelionathebestwfmbsdiurnc987vcu",
  "tenantId": "tenant-id",
  "username": "",
  "password": "",
  "enable": true,
  "refreshInterval": 60,
  "requestTimeout": 120,
  "assetFilter": [],
  "projectIDs": [
    "10"
  ]
}

Endpoints can be created using this structure in Eliona under Apps > Kontakt.io > Settings. To do this, select the /configs endpoint with the POST method.

Required privileges

For the basic use-case of reading rooms and equipment and their availability, the application needs following Application permissions:

  • Place.Read.All

  • User.Read.All

  • Calendars.Read

Setup for bookings

To allow the Microsoft 365 app create and manage bookings on behalf of users, a "Device code authentication flow" is used. For that to work, the administrator has to go to Microsoft Entra -> Applications -> App registrations -> Authentication and there "Allow public client flows".

As bookings are done on behalf of a user, the app requires following Delegated permissions:

  • User.Read

  • Calendars.ReadWrite

Last updated