Applies to: Exchange Online, Exchange Online Protection

This cmdlet is available only in the cloud-based service.

Use the Validate-OutboundConnector cmdlet to test the settings of Outbound connectors in Office 365.

For information about the parameter sets in the Syntax section below, see Syntax.

Validate-OutboundConnector -Identity <OutboundConnectorIdParameter> -Recipients <MultiValuedProperty> [-Confirm [<SwitchParameter>]] [-WhatIf [<SwitchParameter>]]

This example tests the Outbound connector named Outbound Connector.

Validate-OutboundConnector -Identity " Outbound Connector" -Recipients,

The Validate-OutboundConnector cmdlet performs two tests on the specified connector:

  • SMTP connectivity to each smart host that's defined on the connector.

  • Send test email messages to one or more recipients in the domain that's configured on the connector.

You need to be assigned permissions before you can run this cmdlet. Although this topic lists all parameters for the cmdlet, you may not have access to some parameters if they're not included in the permissions assigned to you. To find the permissions required to run any cmdlet or parameter in your organization, see Find the permissions required to run any Exchange cmdlet.


Parameter Required Type Description




The Identity parameter specifies the Outbound connector that you want to test. You can use any value that uniquely identifies the connector. For example:

  • Name

  • Distinguished name

  • GUID




The Recipients parameter specifies one or more email addresses to send a test message to. The email addresses need to be in the domain that's configured on the connector.

To enter multiple values, use the following syntax: <value1>,<value2>.... If the values contain spaces or otherwise require quotation marks, use the following syntax: "<value1>","<value2>"....




The Confirm switch specifies whether to show or hide the confirmation prompt. How this switch affects the cmdlet depends on if the cmdlet requires confirmation before proceeding.

  • Destructive cmdlets (for example, Remove-* cmdlets) have a built-in pause that forces you to acknowledge the command before proceeding. For these cmdlets, you can skip the confirmation prompt by using this exact syntax: -Confirm:$false.

  • Most other cmdlets (for example, New-* and Set-* cmdlets) don't have a built-in pause. For these cmdlets, specifying the Confirm switch without a value introduces a pause that forces you acknowledge the command before proceeding.




The WhatIf switch simulates the actions of the command. You can use this switch to view the changes that would occur without actually applying those changes. You don't need to specify a value with this switch.

To see the input types that this cmdlet accepts, see Cmdlet Input and Output Types. If the Input Type field for a cmdlet is blank, the cmdlet doesn’t accept input data.

To see the return types, which are also known as output types, that this cmdlet accepts, see Cmdlet Input and Output Types. If the Output Type field is blank, the cmdlet doesn’t return data.