Commands › Exchange Online

New-MailMessage

Exchange Online ExchangeOnlineManagement New-*

Create an email message for the specified user mailbox and place the email message in the Drafts folder of the user's mailbox.

Quick start script

# New-MailMessage — 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-MailMessage
$before | Format-List

# 3. Make the change (dry run first)
New-MailMessage  -WhatIf
New-MailMessage

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

Syntax

New-MailMessage
 [[-Body] <String>]
 [-BodyFormat <MailBodyFormat>]
 [-Confirm]
 [-DomainController <Fqdn>]
 [-Subject <String>]
 [-WhatIf]
 [<CommonParameters>]

Parameters (6)

ParameterTypeRequiredWhat it controls
-Body String The Body parameter specifies the content of the body section of the new email message.
-BodyFormat MailBodyFormat The BodyFormat parameter specifies the format of the message body. The values can be PlainText, Rtf (Rich Text Format), or Html. By default, if the BodyFormat parameter isn't specified when the Body parameter is...
-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.
-DomainController Fqdn This parameter is available only in on-premises Exchange.
-Subject String The Subject parameter specifies the content of the subject field of the new email message.
-WhatIf SwitchParameter The WhatIf switch shows what the command does without making any changes. You don't need to specify a value with this switch.

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