Sooner of later most SAAS applications find they need to integrate with Microsoft’s ecosystem to satisfy their customer’s needs. This post looks at the four technologies which are available to integrate with Microsoft Outlook, Exchange, and Office 365, and starts to examine when each might be used.
Outlook plugins (also called ‘COM add-ins’ by Microsoft) are the most mature method of adding features and providing third party integrations into Outlook.
- Flexible User Interface.
- Respond to events (e.g. Sending a message or receiving a meeting invite).
- Work with all item types in Outlook.
- Run long processes in the background.
- Communicate easily with SAAS applications via API
- Work with all versions of Outlook for Windows Desktop (e.g. Outlook 2003 onwards if you wish – but not Outlook for Mac)
Plugins do not need Microsoft Exchange – so they can work with a range of email hosts.
Once the only option, Plugins are still the most common starting point for most Outlook integrations with SAAS applications. But as we shall see, there are other technologies which are starting to look very attractive for some requirements. [Read more about Plugins here]
Office 365 Add-ins
Outlook Add-ins (part of the Office 365 add-in family) enable you to add new features to Microsoft Outlook. They are more limited than Plugins in what they can do, and have more limited user interface options. Even so there are lots of things that can usefully be achieved through an Add-in.
In our post 19-ways-your-competitors-are-using-outlook-add-ins we examined over 250 add-ins currently in the Microsoft store to understand what they were being used for. In that post we summarised the main uses under 19 headings. The top four are shown below.
This category of add-in gives the user added/enhanced information when viewing emails. It typically uses the email address of the sender of an email to link to further data – which is then displayed to the user. The enhanced information can be extracted from a cloud based database, such as a CRM system, order management system, Fedex package delivery, or lead scoring information system.
Calendar and Meeting Enhancement
There are lots of applications which insert details of a conference call or room booking into a meeting invite. When creating the appointment in Outlook – the add-in can fetch additional information such as dial in numbers or locations, and insert text provided by the SAAS host. There are also applications which help organise meeting agendas and add information to an Outlook meeting.
Filing and Document Management
Lots of systems use add-ins to aid filing – giving single click options to save emails and/or attachments to Sharepoint, CRM systems, Document management systems.
This includes saving invoices and expenses into accounting systems and similar.
CRM systems need to have access to the interactions from customers. There are many add-ins for CRM providers which enable logging emails, creating and tracking appointments, and viewing information from the CRM when reading an email from someone. In fact most CRM Add-ins typically combines several of the actions already mentioned.
Things Add-ins can not do
Add-ins can not provide synchronisation for multiple items, they can not monitor a folder for new items. They can not directly work with contacts at all.
Add-ins v Plugins
Although both Add-ins and Plugins provide integration options for Outlook, they are very different. So what are the advantages of each?
- Simple installation (just link to a URL)
- Install once per mailbox – not per machine/client
- Code once – use in multiple clients
- Work in Outlook Web Access (browser versions of Outlook)
- Work in Outlook for Mac 2016
- Work in some Mobile versions of Outlook.
- User must be using Exchange 2013 and higher (including Office 365)
- User must be using Outlook 2013 or higher
- More limited user interface options
- Only work with email and calendar items (not contacts or tasks)
- Only responds to clicks (i.e. not proactive – can’t respond to events)
Exchange Web Services (EWS)
EWS (Exchange Web Services) is a Web Service which provides a way of accessing Outlook data directly via Microsoft Exchange and Office 365. This makes it ideal for server based applications to process Outlook data without requiring anything to be installed in Outlook, and with no need for a user interface. Microsoft created Exchange Web Services as their preferred method for external access to data on Microsoft Exchange.
EWS provides access to much of the same data that is made available through Microsoft Outlook. EWS clients can integrate and synchronize Outlook data directly with web based applications.
EWS can access all the data in Exchange – Email, Contacts, Calendar, Tasks. Folders can be monitored and Mailboxes accessed. A single agent account can be setup with permission to access data in multiple mailboxes so that only one admin account is required for the service to run.
Typical applications include:
- Synchronize Contacts or Calendar with a CRM system
- Monitor room booking calendars for appointments
- Add appointments made centrally directly into user’s calendars (typically with information about the appointment also added to the body text)
Exchange Web Services are available on all Exchange systems from Exchange 2007 onwards, including Office 365.
Microsoft Graph is Microsoft’s latest tool to enable third party applications to the access the wealth of data created by a single user on the Microsoft Cloud. It is designed to build apps for organizations and consumers that connect to a wealth of resources, relationships, and intelligence, all through a single endpoint.
Like EWS it can be run as a stand alone service so it does not require Outlook to be installed and can run as a service. It can use oAuth authorisation, so that a user can log on once through the application and it can access any (or most) of their cloud based information.
The Microsoft Graph API’s strength is its ability to access data from multiple sources for a single user – from Outlook to Excel to OneDrive files to Sharepoint. Its authorisation model is different to that of EWS, so it is not as easy to use for accessing multiple mailboxes from one service, but is very easy to access lots of different sorts of data within a single user’s account.
A typical Graph application might…
- Look at your next meeting and help you prepare for it by providing profile information for attendees, including their job titles and who they work with, as well as information on the latest documents and projects they’re working on.
- Scan your calendar, and suggests the best times for the next team meeting.
- Fetch the latest sales projection chart from an Excel file in your OneDrive and lets you update the forecast in real time, all from your phone.
- Subscribe to changes in your calendar, sends you an alert when you’re spending too much time in meetings, and provides recommendations for the ones you could miss or delegate based on how relevant the attendees are to you.
David Tongeman has been building business applications based on Outlook and Exchange for over 10 years. Now as CEO of Davton his highly experienced team will build a working integration between your SAAS application and Outlook, Exchange and Office 365. David can advise on the best options and methods, help avoid some of the common problems of working with Outlook, and deliver a working application that customers will love.