Forum Discussion
Teams Shared Channel PowerShell, Retrieve Members and Teams
I can retrieve the members of a shared channel via
However when sharing a shared channel there is the option to "share with a team" (which you could be the one you own etc)
I can't see a way to retrieve the list of "teams"
Advice welcome
Thanks
AlistairKeay1 to retrieve the list of teams a for a shared channel, use the https://learn.microsoft.com/en-us/powershell/module/teams/get-sharedwithteam?view=teams-ps command
For example,
Get-SharedWithTeam -HostTeamId id-of-the-team-that-created-the-shared-channel -ChannelId id-of-the-shared-channelIt will return the teams that shared channel is shared with
Also, you can see all the Shared Channels that are shared with a specific team (the reverse lookup of what you are doing) via https://learn.microsoft.com/en-us/powershell/module/teams/get-teamallchannel?view=teams-ps cmlet
3 Replies
- Carl_KarawaniBrass Contributor
AlistairKeay1 to retrieve the list of teams a for a shared channel, use the https://learn.microsoft.com/en-us/powershell/module/teams/get-sharedwithteam?view=teams-ps command
For example,
Get-SharedWithTeam -HostTeamId id-of-the-team-that-created-the-shared-channel -ChannelId id-of-the-shared-channelIt will return the teams that shared channel is shared with
Also, you can see all the Shared Channels that are shared with a specific team (the reverse lookup of what you are doing) via https://learn.microsoft.com/en-us/powershell/module/teams/get-teamallchannel?view=teams-ps cmlet
- AlistairKeay1Brass ContributorFYI what I am trying to do\why is as follows.
Tenant to tenant migration project. Till now shared channels are used from "Target" to "Source".
As we collapse down the source into target I want to make sure the source users, when they logon with their new target account continue to have access to the shared channels.
I have a working script (still in testing phase) which is roughly as follows
Get-UnifiedGroup #get all the teams groups. Get-Team too slow
Loop through each group and
$Channels = Get-TeamChannel -MembershipType Shared
Then loop through each channel and Get-TeamChannelUser
Then loop through each user and identify those users like “*@sourcedomain.com” etc
Map the new user identity to the old. Add-teamchanneluser of the new identity
I just need to work on how to handle the shared with a team logic.
(The source teams are being copied to target using ShareGate) - AlistairKeay1Brass ContributorPerfect _ thanks Karl