Microsoft Exchange is one of the most widely used ESPs, especially in large corporations — but it's also one of the most challenging email service providers to integrate with. If you're building an app that needs to connect to user's inboxes, Exchange can't be ignored.
Originally, the Exchange protocol was created for pocket PCs developed in the early 2000's. Today, Exchange uses two main protocols - EAS and EWS, with Graph on the horizon (though still very much in beta).
EAS: Exchange ActiveSync
EAS, literally "Exchange ActiveSync Services", was introduced in Exchange 2003 to specifically sync Exchange with mobile clients (high-latency, low-bandwidth connections).
EWS: Exchange Web Services
EWS is a much more typical XML SOAP service, replete with all the structural formalities and WS-Addressing that you would expect.
You can learn more about these protocols in our technical overview of EAS, EWS, and Graph.
Microsoft Graph was introduced in an effort to unify all Office APIs (like Excel and OneDrive). Therefore, Graph's schema is organized not by product but data type (like the Mail API, Calendar API, Notifications API, etc.). As a fairly nascent addition to the Microsoft family, Microsoft keeps a running list of known issues which includes everything from issues with delta streams to GET/Teams and POST/Teams being unsupported (as of this writing).
The Burdens of Building With Exchange Directly
Development cycles are precious. They should be spent programming, not pouring through dense docs.
Crafting Exchange protocols to fit your specs takes time -- engineers will have to write business logic in WBXML so Microsoft’s API can wrap commands to send to Exchange servers.
When building directly on the Exchange platform, you’re responsible for brokering negotiations between different versions of EAS and EWS. The server-side issues are vast, including things like: intermittent processing issues, mailboxes that won’t sync, and granting administrator privileges from Office 365.
These problems are only magnified as you scale. Each new server requires another dependency. Troubleshooting errors for new users syncing email accounts can turn the maintenance of your EAS integration into a full-time job.
Nylas does things differently. With the Nylas Email API for Exchange, you get production-ready, flexible code in the programming language that best suits you, so you can engineer your email stack to your specifications.
Integrate With Microsoft Exchange Email in 4 Lines of Code
At Nylas, we built our own Exchange/ActiveSync integration to simplify the integration process for developers around the world. While Microsoft’s Exchange ActiveSync (EAS) was designed in 2003 for legacy mobile applications, the Nylas email API is designed for the modern business and the modern developer.
Create an account and get a free API key here.