Commands › Exchange Online

New-CaseHoldPolicy

Exchange Online ExchangeOnlineManagement New-*

For more information, see Security & Compliance PowerShell. Use the New-CaseHoldPolicy cmdlet to create new case hold policies in the Microsoft Purview compliance portal. > [!NOTE] > This cmdlet causes a full synchronization across your organization, which is a significant operation. If you need to create multiple policies, wait until the policy distribution is successful before running the cmdlet again for the next policy. For information about the distribution status, see Get-CaseHoldPolicy.

Quick start script

# New-CaseHoldPolicy — quick start (serv365.ai)
# 1. Connect (app-only shown; interactive: omit the certificate parameters)
Connect-ExchangeOnline -CertificateThumbprint $thumb -AppId $appId -Organization $org

# 2. Capture the current state first — you cannot roll back what you never recorded
$before = Get-CaseHoldPolicy
$before | Format-List

# 3. Make the change (dry run first)
New-CaseHoldPolicy -Name <String> -Case <String> -WhatIf
New-CaseHoldPolicy -Name <String> -Case <String>

# 4. Verify and diff
$after = Get-CaseHoldPolicy
Compare-Object ($before | Out-String) ($after | Out-String)

Syntax

New-CaseHoldPolicy [-Name] <String> -Case <String>
 [-Comment <String>]
 [-Confirm]
 [-Enabled <Boolean>]
 [-ExchangeLocation <MultiValuedProperty>]
 [-Force]
 [-PublicFolderLocation <MultiValuedProperty>]
 [-SharePointLocation <MultiValuedProperty>]
 [-WhatIf]
 [<CommonParameters>]

Parameters (10)

ParameterTypeRequiredWhat it controls
-Name String yes The Name parameter specifies the unique name of the case hold policy. If the value contains spaces, enclose the value in quotation marks.
-Case String yes The Case parameter specifies the eDiscovery case that you want to associate with the case hold policy. You can use the following values to identify the eDiscovery case:
-Comment String The Comment parameter specifies an optional comment. If you specify a value that contains spaces, enclose the value in quotation marks ("), for example: "This is an admin note".
-Confirm SwitchParameter The Confirm switch specifies whether to show or hide the confirmation prompt. How this switch affects the cmdlet depends on whether the cmdlet requires confirmation before proceeding.
-Enabled Boolean The Enabled parameter specifies whether the policy is enabled or disabled. Valid values are:
-ExchangeLocation MultiValuedProperty The ExchangeLocation parameter specifies the mailboxes to include in the policy. Valid values are:
-Force SwitchParameter The Force switch hides warning or confirmation messages. You don't need to specify a value with this switch.
-PublicFolderLocation MultiValuedProperty The PublicFolderLocation parameter specifies that you want to include all public folders in the case hold policy. You use the value All for this parameter.
-SharePointLocation MultiValuedProperty The SharePointLocation parameter specifies the SharePoint and OneDrive sites to include. You identify a site by its URL value.
-WhatIf SwitchParameter The WhatIf switch doesn't work in Security & Compliance PowerShell.

Reference facts derived from Microsoft documentation, © Microsoft, licensed CC BY 4.0; restructured with original guidance by serv365.ai.