This is a Public Preview release of Exchange Online PowerShell V2 module.
Please check the documentation here -
For issues related to the module, contact Microsoft support.

Minimum PowerShell version


This is a prerelease version of ExchangeOnlineManagement.
There is a newer prerelease version of this module available.
See the version list below for details.

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.6-Preview3 -AllowPrerelease

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More


Microsoft Corporation


(c) 2021 Microsoft. All rights reserved.

Package Details



Exchange ExchangeOnline EXO EXOV2 Mailbox Management


Get-EXOCasMailbox Get-EXOMailbox Get-EXOMailboxFolderPermission Get-EXOMailboxFolderStatistics Get-EXOMailboxPermission Get-EXOMailboxStatistics Get-EXOMobileDeviceStatistics Get-EXORecipient Get-EXORecipientPermission Get-MyAnalyticsFeatureConfig Get-UserBriefingConfig Get-OwnerlessGroupPolicy Get-VivaInsightsSettings Set-MyAnalyticsFeatureConfig Set-UserBriefingConfig Set-OwnerlessGroupPolicy Set-VivaInsightsSettings


Connect-ExchangeOnline Connect-IPPSSession Disconnect-ExchangeOnline


This module has no dependencies.

Release Notes

Whats new in this release:

v2.0.6-Preview3 :
   1. This version contains all the * EXO * cmdlets along with 250 Remote PowerShell cmdlets which are REST API backed. These REST API backed cmdlets do not need PowerShell session and hence they do not need WinRM Basic Auth to be enabled and they work as-is without requiring any change in script.
   2. Use switch -RPSSession to use the default set of all ~900 RPS Cmdlets. Using RPSSession switch needs WinRM Basic Auth to be enabled on your client machine.
   3. For certain RPS Cmdlets, use switch -UseCustomRouting to route your requests directly to the required mailbox server and it may improve the performance of overall script execution. In case UseCustomRouting flag is passed, please pass the value of either of UserPrincipalName, SmtpAddress, MailboxGuid. Use this parameter as an experiment and share feedback to
       - This parameter is initially available for these 20 cmdlets and can be updated - Get-MailboxStatistics,Get-MailboxAutoReplyConfiguration,Get-MailboxMessageConfiguration,Get-MailboxPermission,Get-MailboxFolderStatistics,Get-MobileDeviceStatistics,Get-InboxRule,Get-MailboxRegionalConfiguration,Set-MailboxRegionalConfiguration,Get-UserPhoto,Set-UserPhoto,Remove-CalendarEvents,Set-Clutter,Get-MailboxCalendarFolder,Get-Clutter,Get-MailboxFolderPermission,Get-FocusedInbox,Set-FocusedInbox. For more accurate information, please check online documentation of EXO PowerShell V2 Module.

Previous Releases:

v2.0.6-Preview2 :
   1. The cmdlets Get-VivaInsightsSettings and Set-VivaInsightsSettings can now be used to control user access of Meeting Effectiveness Survey features in Viva Insights.

v2.0.6-Preview1 :
   1. This version contains all the * EXO * cmdlets along with 9 Remote PowerShell cmdlets which are REST API backed. These REST API backed cmdlets do not need PowerShell session and hence they do not need WinRM Basic Auth to be enabled.
   2. Use switch -RPSSession to use the default set of all ~900 RPS Cmdlets. Using RPSSession switch needs WinRM Basic Auth to be enabled on your client machine.

v2.0.5 :
   1. Manage ownerless Microsoft 365 groups through newly added cmdlets Get-OwnerlessGroupPolicy and Set-OwnerlessGroupPolicy.
   2. Add new cmdlets Get-VivaInsightsSettings and Set-VivaInsightsSettings for Global/ExchangeOnline/Teams administrators to control user access of Headspace features in Viva Insights.

v2.0.4 :
   1. Manage EXO using Linux devices along with Browser based SSO Authentication for enhanced interactive management experience. No need to enter UserName and password everytime you run the PowerShell script.
   2. Manage EXO using Apple Macintosh devices. Supported versions of Apple MAC OS are Mojave, Catalina & Big Sur. Steps for installing PowerShell on MAC OS is documented here -
   3. Real time policy & security enforcement in all user based authentication. Continuous Access Evaluation (CAE) has been enabled in EXO V2 Module. Read more about CAE here -
   4. Use parameter InlineCredential to pass credentials of Non-MFA accounts on the go without the need of storing credentials in a variable
   5. More secure method to fetch access token using safe Reply URLs.
   6. Breaking change :- Change in cmdlet signature to configure MyAnalytics access for users in your tenant. Get/Set-UserAnalyticsConfig has been replaced by Get/Set-MyAnalyticsFeatureConfig Additionally, you can have more granular controls and configure access at feature level. For more steps read here -

v2.0.3 :
   1. General availability of Certificate Based Authentication feature which enables using Modern Authentication in Unattended Scripting or background automation scenarios.
   2. Certificate Based Authentication accepts Certificate File directly from terminal thus enabling certificate files to be stored in Azure Key Vault and being fetched Just-In-Time for enhanced security. See parameter Certificate in Connect-ExchangeOnline.
   3. Connect with Exchange Online and Security Compliance Center simultaneously in a single PowerShell window.
   4. Ability to restrict the PowerShell cmdlets imported in a session using CommandName parameter, thus reducing memory footprint in case of high usage PowerShell applications.
   5. Get-ExoMailboxFolderPermission now supports ExternalDirectoryObjectID in the Identity parameter.
   6. Optimized latency of first V2 Cmdlet call. (Lab results show first call latency has been reduced from 8 seconds to ~1 seconds. Actual results will depend on result size and Tenant environment.)

v1.0.1 :
   1. This is the General Availability (GA) version of EXO PowerShell V2 Module. It is stable and ready for being used in production environments.
   2. Get-ExoMobileDeviceStatistics cmdlet now supports Identity parameter.
   3. Improved reliability of session auto-connect in certain cases where script was executing for ~50minutes and threw "Cmdlet not found" error due to a bug in auto-reconnect logic.
   4. Fixed data-type issues of two commonly used attributed "User" and "MailboxFolderUser" for easy migration of scripts.
   5. Enhanced support for filters as it now supports 4 more operators - endswith, contains, not and notlike support. Please check online documentation for attributes which are not supported in filter string.



Version History

Version Downloads Last updated
3.2.0-Preview2 372 3/20/2023
3.2.0-Preview1 1,837 2/27/2023
3.1.0 792,446 1/9/2023
3.1.0-Preview2 1,593 12/19/2022
3.1.0-Preview1 1,379 12/5/2022
3.0.1-Preview1 1,720 11/14/2022
3.0.0 1,477,165 9/19/2022
2.0.6-Preview8 3,076 9/9/2022
2.0.6-Preview7 1,490,573 8/13/2022
2.0.6-Preview6 37,293 5/20/2022
2.0.6-Preview5 41,700 3/17/2022
2.0.6-preview4 3,275 1/13/2022
2.0.6-Preview3 (current version) 11,482 10/20/2021
2.0.5 6,385,018 5/11/2021
2.0.5-Preview2 628 4/30/2021
2.0.5-Preview1 723 4/21/2021
2.0.4 491,654 2/5/2021
2.0.4-Preview9 2,049 1/19/2021
2.0.4-Preview8 254 1/4/2021
2.0.4-Preview6 23,167 11/6/2020
2.0.4-Preview2 104,285 9/22/2020
2.0.3 503,538 9/21/2020
2.0.3-Preview 8,750 6/30/2020
1.0.1 256,836 6/3/2020
0.4578.0 518,466 4/16/2020
0.4368.1 23,375 3/30/2020
0.3582.0 39,343 2/10/2020
0.3555.1 13,865 1/22/2020
0.3374.11 11,970 1/15/2020
0.3374.10 5,475 12/27/2019
0.3374.9 17,552 11/26/2019
0.3374.4 7,693 10/31/2019
0.3374.1 808 10/25/2019
0.3374.0 595 10/22/2019
Show less