Unable to connect to an Office 365 / Outlook account
Office 365 accounts can fail to connect because of the following reasons:
i) Exchange Connections No Longer Supported by Microsoft Office
If you're on an Office 365 account, Microsoft has deprecated and disabled access to O365 accounts via the now discontinued Exchange Web Services (EWS) protocol. You must instead:
- Delete the account from BusyCal / BusyContacts first
- Add it again, but this time select Office 365 (Microsoft Graph) from the list
This uses their latest sync APIs and is the only recommended way of connecting to Office 365 accounts. For more details:
- Using BusyCal iOS with Office 365 (Microsoft Graph)
- Using BusyCal with Office 365 (Microsoft Graph)
- Using BusyContacts with Office 365 (Microsoft Graph)
ii) Account Admin consent is required
You may see an Admin Consent Required message when authenticating and allowing the app to connect to your account. If that is the case, the Office 365 portal settings have blocked or not given the app explicit consent to access the account. Unfortunately, without the appropriate permissions, it won't allow the app to connect, as normally all 3rd party apps are blocked by default and must be whitelisted individually.
This is not uncommon, as most organizations will allow the built-in Apple Calendar app on macOS to connect to their servers but will not allow other 3rd party apps.
We have detailed instructions on how to assist Office 365 admins in granting access to the app.
"But other 3rd party apps seem to show calendars just fine!"
There are only two reasons why some other 3rd party apps work:
-
The O365 admin has explicitly granted the app permission to connect (following similar instructions as described here), OR
-
They're using the native Calendar sync APIs (also known as EventKit), which allow them to obtain data directly from the built-in Calendar app instead of connecting to the server directly. BusyCal also supports a direct connection to Apple Calendar; however, these connections are severely limited due to inherent limitations in Apple's SDKs.