Saturday, February 29, 2020

Sync Office 365 calendar with Google Calendar

If your company is using Office 365 and you want to see your work calendar on your private phone you have a few choices:

  • Send an invitation link to your private email address to import it into your default calendar app (e.g. Google Calendar). This feature is disabled for some companies.
  • Install the Outlook app and use that to check your work calendar separately - meh. I want all my calendars in one place!
  • Add Exchange integration to your phone. That way your work-related appointments should show up in your default calendar app. However, some companies disable this feature, too.
Since all these solutions were inconvenient or blocked in my case, I had to come up with something else. I ended up using Microsoft Flow (something you should get for free as part of your Office 365 account anyway) to automate a workflow that copies calendar entries to a separate Google Calendar. Here's what the flow looks like:

("Calendar ID" removed for privacy reasons)

The code for "Start time" and "End time" is as follows:
  • convertToUtc(triggerOutputs()?['body/start'], 'GMT Standard Time')
  • convertToUtc(triggerOutputs()?['body/end'], 'GMT Standard Time')
Now authorize Microsoft Flow to access both your Office 365 as well as your Google Calendar and you are good to go! This workflow is very minimalistic and comes with obvious defects like not honoring updates to existing events. Supporting that would require significantly more effort and is not worth it in my opinion. I'd be happy to chat about possible solutions if anyone is interested in actually making this work though!

No comments:

Post a Comment