In order to be able to synchronize Microsoft calendar appointments via the Microsoft Graph API an Application must be created in Azure.
NOTE
: These steps are only covering synchronization with
online
calendars, not on-premise calendars.
App creation in Azure portal
Go to your Azure Active Directory in the Azure portal and follow the steps below.
Register an App
Click App registrations, New registration.
Click on the Register button.
Add API permissions
Add the User.Read.All and Calendar.Read Graph API permissions
- User.Read.All - Used for checking if user is part of Azure Active Directory
- Calendar.Read - Read calendar, their events and create subscriptions.
Click on the "Grant admin consent for ..." button.
When using "Third party event booking" then the Application permission "Calendars.ReadWrite" is required.
Add a Client Secret
Take a copy of the generated secret. It is only shown during creation.
Get the Client and Tenant IDs for the application
Go to the Application Overview page and copy the Client ID and Tenant ID. You need
to enter these in the Novus Configuration UI along with the Client Secret.
App creation using Azure CLI commands
The steps above can also be done with the Azure CLI commands below.
Copy the requiredResourceAccess.json file to the Azure storage (clouddrive) used by Azure CLI.
If you are using the Cloud Shell in the Azure Portal then you can click on the Upload File button in its menubar as shown below
Create an application with this command
az ad app create \
--display-name CalendarSync \
--password VerySecretWord#1234 \
--end-date 2100-12-31 \
--required-resource-accesses requiredResourceAccess.jsonReplace the password with your choice.
Grant admin consent for the requested API permissions with this command
az ad app permission admin-consent --id 00000000-0000-0000-0000-000000000000where 00000000-0000-0000-0000-000000000000 must be replaced with the actual ID of the application created above. (Note: the az ad app permission admin-consent fails with an exception)