Applies to: Exchange Server 2013

This topic no longer applies to the cloud-based service. It applies only to on-premises Exchange 2013. To see the current version of the topic that applies to the cloud-based service, change the (v=exchg.150) value in the URL to (v=exchg.160).

Use the Set-App cmdlet to set configuration properties on an app object.

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

Set-App -Identity <AppIdParameter> [-Confirm [<SwitchParameter>]] [-DefaultStateForUser <Enabled | Disabled | AlwaysEnabled>] [-DomainController <Fqdn>] [-Enabled <$true | $false>] [-Organization <OrganizationIdParameter>] [-OrganizationApp <SwitchParameter>] [-ProvidedTo <Everyone | SpecificUsers>] [-UserList <MultiValuedProperty>] [-WhatIf [<SwitchParameter>]]

This example changes the organization app FinanceTestApp, which was installed to everyone in the organization, to be provided to specific users on the finance team and to be enabled by default.

$a= Get-DistributionGroupMember FinanceTeam
Set-App -OrganizationApp -Identity 7a774f0c-7a6f-11e0-85ad-07fb4824019b -ProvidedTo SpecificUsers -UserList $a -DefaultStateForUser Enabled

For more information, see Manage user access to apps for Outlook.

This example disables the organization app FinanceTestApp across the organization and hides it from end user view.

Set-App -OrganizationApp -Identity 7a774f0c-7a6f-11e0-85ad-07fb4824019b -Enabled:$false

For more information, see Manage user access to apps for Outlook.

The Set-App cmdlet can only be used when configuring the availability of an organization app. This task requires that the specified app has already been installed (for example, that the app has been installed with the New-App cmdlet, or that it's a default app for Microsoft Outlook).

Default apps in Microsoft Office Outlook Web App and apps that you've installed for use by users in your organization are known as organization apps. Organization apps can't be removed by end users, but can be enabled or disabled. If an app is an organization app (scope default or organization), the delete control on the toolbar is disabled for end users. Administrators are able to remove organization apps. Administrators can't remove default apps, but they can disable them for the entire organization.

You need to be assigned permissions before you can run this cmdlet. Although all parameters for this cmdlet are listed in this topic, you may not have access to some parameters if they're not included in the permissions assigned to you. To see what permissions you need, see the "Apps for Outlook" entry in the Recipients Permissions topic.


Parameter Required Type Description




The Identity parameter specifies the GUID of the app.




The Confirm switch causes the command to pause processing and requires you to acknowledge what the command will do before processing continues. You don't have to specify a value with the Confirm switch.




The DefaultStateForUser parameter specifies the default initial state of the organization app for the provided users. This parameter is set to Disabled by default. If set to AlwaysEnabled, users can't disable the app for themselves. You must use the OrganizationApp parameter when you use this parameter.

The possible values are:

  • Enabled

  • Disabled

  • AlwaysEnabled




This parameter is available only in on-premises Exchange 2013.

The DomainController parameter specifies the fully qualified domain name (FQDN) of the domain controller that writes this configuration change to Active Directory.




The Enabled parameter specifies whether the app is made available to users in the organization. By default, this is set to $true.

This setting overrides the ProvidedTo, UserList, and DefaultStateForUser settings. This setting doesn't prevent users from installing their own instance of the app if the users have install permissions.
The following are the possible values:
  • $true   App is enabled for the specified users in the organization. This makes the app available for the specified users.

  • $false   App isn't enabled for any users in the organization. This hides the app from user view for all users in the organization.




This parameter is reserved for internal Microsoft use.




The OrganizationApp parameter specifies that the scope of the app is organizational. This is set to $false by default.




The ProvidedTo parameter specifies the availability of an app in your organization. By default, new apps are available to all users in your organization. You must use the OrganizationApp parameter when you use this parameter. The following are the possible values:

  • Everyone   This app is provided to every user in the organization. Every user sees this app listed in the installed apps list in Outlook Web App Options. When apps in the installed apps list display as enabled, the users are able to use the features of this app in their email. All users are blocked from installing their own instances of this app, including but not limited to users with install apps permissions.

  • SpecificUsers   This app is provided to only the users specified using the UserList parameter. Users that aren't specified don't see this organizational app in their management view, nor does it activate in their mail or calendar items. Specified users are also blocked from installing their own instance of this app. Users that aren't listed aren't blocked from installing their own instance of this app.




The UserList parameter specifies the list of users granted access to the organizational app. Use the UserList parameter to specify the users that you want to use the app.You must use the OrganizationApp parameter when you use this parameter. You can use the following values:

  • GUID

  • Distinguished name (DN)

  • Domain\Account

  • User principal name (UPN)

  • Legacy Exchange DN

  • SMTP Address

  • Alias




The WhatIf switch instructs the command to simulate the actions that it would take on the object. By using the WhatIf switch, you can view what changes would occur without having to apply any of those changes. You don't have to specify a value with the WhatIf 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.