Periodically, you may find it necessary to remove all content in an Exchange Online mailbox.  Short of removing a license (and waiting for the soft deleted mailbox to expire), the only other option has been to log into OWA and delete everything or connect an Outlook client to it ... until now.

Use this script to delete content in a mailbox for whtaever the reason may be.  Log into an Office 365 session first, and away you go.  You will need to have run Enable-OrganizationCustomization in order for this to work (you'll get a helpful error message telling you the same).

The update blog post for this item is at https://www.undocumented-features.com/2019/01/23/update-to-the-wipeexchangeonlinemailbox-tool.

See the older related blog post (along with all the pretty pictures) at https://undocumented-features.com/2016/01/09/wipe-content-from-an-exchange-online-mailbox.

Updates:

Previous Updates:

 

PowerShell
Edit|Remove
<# 
Wipe out all content in an Exchange Online mailbox. 
 
All environments perform differently. Please test this code before using it 
in production. 
 
THIS CODE AND ANY ASSOCIATED INFORMATION ARE PROVIDED “AS IS” WITHOUT WARRANTY  
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE  
IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR 
PURPOSE. THE ENTIRE RISK OF USE, INABILITY TO USE, OR RESULTS FROM THE USE OF  
THIS CODE REMAINS WITH THE USER. 
 
Author: Aaron Guilmette 
        aaron.guilmette@microsoft.com 
#> 
 
<# 
.SYNOPSIS 
Remove all contents in an Office 365 / Exchange Online mailbox. 
 
.DESCRIPTION 
This script will attempt to remove all content in the specified Exchange Online 
mailbox. 
 
.PARAMETER Credential 
Credential of user to perform mailbox wipe.  User identity must have a mailbox. 
 
.PARAMETER Identity 
Use to specify one or more identities. 
 
.PARAMETER TargetOptions 
Specify which operational mode to use for content wipe: MailboxOnly, ArchiveOnly, 
or MailboxAndArchive. 
 
.PARAMETER DeleteItemOptions 
Process selected folders for deletions.  Valid options include: 
- DeletedItemsOnly : Uses EWS to process items in Deleted Items ONLY. 
- RecoverableItemsOnly : Uses EWS to process items in Recoverable Items ONLY. 
- Normal : Default. Processes all folders using EWS and then runs Search-Mailbox. 
 
.EXAMPLE 
.\WipeExchangeOnlineMailbox.ps1 -Identity testuser@contoso.com 
Remove mailbox contents for testuser@contoso.com 
 
.EXAMPLE 
.\WipeExchangeOnlineMailbox.ps1 -Identity testuser@contoso.com -Credential $Cred 
Remove mailbox contents for testuser@contoso.com using stored credential $cred 
 
.EXAMPLE 
.\WipeExchangeOnlineMailbox.ps1 -Identity user1@contoso.com,user2@contoso.com -TargetOptions ArchiveOnly -Credential $Cred 
Remove contents of archives for user1@contoso.com and user2@contoso.com 
 
.EXAMPLE 
.\WipeExchangeOnlineMailbox.ps1 -Identity user1@contoso.com -TargetOptions MailboxOnly -Credential $Cred 
Remove contents of mailbox only for user1@contoso.com and user2@contoso.com 
 
.EXAMPLE 
.\WipeExchangeOnlineMailbox.ps1 -Identity user1@contoso.com -DeleteItemOptions DeletedItemsOnly -Credential $Cred 
Remove only deleted items folder content for user1@contoso.com  
 
.LINK 
For an updated version of this script, check the Technet 
Gallery at https://gallery.technet.microsoft.com/Wipe-Exchange-Online-331ab4f4 
#>