Exchange Management Shell

Find information about how to use the Exchange Management Shell to develop tools for Exchange server administration.

Applies to: Exchange Online | Exchange Server 2013 | Office 365

The Exchange Management Shell provides a rich set of commands, based on the Windows PowerShell platform, for managing Exchange Online, Exchange Online as part of Office 365, or an on-premises version of Exchange starting with Exchange 2013. You can use the Exchange Management Shell to create two kinds of tools: command-line scripts that work within the Windows PowerShell environment, and tools that use the Exchange Management Shell cmdlets through a managed interface. You can use managed applications to create a standard Windows or web-based UI to administer an Exchange server.

What you need to know about the Exchange Management Shell

If you're wondering about Read this
Exchange Management Shell commands are installed on all servers running versions of Exchange starting with Exchange 2007.
Client applications can be deployed on any computer running Windows PowerShell 2.0.
For information about accessing the shell, see Exchange Server PowerShell (Exchange Management Shell).
Languages and tools
You can create Exchange Management Shell scripts in any text editor.
You can use one of many third-party tools for creating Windows PowerShell scripts that can be used with the Exchange Management Shell.
The Exchange Management Shell object model is based on the .NET Framework.
You can use any .NET language to develop Exchange Management Shell applications.
Available test and debug tools
You can use one of many third-party applications to test and debug Exchange Management Shell scripts.
You can use Visual Studio and third-party tools to test and debug managed Exchange Management Shell applications.
Server platform requirements
You can use the Exchange Management Shell on any Exchange server that has Windows PowerShell 2.0 installed.
Client platform requirements
Exchange Management Shell client applications require Windows PowerShell 2.0.
Running an Exchange Management Shell application requires that the user have role-based access control rights to the affected data on the Exchange store.
For more information about role-based access control, see Understanding Role Based Access Control.

The articles in this section describe Exchange Management Shell features that are important for creating Exchange management tools. For information about planning, configuring, or maintaining Exchange, see the Exchange site.

In this section

See also