Applies to: Office 365 for professionals and small businesses, Office 365 for enterprises, Live@edu
Topic Last Modified: 2012-10-31
Administrators of cloud-based organizations can use Windows PowerShell with Windows Remote Management (WinRM) in the Windows Management Framework to manage recipients and domain settings, and to generate reports or help with troubleshooting. Here's a quick description of the cmdlets that are available to these administrators. You can get more help about how to use individual cmdlets at the command line, as described later in this topic.
Note Not all cmdlets or features are available in all organizations.
To learn how to install and configure Windows PowerShell and connect to the service, see Use Windows PowerShell in Exchange Online.
Currently, Exchange Online administrators can use the following cmdlets. The cmdlets are grouped, first, by management area and, then, by object type.
Use these cmdlets to view, create, configure, and delete recipient objects.
If you have a Microsoft Office 365 e-mail organization, you must assign licenses to new mailboxes or they will be disabled when the grace period ends. For more information, see Assign a License to New Mailboxes in Office 365.
Use these cmdlets to view, create, delete, and configure mailboxes.
| Cmdlet | Description |
|---|---|
| Get-Mailbox | View information about cloud-based mailboxes. |
| New-Mailbox | Create a new user in your organization who has a mailbox in the cloud-based e-mail service. |
| Remove-Mailbox | Delete a mailbox. |
| Get-RemovedMailbox | View deleted mailboxes that can be recovered. |
| Set-Mailbox | Change the settings of an existing mailbox. |
| Undo-SoftDeletedMailbox | This cmdlet is available only for Microsoft Live@edu and Microsoft Office 365 for education organizations.Use the Undo-SoftDeletedMailbox cmdlet to recover a mailbox that has been deleted. Mailboxes can be recovered within 30 days of being deleted. |
Use these cmdlets to view, create, delete, and configure distribution groups, sometimes called "public groups", and security-enabled distribution groups. A distribution group, also called a public group, is a collection of two or more people that appears in the shared address book. For more information, see Distribution Groups.
| Cmdlet | Description |
|---|---|
| Get-DistributionGroup | View information about specified distribution groups or retrieve a list of the distribution groups stored in your shared address book. Distribution groups are sometimes called "public groups". |
| New-DistributionGroup | Create a distribution group. |
| Remove-DistributionGroup | Delete a distribution group. |
| Set-DistributionGroup | Change the properties of an existing distribution group. |
| Add-DistributionGroupMember | Add a recipient to an existing distribution group. |
| Get-DistributionGroupMember | View the members of an existing distribution group. |
| Remove-DistributionGroupMember | Delete a recipient from the membership of a distribution group. |
| Update-DistributionGroupMember | Overwrite the current membership of a distribution group. |
| Get-Group | View all distribution groups, security groups, and role groups in your organization. |
| Set-Group | Change the properties of a group that you can't otherwise change with the Set-DistributionGroup cmdlet. |
Use these cmdlets to view, create, delete, and configure dynamic distribution groups in your organization. Unlike the static membership list of a regular distribution group, the membership list for a dynamic distribution group is calculated every time a message is sent to the group. This calculation is based on filters and conditions you define when you create the group. For more information, see Dynamic Distribution Groups.
| Cmdlet | Description |
|---|---|
| Get-DynamicDistributionGroup | View the settings on an existing dynamic distribution group. |
| New-DynamicDistributionGroup | Create a dynamic distribution group. |
| Remove-DynamicDistributionGroup | Delete a dynamic distribution group. |
| Set-DynamicDistributionGroup | Change the properties of an existing dynamic distribution group. |
Use these cmdlets to view, create, delete, and configure external contacts. External contacts represent people outside your organization who can be displayed in your organization's address book. For more information, see External Contacts in the Address Book.
| Cmdlet | Description |
|---|---|
| Get-MailContact | View information about a specified external contact or contacts. |
| New-MailContact | Create a shared address book listing for an external contact. |
| Remove-MailContact | Delete a contact from the shared address book. |
| Set-MailContact | Change the settings of an existing external contact. |
| Get-Contact | View information about specified contacts or retrieve a list of the contacts stored in your shared address book. |
| Set-Contact | Change the properties of an existing contact. Note: If you want to be able to send e-mail to a contact, use the *-MailContact cmdlets. |
Use these cmdlets to view, create, delete, and configure mail users. A mail user has account in your organization, but doesn't have a mailbox. Instead, the mail user receives e-mail at an external e-mail address. For more information, see Create Mail Users.
| Cmdlet | Description |
|---|---|
| Get-MailUser | View information about mail users in your organization. |
| New-MailUser | Create a new mail user in your organization. |
| Remove-MailUser | Delete an existing mail user. |
| Set-MailUser | Change the settings of an existing mail user. |
| Cmdlet | Description |
|---|---|
| Get-LinkedUser | View information about a linked user account. Linked user accounts are used for authentication in hybrid deployment scenarios and with Exchange Recipient Management Web Services. A user in your organization can be linked to an external user or a certificate. |
| Set-LinkedUser | Change the properties of a linked user account. |
| Get-SecurityPrincipal | List the security principals in your organization. Security principals are entities, such as users or security groups, which can be assigned permissions and user rights. |
| Get-Recipient | View information about e-mail-enabled objects of all types in your organization. Results returned include mailboxes, mail users, contacts, distribution groups, and dynamic distribution groups. |
| Get-User | View information about mailboxes and mail users in your organization. |
| Set-User | Change the properties of an existing mailbox or mail user. |
| New-MailMessage | Create an e-mail message and place the e-mail message in the Drafts folder of a user's mailbox. |
| Test-MAPIConnectivity | Test to verify that a specified mailbox can connect by using the MAPI protocol, which is used by Microsoft Office Outlook. |
Use these cmdlets to provision large numbers of new mailboxes by using a comma separated value (CSV) file. For more information, see Import New Exchange Online Users with a CSV File.
| Cmdlet | Description |
|---|---|
| Get-ProvisioningRequest | View status information about the current provisioning request. A provisioning request creates new cloud-based mailboxes for users specified in a CSV file. |
| New-ProvisioningRequest | Submits a new bulk provisioning request for a batch of users that are identified in a CSV file. The CSV file is checked, and, if it is successfully validated, a provisioning request is created in a paused state. You start the provisioning process by using the Start-ProvisioningRequest cmdlet. |
| Remove-ProvisioningRequest | Stop processing of a bulk provisioning request that is either pending or running. |
| Start-ProvisioningRequest | Starts a pending provisioning request that was created with the New-ProvisioningRequest cmdlet. |
Use these cmdlets to migrate e-mail from an on-premises messaging system to your cloud-based organization. For more information, see E-Mail Migration Overview.
| Cmdlet | Description |
|---|---|
| Get-MigrationBatch | View information about the current e-mail migration batch. |
| New-MigrationBatch | Create a new migration batch to migrate mailbox data from an on-premises IMAP server or Microsoft Exchange messaging system to cloud-based mailboxes. For an IMAP migration, you must create the cloud-based mailboxes before you migrate mailbox data. |
| Remove-MigrationBatch | Deletes a migration batch that isn’t running or has been completed. |
| Set-MigrationBatch | Change the properties of an existing migration batch. |
| Start-MigrationBatch | Start the migration process for a pending e-mail migration batch. |
| Stop-MigrationBatch | Stop processing of a migration batch that is in progress. |
| Test-MigrationServerAvailability | Verifies that you can communicate with the on-premises mail server that houses the mailbox data that you want to migrate to cloud-based mailboxes. |
| Get-MigrationStatus | View information about the overall e-mail migration in progress. |
| Get-MigrationUser | View status information about a single user mailbox or all user mailboxes in the migration batch that’s being processed. |
| Get-MigrationUserStatistics | View status information about the migration of an individual on-premises mailbox to the cloud. |
Use these cmdlets to view, assign, and remove the permissions delegated to users in your domain.
Use these cmdlets to view, create, delete, and modify administrator role groups. A role group is a universal security group with administrative rights assigned to it. For more information, see Administrator Role Groups in Exchange Online.
| Cmdlet | Parameter |
|---|---|
| Get-RoleGroup | View information about specified role groups or retrieve a list of the role groups in your organization. |
| New-RoleGroup | Create a role group. |
| Remove-RoleGroup | Delete a role group. |
| Set-RoleGroup | Change the properties of an existing role group. |
| Add-RoleGroupMember | Add a recipient to an existing role group. |
| Get-RoleGroupMember | View the members of an existing role group. |
| Remove-RoleGroupMember | Delete a recipient from the membership of a role group. |
| Update-RoleGroupMember | Overwrite the current membership of a role group. |
Use these cmdlets to view, create, modify, and delete role assignment policies. A role assignment policy is a collection of one or more end-user management roles that enable users to manage the settings of their accounts and for distribution groups. For more information, see Role Assignment Policies in Exchange Online.
Note In Live@edu organizations, you can't create, delete, or modify the properties of a role assignment policy. However, you can add or remove the end-user roles that are assigned to a role assignment policy.
| Cmdlet | Description |
|---|---|
| Get-RoleAssignmentPolicy | View information about specified role assignment policies or retrieve a list of the role assignment policies in your organization. |
| New-RoleAssignmentPolicy | Create a role assignment policy. |
| Remove-RoleAssignmentPolicy | Delete a role assignment policy. |
| Set-RoleAssignmentPolicy | Change the properties of an existing role assignment policy. |
Use these cmdlets to manage role based access control (RBAC) roles in your organization. You use RBAC to assign capabilities to users. All permissions and capabilities are defined by management roles. A management role, also called an RBAC role or simply a role, defines what someone has access to and what tasks they can perform. For more information, see Role Based Access Control in Exchange Online.
| Cmdlet | Description |
|---|---|
| Get-ManagementRole | View the management roles available in your organization. |
| New-ManagementRole | Create a new management role that is based on an existing role. |
| Remove-ManagementRole | Remove a management role. You can only remove roles that you have created. You can't remove the built-in roles. |
| Get-ManagementRoleAssignment | View the management roles currently assigned to a specific user. |
| New-ManagementRoleAssignment | Assign a new management role to a user. |
| Remove-ManagementRoleAssignment | Remove a management role from a user. |
| Set-ManagementRoleAssignment | Change the settings of a management role assignment, such as the associated management scope. |
| Add-ManagementRoleEntry | Add access to a specific cmdlet and parameters to an existing management role. |
| Get-ManagementRoleEntry | View the cmdlets and parameters available to an existing management role. |
| Remove-ManagementRoleEntry | Remove access to a cmdlet from an existing management role. |
| Set-ManagementRoleEntry | Add or remove access to a parameter. |
| Get-ManagementScope | View the management scopes defined for your organization. A management scope determines the objects that are available to a user. For example, the management scope for a typical user is limited to his or her account. The management scope for an organization administrator is all objects in the domain. |
| New-ManagementScope | Define a new management scope. |
| Remove-ManagementScope | Remove a management scope. You can only remove management scopes that you defined. |
| Set-ManagementScope | Change the definition for an existing management scope. |
Use these cmdlets to view, grant, and revoke mailbox permissions and mailbox folder permissions.
| Cmdlet | Description |
|---|---|
| Add-MailboxPermission | Grant a user permission to access another user's mailbox. |
| Get-MailboxPermission | View the permissions that are assigned to a user's mailbox. |
| Remove-MailboxPermission | Remove permissions from a user to remove access to another user's mailbox. |
| Add-MailboxFolderPermission | Grant a user permission to access a folder in another user's mailbox. For example, you can give a user permission to manage another user's calendar. The target folder is specified in this format: alias:\foldername. |
| Get-MailboxFolderPermission | View the permissions that are assigned to a specific folder in a user's mailbox. |
| Set-MailboxFolderPermission | Change the permissions that are assigned to a specific folder in a user's mailbox. |
| Remove-MailboxFolderPermission | Remove permissions from a user to remove access to a specific folder in another user's mailbox. |
Use these cmdlets to view, grant, and revoke Send As permissions. Send As permission, also known as SendAs permission, gives a user permission to use another recipient's e-mail address in the From address. For more information, see Give Users Send As Permission.
| Cmdlet | Description |
|---|---|
| Add-RecipientPermission | Give Send As permission to users. |
| Get-RecipientPermission | View Send As permission given to users. |
| Remove-RecipientPermission | Revoke Send As permission from users. |
Use these cmdlets to help your organization comply with legal or business requirements.
Use these cmdlets to search the mailboxes in your organization for e-mail and other message types that contain specific keywords. These cmdlets are defined in the Mailbox Search role only and should be assigned to discovery managers. To use the mailbox search cmdlets, you must be a member of the Discovery Management role group. Learn more at Give Users Access to Multi-Mailbox Search.
| Cmdlet | Description |
|---|---|
| Get-MailboxSearch | View multi-mailbox searches that are in progress, complete, or stopped. |
| New-MailboxSearch | Create a new multi-mailbox search. You define the search parameters with this cmdlet, but you actually run the search with the Start-MailboxSearch cmdlet. |
| Remove-MailboxSearch | Remove a multi-mailbox search. |
| Search-Mailbox | Search a mailbox and copy the results to a specified target mailbox, delete messages from the source mailbox, or both. Note This cmdlet is also available in the Mailbox Import Export role. By default, the Mailbox Import Export role isn't assigned to any role groups. |
| Set-MailboxSearch | Change the properties of an existing multi-mailbox search. |
| Start-MailboxSearch | Start or resume an existing multi-mailbox search you created using the New-MailboxSearch cmdlet. |
| Stop-MailboxSearch | Stop a multi-mailbox search that's in progress. |
Use these cmdlets to view, configure, create, and remove transport rules. You can use transport rules to control the flow of e-mail messages in your organization. You define specific message attributes, or conditions, and the actions you want applied to any message that contain those attributes. Learn more at Organization-Wide Rules.
| Cmdlet | Description |
|---|---|
| Disable-TransportRule | Disable a transport rule. |
| Enable-TransportRule | Enable a transport rule. |
| Get-TransportRule | View information about specified transport rules or retrieve a list of the transport rules in your organization. |
| New-TransportRule | Create a transport rule. |
| Remove-TransportRule | Delete a transport rule. |
| Set-TransportRule | Change the properties of a transport rule. |
| Get-TransportRuleAction | View information about specified transport rule actions or retrieve a list of all the available transport rule actions in your organization. |
| Get-TransportRulePredicate | View information about specified transport rule predicates or retrieve a list of all the available transport rule predicates in your organization. You can use transport rule predicates as conditions or exceptions in transport rules. |
Use these cmdlets to view and configure supervision policies in Live@edu organizations. Supervision policies control who can send e-mail to and receive e-mail from the users in your organization, and filter and reject e-mail that contains objectionable words. For more information, see Supervision Policies.
Note Supervision policies aren't available in Microsoft Office 365.
| Cmdlet | Description |
|---|---|
| Add-SupervisionListEntry | Add an entry to the Allow list or Reject list of a specified user. |
| Get-SupervisionListEntry | View the Allow entry and Reject entry defined for a specified user. |
| Remove-SupervisionListEntry | Remove an entry from a specified user's Allow list or Reject list. |
| Get-SupervisionPolicy | View the settings of the supervision policies for your organization. |
| Set-SupervisionPolicy | Configure the settings of a supervision policy. |
Use these cmdlets to view and configure information rights management (IRM) features in your organization. IRM provides persistent protection to control who can access, forward, print, or copy sensitive data within an e-mail message. For more information, see Set Up and Manage Information Rights Management in Exchange Online.
| Cmdlet | Description |
|---|---|
| Get-IRMConfiguration | View the IRM configuration in your organization. |
| Set-IRMConfiguration | Change the properties of the IRM configuration in your organization. |
| Test-IRMConfiguration | Test the functionality of the IRM configuration in your organization. |
| Get-RMSTemplate | View information about specified Microsoft Active Directory Rights Management Services (AD RMS) rights policy templates or retrieve a list of the AD RMS rights policy templates in your organization. |
| Set-RMSTemplate | Change the properties of an existing AD RMS rights policy template. |
| Get-RMSTrustedPublishingDomain | View the settings of an existing trusted publishing domain (TPD) in your organization. A trusted publishing domain contains the settings needed to use RMS features in your organization. For example, users can apply AD RMS rights policy templates to e-mail messages. |
| Import-RMSTrustedPublishingDomain | Import a trusted publishing domain from an on-premises server running AD RMS into your organization. |
| Remove-RMSTrustedPublishingDomain | Remove an existing trusted publishing domain that you've imported into your organization. |
| Set-RMSTrustedPublishingDomain | Change the properties of an existing trusted publishing domain in your organization. |
Use these cmdlets to view and configure Outlook protection rules. Outlook protection rules are administrator-created rules applied before a user sends a message using Outlook. Outlook protection rules automatically apply a Microsoft Active Directory Rights Management Services (AD RMS) policy template to the message before the message is sent.
| Cmdlet | Description |
|---|---|
| Disable-OutlookProtectionRule | Disable an Outlook protection rule. |
| Enable-OutlookProtectionRule | Enable an Outlook protection rule. |
| Get-OutlookProtectionRule | View information about specified Outlook protection rules or retrieve a list of the Outlook protection rules in your organization. |
| New-OutlookProtectionRule | Create an Outlook protection rule. |
| Remove-OutlookProtectionRule | Delete an Outlook protection rule. |
| Set-OutlookProtectionRule | Change the properties of an Outlook protection rule. |
Use these cmdlets to view, create, remove, and configure retention policies in your organization. A retention policy is associated with a group of retention policy tags that specify retention settings for items in a mailbox. A policy may contain one default retention policy tag and multiple non-default retention policy tags. A mailbox can have only one retention policy applied to it. For more information, see Set Up and Manage Retention Policies in Exchange Online with Windows PowerShell.
| Cmdlet | Description |
|---|---|
| Get-RetentionPolicy | View information about specified retention policies or retrieve a list of the retention policies in your organization. |
| New-RetentionPolicy | Create a retention policy. |
| Remove-RetentionPolicy | Delete a retention policy. |
| Set-RetentionPolicy | Change the properties of a retention policy. |
| Get-RetentionPolicyTag | View information about specified retention policy tags or retrieve a list of the retention policy tags in your organization. Retention policy tags are used to apply message retention settings to messages or folders. |
| New-RetentionPolicyTag | Create a retention policy tag. |
| Remove-RetentionPolicyTag | Delete a retention policy tag. |
| Set-RetentionPolicyTag | Change the properties of a retention policy tag. |
| Start-ManagedFolderAssistant | Immediately implement the retention policies configured on a specified mailbox. |
Use these cmdlets to view, create, remove, and configure message classifications in your organization. After you create message classifications, users can apply them to messages using Outlook Web App, or you can apply them to messages using transport rules. You can also use classifications as conditions or exceptions in transport rules.
| Cmdlet | Description |
|---|---|
| Get-MessageClassification | View information about specified message classifications or retrieve a list of the message classifications in your organization. |
| New-MessageClassification | Create a message classification. |
| Remove-MessageClassification | Delete a message classification. |
| Set-MessageClassification | Change the properties of a message classification. |
Use these cmdlets to view and configure archiving and journaling settings for your organization. For more information, see the following topics:
Note Archiving isn't available in Live@edu organizations.
| Cmdlets | Description |
|---|---|
| Disable-Mailbox | Disable the archive for an existing mailbox using the Archive parameter. |
| Enable-Mailbox | Enable an archive for an existing mailbox using the Archive parameter. |
| Disable-JournalRule | Disable a journal rule. Journal rules are used to record, or "journal", the e-mail messages sent to or from specific recipients. When a message matches the criteria defined by the journal rule, that message is journaled. |
| Enable-JournalRule | Enable a journal rule. |
| Get-JournalRule | View information about specified journal rules or retrieve a list of the journal rules in your organization. |
| New-JournalRule | Create a journal rule. |
| Remove-JournalRule | Delete a journal rule. |
| Set-JournalRule | Change the properties of a journal rule. |
Use these cmdlets to view reports and statistics for your organization.
Use these cmdlets to configure audit logging, and to view the audit logs. Audit logging records specific actions performed by specific users. For more information, see Use Audit Logging to Record User Actions.
| Cmdlet | Description |
|---|---|
| Search-AdminAuditLog | Search the contents of the administrator audit log. |
| Write-AdminAuditLog | Add comments to the administrator audit log. |
| Get-AdminAuditLogConfig | View configuration settings for the current administrator audit logging. |
| New-AdminAuditLogSearch | Search the contents of the administrator audit log and send the results to the recipients you specify. |
| Get-MailboxAuditBypassAssociation | View the accounts that bypass mailbox audit logging. |
| Set-MailboxAuditBypassAssociation | Specify accounts that bypass mailbox audit logging. For example, you can specify service accounts that frequently access mailboxes to reduce the noise in mailbox audit logs. |
| Search-MailboxAuditLog | Search the contents of the mailbox audit log. |
| New-MailboxAuditLogSearch | Search the contents of the mailbox audit log and send the results to the recipients you specify. |
Use these cmdlets track delivery information about messages sent by or received from any specific mailbox in your organization. For more information, see Delivery Reports for Administrators.
| Cmdlet | Description |
|---|---|
| Get-MessageTrackingReport | Return the data for a specific message tracking report. This cmdlet requires you to specify the ID for the message tracking report you want to view. Therefore, first you need to use the Search-MessageTrackingReport cmdlet to find the message tracking report ID for a specific message. You then pass the message tracking report ID from the output of the Search-MessageTrackingReport cmdlet to the Get-MessageTrackingReport cmdlet. |
| Search-MessageTrackingReport | Find the unique message tracking report based on the search criteria provided. You can then pass this message tracking report ID to the Get-MessageTrackingReport cmdlet to get full message tracking information. |
| Cmdlet | Description |
|---|---|
| Get-FailedContentIndexDocuments | View the list of documents in a mailbox that couldn't be indexed by Exchange Search. |
| Get-LogonStatistics | View information about open logon sessions to a specified mailbox, such as user name, logon time, and last access time. A user must sign out to close a logon session; therefore multiple sessions may appear for users who just close their browser. |
| Get-MailboxFolderStatistics | View information about the folders in a specified mailbox, including the number and size of items in the folder, the folder name and ID, and other information. |
| Get-MailboxStatistics | View information about a specified mailbox, such as the size of the mailbox, the number of messages it contains, and the last time that it was accessed. |
| Get-RecipientStatisticsReport | View information about the total number of recipients in your organization, including the number of mailboxes, active mailboxes, contacts, and distribution groups. |
Use these cmdlets to view and configure the settings of internal and external domains that are defined in your organization.
Use these cmdlets to view and configure accepted domains. An accepted domain is any SMTP namespace for which a cloud-based e-mail organization sends or receives e-mail. For more information, see Accepted Domains.
| Cmdlet | Description |
|---|---|
| Get-AcceptedDomain | View the configuration information for all accepted domains or for a specific accepted domain. |
| Set-AcceptedDomain | Configure the settings for an accepted domain that you have enrolled with the cloud-based e-mail service. |
Use these cmdlets to view, create, delete, and configure remote domains. Remote domains define settings for mail flow based on the destination domain of each e-mail message. For more information, see Remote Domains.
| Cmdlet | Description |
|---|---|
| Get-RemoteDomain | View the configuration information for all remote domains or for a specific remote domain. |
| New-RemoteDomain | Create a new remote domain entry so that you can configure message formatting and policy for messages sent to that domain. |
| Remove-RemoteDomain | Remove a remote domain entry. |
| Set-RemoteDomain | Configure the message formatting and policy settings for an existing remote domain entry. |
Use these cmdlets to configure and control how users access the cloud-based e-mail service.
| Cmdlet | Description |
|---|---|
| Get-CASMailbox | View the protocols that are enabled for client connections for one or more mailboxes in your organization. |
| Set-CASMailbox | Configure the client access connection protocols that are enabled for a specific mailbox. |
| Get-CASMailboxPlan | View the default client access settings that are applied to new mailboxes in your organization. |
| Get-OWAMailboxPolicy | View the policies that can be applied to mailboxes that connect by using Outlook Web App and the settings configured for those policies. |
| Get-MailboxPlan | View information about the mailbox plans available to your organization and their settings. A mailbox plan is a user provisioning template. |
| Set-MailboxPlan | Change the display name of a mailbox plan, or set an alternative mailbox plan as the default. |
| New-OWAMailboxPolicy | Create a new policy that can be applied to mailboxes in your organization to enforce the settings of Outlook Web App connections. |
| Remove-OWAMailboxPolicy | Remove an existing policy that is used to enforce the settings of Outlook Web App connections. |
| Set-OwaMailboxPolicy | Configure the settings of an existing policy that is applied to mailboxes in your organization to enforce the settings of Outlook Web App connections. |
Use these cmdlets to view and configure organization-wide settings.
| Cmdlet | Description |
|---|---|
| Get-OrganizationConfig | View information about various settings in your organization. |
| Set-OrganizationConfig | Configure various settings in your organization. |
| Get-TransportConfig | View transport configuration settings such as the language in which Delivery Status Notifications (DSN) are sent. |
| Set-TransportConfig | Change transport configuration settings such as DSN language. |
This cmdlet is assigned to the ApplicationImpersonation RBAC role, and it uses Microsoft Exchange Web Services (EWS) to allow programmatic access to Exchange Online mailboxes. For more information, see this MSDN topic.
| Cmdlet | Description |
|---|---|
| Impersonate-ExchangeUser | Gives a designated service account programmatic access to user mailboxes. |
Use these cmdlets to view and configure federated delegation and hybrid deployment features for your organization.
Use these cmdlets to view and configure federated delegation settings for your domain. Federated delegation, also known as federated sharing, uses the Microsoft Federation Gateway, a cloud-based identity service offered by Microsoft, as the trust broker between your on-premises Exchange Server 2010 organization and your cloud-based e-mail organization. For more information, see Configure Federated Delegation in the Cloud.
| Cmdlet | Description |
|---|---|
| Get-FederatedOrganizationIdentifier | View your organization's federated organization identifier and related details, such as federated domains, organization contact, and status. |
| Set-FederatedOrganizationIdentifier | Configure your organization's federated organization identifier. |
| Get-FederationInformation | View federation information, including federated domain names and target URLs, from an external Exchange organization. |
| Get-FederationTrust | View the federation trusts configured for the organization. |
| Get-OrganizationRelationship | View settings for a federated delegation relationship for free/busy sharing or secure message delivery between organizations. |
| New-OrganizationRelationship | Create a federated delegation relationship between organizations. |
| Remove-OrganizationRelationship | Remove a federated delegation relationship between organizations. |
| Set-OrganizationRelationship | Configure a federated delegation relationship between organizations. |
| Test-OrganizationRelationship | Verify the federated delegation relationship between organizations is properly configured and functioning as expected. |
Use these cmdlets to view and configure sharing policies. Sharing policies regulate how users inside your organization can share calendar and contact information with users outside the organization.
| Cmdlet | Description |
|---|---|
| Get-SharingPolicy | View information about specified sharing policies or retrieve a list of the sharing policies in your organization. |
| New-SharingPolicy | Create a new sharing policy. |
| Remove-SharingPolicy | Delete a sharing policy. Before you can delete a sharing policy, you need to verify the policy isn't assigned to any mailboxes. |
| Set-SharingPolicy | Modify the settings of an existing sharing policy. |
Use these cmdlets to view and configure the free/busy availability information that your organization shares with other organizations.
| Cmdlet | Description |
|---|---|
| Add-AvailabilityAddressSpace | Define the access method and associated credentials used to exchange free/busy information between organizations. |
| Get-AvailabilityAddressSpace | View details about how your Exchange organization is configured in regard to the exchange of free/busy information between organizations. |
| Remove-AvailabilityAddressSpace | Remove a previously defined availability address space and the associated credentials used in requests for free/busy information between organizations. |
| Get-AvailabilityConfig | View the accounts that are trusted in the exchange of free/busy information between organizations. |
| New-AvailabilityConfig | Create an exchange of free/busy information between organizations. |
| Remove-AvailabilityConfig | Remove a previously configured exchange of free/busy information between organizations. |
| Set-AvailabilityConfig | Configure the access level for free/busy information. |
Use these cmdlets to move mailboxes between your cloud-based organization and your on-premises Exchange organization. Moving mailboxes between the cloud and an on-premises organization requires hybrid deployment. For more information, see Exchange Hybrid Deployment and Migration with Office 365.
| Cmdlets | Description |
|---|---|
| Get-MoveRequest | View the status of an ongoing mailbox move that was initiated by the New-MoveRequest cmdlet. |
| New-MoveRequest | Create a new mailbox move. |
| Remove-MoveRequest | Cancel a mailbox move that was initiated by the New-MoveRequest cmdlet. |
| Resume-MoveRequest | Resume a suspended or failed move request. |
| Set-MoveRequest | Change the properties of an existing move request. |
| Suspend-MoveRequest | Suspend a move request before it reaches the status of CompletionInProgress. |
| Get-MoveRequestStatistics | View detailed information about move requests. |
Use these cmdlets to view and configure users' mailbox settings available in Outlook Web App > Options. To access a user's Options page, see Access Another User's Options Page.
| Cmdlet | Description |
|---|---|
| Get-CalendarNotification | View the calendar notification rules in a user's mailbox. Users can receive text message notifications of changes to calendar events and daily agendas. |
| Get-CalendarProcessing | View the calendar processing settings for the specified mailbox. Typical values are AutoUpdate for user mailboxes and AutoAccept for room or equipment mailboxes. |
| Set-CalendarProcessing | Change the calendar processing settings for the specified mailbox. You also configure all the resource settings for a room or equipment mailbox. |
| Disable-InboxRule | Disable an Inbox rule in a user's mailbox. Inbox rules process messages in the Inbox based on conditions specified and take actions such as moving a message to a specified folder or deleting a message. Note When you create, modify, remove, enable, or disable an Inbox rule, any client-side rules created by Microsoft Outlook are removed. |
| Enable-InboxRule | Enable an Inbox rule in a user's mailbox. |
| Get-InboxRule | View information about specified Inbox rules or retrieve a list of the Inbox rules in a user's mailbox. |
| New-InboxRule | Create an Inbox rule in a user's mailbox. |
| Remove-InboxRule | Delete an Inbox rule in a user's mailbox. |
| Set-InboxRule | Change the properties of an Inbox rule in a user's mailbox. |
| Get-MailboxAutoReplyConfiguration | View Automatic Replies settings for a user's mailbox. |
| Set-MailboxAutoReplyConfiguration | Configure Automatic Replies settings for a user's mailbox. |
| Get-MailboxCalendarConfiguration | View the calendar settings for a user's mailbox. |
| Set-MailboxCalendarConfiguration | Configure a user's calendar settings. These settings affect how the user's calendar looks and how reminders work in Outlook Web App. These settings also define how meeting invitations, responses, and notifications are sent to the user. |
| Get-MailboxCalendarFolder | View information for the user's calendar folder. This information includes the calendar folder name, whether the folder is currently published or shared, the start and end range of calendar days published, the level of details published for the calendar, whether the published URL of the calendar can be searched on the Web, and the published URL for the calendar. |
| Set-MailboxCalendarFolder | Configure publishing or sharing settings on a calendar folder in a user's mailbox. |
| Get-MailboxJunkEmailConfiguration | View the junk e-mail rule configuration for a user's mailbox. |
| Set-MailboxJunkEmailConfiguration | Configure the junk e-mail rule configuration for a user's mailbox. |
| Get-MailboxMessageConfiguration | View e-mail message settings for a user's mailbox. Settings include the e-mail signature, message format, message options, read receipts, reading pane, and conversations. |
| Set-MailboxMessageConfiguration | Configure e-mail message settings for a user's mailbox. |
| Get-MailboxRegionalConfiguration | View the regional settings for a user's mailbox. Settings include the time zone, time format, date, and language. |
| Set-MailboxRegionalConfiguration | Configure the regional settings for a user's mailbox. |
| Get-MailboxSpellingConfiguration | View the Outlook Web App spell checking settings of a user's mailbox. Settings include the dictionary language and ignoring words containing digits and words in all uppercase. |
| Set-MailboxSpellingConfiguration | Configure the Outlook Web App spell checking settings of a user's mailbox. |
| Get-MessageCategory | View information about specified message categories or retrieve a list of the message categories in a user's mailbox. |
| Get-SendAddress | View the e-mail addresses on a user's mailbox that can be configured as the default From address. Configuring a default From address only makes sense if the user has POP, IMAP, or Hotmail subscriptions configured on their mailbox. You set the user's default From address in the SendAddressDefault parameter on the Set-MailboxMessageConfiguration cmdlet. The user can override the default From address when they create an e-mail message in Outlook Web App. |
| Get-TextMessagingAccount | View a user's short messaging service (SMS) settings. These settings include whether Microsoft Exchange ActiveSync is enabled, the user's country or region ID, mobile operator ID, service provider ID, and notification phone number. |
| Import-ContactList | Import a user's mail contacts to a cloud-based mailbox from a comma separated value (CSV) file. |
| Get-HotmailSubscription | View the settings of a Hotmail subscription that is configured for a specified mailbox. |
| Set-HotmailSubscription | Change the settings of a Hotmail subscription that is configured for a specified mailbox. |
| Get-ImapSubscription | View the IMAP subscription, or connected account, information for a specified mailbox. Use this command to help troubleshoot IMAP connection problems for users. |
| Set-ImapSubscription | Configure the settings of an IMAP subscription for a mailbox. |
| Get-PopSubscription | View the POP subscription information for a specified mailbox. Use this command to help troubleshoot POP connection problems for users. |
| Set-PopSubscription | Configure the settings of a POP subscription for a mailbox. |
| Get-Subscription | View external e-mail account subscriptions for a specified mailbox. Use this command when you are unsure of what kind of subscription a user has configured. |
| Remove-Subscription | Remove a subscription to an external e-mail account from a user's mailbox. |
Use these cmdlets to view and configure the Exchange ActiveSync settings in your organization. For more information, see Manage Exchange ActiveSync for Your Organization.
| Cmdlet | Description |
|---|---|
| Clear-ActiveSyncDevice | Clear the contents of a mobile device that is using Exchange ActiveSync to connect to a mailbox in your organization. This command is typically used when a device is lost or stolen. |
| Get-ActiveSyncDevice | View a list of mobile devices that are using Exchange ActiveSync to connect to mailboxes in your organization. |
| Remove-ActiveSyncDevice | Remove an Exchange ActiveSync connection for a mobile device from a mailbox. You have to know the name of the mobile device and the user's mailbox. |
| Get-ActiveSyncDeviceAccessRule | View the Exchange ActiveSync device access rules you've created with the New-ActiveSyncDeviceAccessRule cmdlet. |
| New-ActiveSyncDeviceAccessRule | Create Exchange ActiveSync device access rules to allow users to synchronize their mailboxes with specific mobile device families or models. |
| Remove-ActiveSyncDeviceAccessRule | Remove existing Exchange ActiveSync device access rules from your organization. |
| Set-ActiveSyncDeviceAccessRule | Configure existing Exchange ActiveSync device access rules. |
| Get-ActiveSyncDeviceClass | View the list of Exchange ActiveSync devices that have connected to mailboxes in your organization. |
| Get-ActiveSyncDeviceStatistics | View the list of mobile phones configured to synchronize with a specified user's mailbox and synchronization statistics for each device. The information returned includes statistics such as the last time synchronization was attempted and the device identification. |
| Get-ActiveSyncMailboxPolicy | View the policies that can be applied to Exchange ActiveSync devices connected to mailboxes in your organization and the settings configured for those policies. |
| New-ActiveSyncMailboxPolicy | Create an Exchange ActiveSync mailbox policy that you can apply to mailboxes in your organization to enforce the settings of connected Exchange ActiveSync devices. |
| Remove-ActiveSyncMailboxPolicy | Remove existing Exchange ActiveSync mailbox policies that enforce the settings of connected Exchange ActiveSync devices. |
| Set-ActiveSyncMailboxPolicy | Configure the settings of an existing policy that is applied to mailboxes in your organization to enforce the settings of connected Exchange ActiveSync devices. |
| Get-ActiveSyncOrganizationSettings | View the Exchange ActiveSync settings for your organization. |
| Set-ActiveSyncOrganizationSettings | Configure the default Exchange ActiveSync settings for your organization. For example, you can set the default access level to allow, block, or quarantine new devices. |
Use these cmdlets to view and configure Unified Messaging (UM) settings in Microsoft Office 365 for enterprises. For more information, see Use Unified Messaging to Connect Exchange to Your Telephone System.
Note Unified Messaging isn't available in Live@edu organizations.
| Cmdlet | Description |
|---|---|
| Disable-UMAutoAttendant | Disable an existing UM auto attendant that's enabled. You can't disable the UM auto attendant if it's linked or associated to the UM hunt group associated with the default UM dial plan. |
| Enable-UMAutoAttendant | Enable an existing UM auto attendant that's disabled. When you create a UM auto attendant, it isn't enabled by default. For the auto attendant to answer incoming calls, you must first enable it. |
| Get-UMAutoAttendant | View information about specified UM auto attendants or retrieve a list of the UM auto attendants in your organization. |
| New-UMAutoAttendant | Create a new UM auto attendant. When you create a new UM auto attendant, it's linked to a single UM dial plan that contains a list of extension numbers. |
| Remove-UMAutoAttendant | Delete a UM auto attendant. This also deletes instances of the UM auto attendant from any associated UM dial plans. When the UM auto attendant is deleted, incoming telephone calls to the configured extensions are no longer answered by the UM auto attendant. |
| Set-UMAutoAttendant | Change the settings of an existing UM auto attendant. Some values for the UM auto attendant can't be changed or modified unless the UM auto attendant is deleted and a new UM auto attendant is created. |
| Export-UMCallDataRecord | Export UM call data records for a specified date to a comma separated value (CSV). You can filter call data records for a specific UM dial plans and UM IP gateways. However, if you don't specify a UM IP gateway, all call data records are returned. |
| Get-UMCallDataRecord | View UM call data records for a specific UM-enabled user's mailbox. |
| Get-UMCallSummaryReport | View the aggregated statistics about all calls received or placed in an organization including voice messages, missed calls, subscriber access, auto attendant, or fax calls. |
| Get-UMDialPlan | View information about specified UM dial plans or retrieve a list of the UM dial plans in your organization. |
| New-UMDialPlan | Create a UM dial plan. |
| Remove-UMDialPlan | Delete a UM dial plan. |
| Set-UMDialPlan | Change the properties of an existing UM dial plan. |
| Get-UMHuntGroup | View information about specified UM hunt groups or retrieve a list of the UM hunt groups in your organization. To view a specific UM hunt group, you need to specify the name of the UM IP gateway that’s associated with the UM hunt group, for example, |
| New-UMHuntGroup | Create a new UM hunt group that's used to link incoming calls to a specific UM dial plan. You need to create a UM hunt group to allow communication between a UM IP gateway and a UM dial plan. |
| Remove-UMHuntGroup | Delete a UM hunt group. The UM hunt group is also removed from the UM IP gateway. |
| Disable-UMIPGateway | Disable a UM IP gateway. The UM IP gateway no longer answers incoming calls or makes outgoing calls. |
| Enable-UMIPGateway | Enable a UM IP gateway. The UM IP gateway answers incoming calls and makes outgoing calls through the IP gateway. |
| Get-UMIPGateway | View information about specified UM IP gateways or retrieve a list of the UM hunt gateways in your organization. |
| New-UMIPGateway | Create a new UM IP gateway. |
| Remove-UMIPGateway | Delete a UM IP gateway. |
| Set-UMIPGateway | Modify the configuration settings of a UM IP gateway. |
| Disable-UMMailbox | Disable UM features for a UM-enabled mailbox. |
| Enable-UMMailbox | Enable UM features for a mailbox. |
| Get-UMMailbox | View the UM information about specified UM-enabled mailboxes or retrieve a list of the UM-enabled mailboxes in your organization. |
| Set-UMMailbox | Modify the UM configuration settings of a UM-enabled mailbox. |
| Get-UMMailboxPIN | View information that's calculated from the PIN data stored in encrypted form in the user's UM-enabled mailbox. This cmdlet also shows whether the mailbox or user access has been locked out. |
| Set-UMMailboxPIN | Reset the PIN for a UM–enabled mailbox. |
| Get-UMMailboxPolicy | View the information about a specified UM mailbox policy or retrieve a list of the UM-mailbox policies in your organization. |
| New-UMMailboxPolicy | Create a new UM mailbox policy. |
| Remove-UMMailboxPolicy | Delete a UM mailbox policy. The UM mailbox policy can't be deleted if it's referenced by any UM-enabled mailboxes. |
| Set-UMMailboxPolicy | Modify the configuration settings of an existing UM mailbox policy. Settings include PIN policies, message text settings, and dialing restrictions. |
| Export-UMPrompt | Export an audio file that's used as a greeting prompt for UM dial plans and auto attendants. |
| Import-UMPrompt | Import a custom audio file so it can be used by UM dial plans and auto attendants. |
You can get help for individual cmdlets at the command line. Use command-line help to identify the parameters that are used with each cmdlet and the appropriate syntax.
Command-line help can return different detail levels of information. Use the following commands to get more targeted help at the command line. Learn more about the Get-Help cmdlet and associated syntax in the Microsoft Exchange Server help: Getting Help. Although this topic refers to the Exchange Management Shell found in on-premises Exchange deployments, the content also applies to the cloud-based e-mail service and Windows PowerShell with WinRM.
| Help command | Description | Example |
|---|---|---|
| Get-Help <cmdlet> | Provides information about the cmdlet usage and syntax. | |
| Get-Help <cmdlet> -Examples | Shows examples of common cmdlet usage. | |
| Get-Help <cmdlet> -Detailed | Provides the cmdlet description, syntax, a full list of parameters and their usage, and examples. | |
Organizations in the cloud have access to a subset of all Exchange management cmdlets. Also, these organizations have access to a subset of all parameters available for those cmdlets. Command-line help doesn't currently differentiate between on-premises and cloud-based deployments. Therefore, you will see some cmdlets and parameters in the command-line help that don't apply to the cloud-based e-mail service.
Generally, you can ignore any parameter that refers to a physical resource. If you get an error message that says that a parameter can't be found or a cmdlet isn't recognized, you are probably trying to use a parameter or cmdlet that isn't allowed for your management role assignment or isn't valid for your organization.
