Commands › Microsoft Teams

Set-CsTeamsChannelsPolicy

Microsoft Teams MicrosoftTeams Set-*

The CsTeamsChannelsPolicy allows you to manage features related to the Teams and Channels experience within the Teams application.

Quick start script

# Set-CsTeamsChannelsPolicy — quick start (serv365.ai)
# 1. Connect (app-only shown; interactive: omit the certificate parameters)
Connect-MicrosoftTeams -CertificateThumbprint $thumb -ApplicationId $appId -TenantId $tenantId

# 2. Capture the current state first — you cannot roll back what you never recorded
$before = Get-CsTeamsChannelsPolicy
$before | Format-List

# 3. Make the change (dry run first)
Set-CsTeamsChannelsPolicy  -WhatIf
Set-CsTeamsChannelsPolicy

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

Syntax — 2 parameter sets

Identity (Default)

Set-CsTeamsChannelsPolicy [-Tenant <Guid>] [-AllowOrgWideTeamCreation <Boolean>] [-EnablePrivateTeamDiscovery <Boolean>] [-AllowPrivateChannelCreation <Boolean>] [-AllowUserToParticipateInExternalSharedChannel <Boolean>] [-AllowChannelSharingToExternalUser <Boolean>] [-AllowSharedChannelCreation <Boolean>] [-ThreadedChannelCreation <String>]  [-AllowCreateChannel <String>] [-AllowCreateClassicChannel <String>] [-AllowCreatePrivateChannel <String>] [-AllowCreateSharedChannel <String>][-AllowGuestsFromOutsideTeam <String>] [-AllowGuestsFromOutsideTeamInPrivateChannel <String>] [-AllowSharingPrivateChannelWithTeamInOrg <String>] [-AllowSharingWithTeamInOrg <String>] [-AllowUsersFromOutsideTeam <String>] [-AllowUsersFromOutsideTeamInPrivateChannel <String>] [-CreateSharedChannelsByDefault <String>][-DefaultChannelTypeOnCreation <String>] [[-Identity] <XdsIdentity>] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]

Instance

Set-CsTeamsChannelsPolicy [-Tenant <Guid>] [-AllowOrgWideTeamCreation <Boolean>] [-EnablePrivateTeamDiscovery <Boolean>] [-AllowPrivateChannelCreation <Boolean>] [-AllowUserToParticipateInExternalSharedChannel <Boolean>] [-AllowChannelSharingToExternalUser <Boolean>] [-AllowSharedChannelCreation <Boolean>] [-ThreadedChannelCreation <String>]  [-AllowCreateChannel <String>] [-AllowCreateClassicChannel <String>] [-AllowCreatePrivateChannel <String>] [-AllowCreateSharedChannel <String>][-AllowGuestsFromOutsideTeam <String>] [-AllowGuestsFromOutsideTeamInPrivateChannel <String>] [-AllowSharingPrivateChannelWithTeamInOrg <String>] [-AllowSharingWithTeamInOrg <String>] [-AllowUsersFromOutsideTeam <String>] [-AllowUsersFromOutsideTeamInPrivateChannel <String>] [-CreateSharedChannelsByDefault <String>] [-DefaultChannelTypeOnCreation <String>] [[-Identity] <XdsIdentity>] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>]

Parameters (25)

ParameterTypeRequiredWhat it controls
-AllowChannelSharingToExternalUser Boolean Owners of a shared channel can invite external users to join the channel if Microsoft Entra external sharing policies are configured. If the channel has been shared with an external member or team, they will continue...
-AllowOrgWideTeamCreation Boolean Determines whether a user is allowed to create an org-wide team. Set this to TRUE to allow. Set this FALSE to prohibit.
-AllowPrivateChannelCreation Boolean Determines whether a user is allowed to create a private channel. Set this to TRUE to allow. Set this FALSE to prohibit.
-AllowSharedChannelCreation Boolean Team owners can create shared channels for people within and outside the organization. Only people added to the shared channel can read and write messages.
-AllowUserToParticipateInExternalSharedChannel Boolean Users and teams can be invited to external shared channels if Microsoft Entra external sharing policies are configured. If a team in your organization is part of an external shared channel, new team members will have...
-Confirm SwitchParameter Prompts you for confirmation before running the cmdlet.
-EnablePrivateTeamDiscovery Boolean Determines whether a user is allowed to discover private teams in suggestions and search results. Set this to TRUE to allow. Set this FALSE to prohibit.
-AllowCreateChannel String This setting enables/disables Next Generation Channel creation and editing.
-AllowCreateClassicChannel String This setting enables/disables Classic Channel creation and editing.
-AllowCreatePrivateChannel String This setting enables/disables Next Generation Private Channel creation and editing.
-AllowCreateSharedChannel String This setting enables/disables Next Generation Shared Channel creation and editing.
-AllowGuestsFromOutsideTeam String This setting enables/disables whether guests from outside the team are allowed in Next Generation Channels.
-AllowGuestsFromOutsideTeamInPrivateChannel String This setting enables/disables whether guests from outside the team are allowed in Next Generation Private Channels.
-AllowSharingPrivateChannelWithTeamInOrg String This setting enables/disables sharing Next Generation Private Channels with Teams in the same organization.
-AllowSharingWithTeamInOrg String This setting enables/disables sharing Next Generation Channels with Teams in the same organization.
-AllowUsersFromOutsideTeam String This setting enables/disables whether users from outside the team are allowed in Next Generation Channels.
-AllowUsersFromOutsideTeamInPrivateChannel String This setting enables/disables whether users from outside the team are allowed in Next Generation Private Channels.
-CreateSharedChannelsByDefault String This setting sets whether users are able to create Next Generation Shared Channels by default.
-DefaultChannelTypeOnCreation String This setting sets the default channel type that users will have available.
-Force SwitchParameter Bypass all non-fatal errors.
-Identity XdsIdentity Use this parameter to specify the name of the policy being updated.
-Instance PSObject Use this parameter to pass the policy object output of Get-CsTeamsChannelsPolicy to update that policy.
-Tenant Guid Internal Microsoft use only.
-ThreadedChannelCreation String This setting enables/disables Threaded Channel creation and editing.
-WhatIf SwitchParameter Shows what would happen if the cmdlet runs. The cmdlet is not run.

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