Guide · Microsoft 365

Exchange Web Services retirement: dates, EWS apps and Graph replacements

Updated · Rotomal

Microsoft is retiring Exchange Web Services (EWS) in Exchange Online. Phased disablement began rolling out from 1 October 2026, tenant by tenant: EWS is blocked unless an admin sets EWSEnabled to True and allow-lists the app's ID. After 1 April 2027, EWS is removed permanently with no way to re-enable it. Exchange Server on-premises is not affected. Find the apps that still call EWS in the Microsoft 365 admin center under Reports > Usage > Exchange > EWS usage, then move each one to Microsoft Graph.

Timeline

DateWhat happened
July 2018Microsoft announced EWS would get no more functionality updates
2023Disablement in Exchange Online set for October 2026
January 2024Midnight Blizzard incident involving EWS; scope widened to Microsoft's own apps
2025EWS usage reports, EWS Analyzer and admin controls to disable EWS released
5 February 2026Message Center post MC1227454 published with the October 2026 and April 2027 dates
End of September 2026Date by which admins who needed EWS after October were asked to set EWSEnabled to True with an AppID allow list, to be excluded from the automatic switch to False (first given as end of August)
1 October 2026Phased disablement began: EWS blocked unless EWSEnabled is True and the app is allow-listed
1 April 2027EWS permanently removed, no re-enablement

Find the apps that still use EWS

  • In the Microsoft 365 admin center, go to Reports > Usage, choose Exchange and open the EWS usage tab.
  • Set the period to 90 days and export the table. It lists Application ID, SOAP action, call volume and last activity date.
  • Look up each Application ID under Enterprise applications in Microsoft Entra. Microsoft publishes a list of its own first-party app IDs; those apps are being updated by Microsoft.
  • In App registrations, an app granted the EWS permissions EWS.AccessAsUser.All (delegated) or full_access_as_app (application) is set up to call EWS, even if the report has not caught it yet.
  • For your own code, Microsoft's EWS Analyzer tool scans a codebase for EWS calls.

The report aggregates data weekly and can take up to 10 days to show usage, so an app that runs monthly may not appear in a short window. Use the 90-day view.

Check and set EWS access with PowerShell

These Exchange Online PowerShell commands come from Microsoft's documentation. The first two show the current settings; the last two allow EWS only for the listed Application IDs.

Get-OrganizationConfig |
    Format-List EwsEnabled,EwsApplicationAccessPolicy,EwsAllowList,EwsBlockList

Get-OrganizationConfig -RetrieveEwsOperationAccessPolicy |
    Format-List EwsAllowedAppIDs
Set-OrganizationConfig -EwsAllowedAppIDs "11111111-2222-3333-4444-555555555555,aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
Set-OrganizationConfig -EwsEnabled:$true

When EwsEnabled is True, only the Application IDs in EwsAllowedAppIDs can use EWS. Changes to the list can take up to 24 hours to apply. If you also use a User-Agent allow list (EwsApplicationAccessPolicy EnforceAllowList), both checks must pass, so keep the user agents of apps you still need, such as Teams calendar. All of this stops working on 1 April 2027.

Reading a 403 from EWS

X-EWS-Policy-Reason headerMeaningCheck
EWS is disabled for this user or tenantEWS is turned off for the organization or the mailboxOrganization and mailbox EwsEnabled settings
EWS is blocked by policy for this user or tenantAn Application ID or User-Agent policy blocked the appEwsAllowedAppIDs, EwsApplicationAccessPolicy, EwsAllowList, EwsBlockList

Microsoft notes that a 403 on its own does not prove an EWS policy caused the failure; other access restrictions can return 403 too. Enabling EWS on a mailbox does not override an organization-wide disable.

EWS to Microsoft Graph: common replacements

EWS operationMicrosoft Graph API
FindItemList messages
GetItemGet message
CreateItemCreate message
SendItemSend message, or Send mail
UpdateItemUpdate message
MoveItemMove message
DeleteItemDelete message
GetAttachment / CreateAttachmentGet attachment / Add attachment
SyncFolderItemsGet messages delta
Subscribe (push notifications)Create subscription
GetUserAvailabilityGet free/busy schedule
GetUserOofSettings / SetUserOofSettingsGet / Update user mailbox settings
GetInboxRulesList rules
ResolveNamesList people
ConvertIdTranslate Exchange IDs

Taken from Microsoft's EWS to Microsoft Graph API mappings page, which also covers folders, reminders, calendar sharing and groups.

Gaps: what Graph does not do yet, and never will

Microsoft's roadmap lists gaps it plans to close with target dates in the third and fourth quarters of 2026, including full-fidelity import and export for archive, public folder and Microsoft 365 Group mailboxes, In-Place Archive access, notes, contact lists, an Exchange Admin API and reporting messages as junk or phishing. It says the dates are targets and might change, and that if a capability is not on the roadmap you should not plan on a Graph equivalent before EWS is fully disabled.

Three capabilities will never be added: generic create, read, update and delete in public folders, the same for Microsoft 365 Group mailboxes, and access to legacy Discovery Mailboxes, where Microsoft points to Purview eDiscovery instead.

Getting it done before April

The admin work is small; finding out what each Application ID is, and getting a date from each vendor, is what takes time. EWS Exit Plan starts with a scan of your usage report, then gives you a fixed-price plan per tenant, from $99: each app named, a decision for each, the Graph replacement for every EWS call your own code makes, and allow-listing for anything that needs until April.

Questions

When is EWS being turned off?

Phased disablement in Exchange Online began on 1 October 2026, blocking EWS unless the tenant enables it and allow-lists the app. EWS is permanently removed after 1 April 2027.

Is EWS being removed from Exchange Server on-premises?

No. The retirement applies to Exchange Online. Exchange Server on-premises is not affected.

Can I turn EWS back on?

Until 1 April 2027, yes: set EWSEnabled to True and list the apps in EwsAllowedAppIDs. Microsoft says it pre-filled that list from recent usage for tenants that had not built their own, and that setting EWSEnabled back to Null in PowerShell re-enables EWS without restrictions until the final shutdown. After 1 April 2027 there is no re-enablement.

What replaces EWS?

Microsoft Graph. Microsoft publishes a mapping from EWS operations to Graph APIs and says Graph has reached near-complete feature parity for the vast majority of EWS scenarios, with a few capabilities that will never be added.

Why did my EWS app stop working in October 2026?

Most likely the phased disablement. Check the X-EWS-Policy-Reason header on the 403 response and the EwsEnabled and EwsAllowedAppIDs settings in Exchange Online PowerShell.

Does the EWS usage report show app names?

No, it shows Application IDs. Look each one up under Enterprise applications in Microsoft Entra, or in Microsoft's list of its first-party app IDs.

Sources