oAuth for Planner, or how to set up Exchange integration for Office 365 / Exchange online
This guide will take you through setting up integration between Planner and Exchange, using Exchange web services for Exchange Online/Office 365, and authenticating using OAuth. You will need administrator rights in Planner and Azure Active Directory.
Planner requires information from Outlook if you want them integrated so you can move meetings in your Outlook calendar. This guide shows you how you can integrate Planner with Exchange using Exchange Web Services (EWS) if you’re using Office 365 or Exchange Online and want to authenticate using OAuth. You will need administrator rights in Planner and Azure Active Directory.
Go to https://portal.azure.com
Choose Azure Active Directory and then Properties as shown
Here you can see your Tenant ID. Please copy it as you will need it later.
Then go to App registrations and press "(+) New registration"
Give the application a name. In this guide I chose the name Pronestor. Set the application type to web app / api and set the sign-on URL to be your Planner site and press "Register". An example could be this:
Redirect URL: HTTPS://.pronestor.com>/Booking.NET/Login.mvc/Login
After you press "Register" you see the app's information. Please press "API permissions" and then "Add permission".
Under "Add a permission" press "APIs my organization uses", then under add API access choose "Office 365 Exchange Online" and then press "Select" as shown here:
Then it asks which permission to get. Please choose "Application permissions".
Correction: API Permissions → Add a permission → Exchange → full_access_as_app
Now press "Add permission".
Then press "Grant permission" and choose "Yes".
In this example, the user did not have admin rights, so he could not press "Grant permission".
Press the "Overview" and copy the Application ID for later users.
Now we go to the Planner solution. Please open your Planner site and go here
Check the box for "Exchange online". This will give you the option to check off "Use OAuth".
Then it will look like this
Put application ID in the Client ID field and the directory ID in the directory ID field.
Now we need a default booker. When a meeting is imported from Exchange online, it has an owner.
If this owner doesn't exist in Planner, Planner needs to know which user to set as the meeting owner.
In this example, I created a user named Default for this purpose, but you can choose an existing user or create your own default user. Once you have chosen the user, press "Save".
Now press "Create new certificate"
This guide is made in Chrome. If you are using another browser, please be aware that the download process can look different.
Go to the default download folder, or please save the file to your machine in a place where you can find it again.
Go back to Azure Active Directory and find your app from before and click it. Please disregard that the app in this guide has changed name.
Then press "Settings", "Keys" and "Upload Public Key".
Then press the little folder to open a file explorer and upload the certificate from Pronestor
Please press "Open" and then it will look like this:
Press "Add"
Then we return to Planner and press "Test connection"
The little text up here changes to "OK" and that means it is configured correctly.