Migrating to Exchange technologies

If you're migrating from an earlier version of Exchange, use the information in this article to find out which development technologies are supported in current product versions, and which technology to migrate to.

Determine if your technology is available in current versions

Use the following table to determine whether a development technology is supported in Exchange Online or Exchange 2019. If the technology is not supported, see Choose a development technology to migrate to.


Exchange development technologies and product versions

Technology Office 365 and Exchange Online Exchange 2019 Exchange 2016 Exchange 2013 Exchange 2010 Exchange 2007
Office 365 APIs platform overview
X

X¹ ²
EWS Managed API
X
X
X
X
X
X
Exchange Web Services (EWS)
X
X
X
X
X
X
Mail apps for Outlook
X
X
X
X
Outlook Object Model (OOM)
X
X
X
X
X
X
Exchange Management Shell
X
X
X
X
X
X
Backup and restore
X
X
X
X
X
Transport agents
X
X
X
X
X
Active Directory Services Interface (ADSI)
X
Collaborative Data Objects for Exchange (CDOEX)
X
Collaborative Data Objects for Windows 2000 (CDOSYS)
X
Exchange OLE DB Provider (EXOLEDB)
X
Exchange Store Event Sinks
X
Incremental Change Synchronization (ICS)
X
Lightweight Directory Access Protocol (LDAP)
X
Messaging API (MAPI)
X
X
X
X
X
X
Outlook Web App customization
X
X
X
X
Web Distributed Authoring and Versioning (WebDAV)
X

¹REST API and Graph API require the Cumulative Update 3 for Exchange 2016.

²Only hybrid customers are able to take advantage of the REST APIs for both Office 365 and on-premises mailboxes.

Choose a development technology to migrate to

If the technology your application uses is not supported or deemphasized in Exchange Online or Exchange 2013, use the following table to decide which technology to migrate to.

Recommended technology migration paths

Technology Supported in Office 365, Exchange Online, and Exchange 2019? Migrate to More info
ADSI
Yes, but deemphasized
Exchange Management Shell
None.
CDOEX
No
EWS Managed API or EWS
The EWS Managed API and EWS can access the same Exchange store that CDOEX provides. Unlike client applications built by using CDOEX, you can run EWS applications on a local or remote computer.
CDOEXM
No
Exchange Management Shell
Exchange Management Shell commands control Exchange servers, storage groups, databases, and users more simply than the corresponding CDOEXM APIs. Plus, you can easily migrate your CDOEXM applications to Exchange Management Shell commands.
CDOSYS
No
Transport agents
Use transport agents for notification-based applications that work with versions of Exchange starting with Exchange 2010.

CDOSYS is included in current versions of Windows. The functionality in CDOSYS is available in the .NET Framework.
CDOWF
No
Windows Workflow Foundation (WWF)
You can use WWF to create advanced workflow applications that work with Exchange 2007.
ExOLEDB
No
EWS Managed API or EWS
The EWS Managed API and EWS provide the same access to the Exchange store that ExOLEDB provides. Unlike client applications built by using ExOLEDB, You can run EWS applications on a local or remote computer.
ICS
Yes, but deemphasized
EWS Managed API or EWS
You can use the EWS Managed API or EWS to subscribe to notifications and synchronize mailbox data.
LDAP
Yes, but deemphasized
Exchange Management Shell
None.
MAPI
Yes, but deemphasized
Office 365 APIs platform overview, EWS Managed API, EWS
Although MAPI is currently a supported development technology, you will eventually have to redesign your MAPI applications to use a newer technology.

If your MAPI application is performing simple read, write, and update operations on mail, calendar, or contact objects, and targets Office 365, Exchange 2019² or Exchange 2016¹ ² you can use the Office 365 REST APIs for mail, calendars, and contacts.

If you are targeting Exchange on-premises and you need to access all the properties that MAPI can access, you can use the EWS Managed API or EWS and either schematized properties or extended properties.

NOTE: The ExtendedPropertyDefinition class provides access to MAPI from the EWS Managed API, and the ExtendedFieldURI element provides access to MAPI properties from EWS.
Outlook Web App customization
No
Mail apps
None.
Store event sinks
No
EWS Managed API or EWS
You can use the EWS Managed API or EWS to subscribe to notifications and synchronize mailbox data.

The notifications in EWS provide the same access to the Exchange store that store event sinks provide. You can use Visual Studio tools to streamline the development of store event-aware client applications that use EWS.
Streaming backup and restore
No
Volume Shadow Copy Service (VSS) writer
None.
WebDAV
No
Office 365 APIs platform overview, EWS Managed API or EWS
If your WebDAV application is performing simple read, write, and update operations on mail, calendar, or contact objects, and you will be targeting Office 365, Exchange 2019² or Exchange 2016¹ ² you can use the Office 365 REST APIs for mail, calendars, and contacts.

Otherwise, if you are targeting Exchange on-premises and you need access to the same properties in the Exchange store that WebDAV provides, use the EWS Managed API or EWS.
WebDAV notifications
No
EWS Managed API or EWS
You can use the EWS Managed API or EWS to subscribe to notifications.
Web forms
No
ASP.NET
Switch to ASP.NET and update applications to access mailbox and server information by using EWS.
WMI providers
No
Exchange Management Shell
None.

¹REST API and Graph API require the Cumulative Update 3 for Exchange 2016.

²Only hybrid customers are able to take advantage of the REST APIs for both Office 365 and on-premises mailboxes.

See also