1

I'm developing an integration with Outlook in Office 365 using the latest office.js api for add-ins.

What I have currently is an add-in, which displays a side pane on the appointment compose form. Inside that pane I have the functionality to create an object in our external based on the appointment, taking the start/end times, subject, location etc.

So I have appointment A in the calendar of an O365 account, and object A in an external system.

Is there a way to keep those in sync? I don't see it could be possible using the Outlook Add-In Javascript API, but maybe using ics files, or the Outlook REST API, or Exchange EWS? I see here plenty of issues with the credentials, as the user has separate credentials in our system.

Any tips? I tried to send from our system an ICS file with same iCal UID, but Outlook ignores it.

alek kowalczyk
  • 4,896
  • 1
  • 26
  • 55
  • Do you mean you want to create appointments in your external system when certain system events occur, and create/update/delete objects in your external system when appointments are modified *outside* of the add-in context? – Eric Legault Jan 03 '17 at 15:46
  • Yes exactly, what I learned in the mean time it looks like that the online way is to use the Outlook REST API (or Microsoft Graph), issue with that is, that the user will have to do double OAuth/consent for my integration, firstly when installing the add-in, then when giving access to the REST API. – alek kowalczyk Jan 03 '17 at 16:42

1 Answers1

2

You would want to to use the Outlook Push Notifications REST API in your web service to get polled when users make changes to their Calendar. Then use the Outlook Calendar REST API to sync changes from your system to their Calendar.

Eric Legault
  • 5,706
  • 2
  • 22
  • 38