PowerShell-scripts voor Microsoft Teams

Veel Teams-beheer doe je sneller met PowerShell dan in het beheercentrum: tientallen teams overlopen, leden toevoegen of een rapport maken. Hier vind je 20 korte scripts die je dagelijks kunt gebruiken, telkens met een woordje uitleg.

Bijgewerkt op 20 oktober 2026. Alle voorbeelden gebruiken de huidige MicrosoftTeams-module. De oude Skype for Business Online-connector bestaat niet meer; de Cs-cmdlets zitten nu in dezelfde module.

Voorbereiden

Je hebt een beheerdersrol nodig, zoals Teams-beheerder. Vervang <GroupId> telkens door het ID van je team (zie script 3).

1. Module installeren en verbinden

Install-Module -Name MicrosoftTeams -Scope CurrentUser
Connect-MicrosoftTeams

Meer uitleg: de Teams PowerShell-module installeren.

2. De module bijwerken

Update-Module -Name MicrosoftTeams

Teams beheren

3. Alle teams opvragen met hun ID

Get-Team | Select-Object DisplayName, GroupId, Visibility, Archived

4. Eén team zoeken op naam

Get-Team -DisplayName "Marketing"

5. Een nieuw team maken

New-Team -DisplayName "Project X" -Description "Team voor project X" -Visibility Private

6. Naam of beschrijving wijzigen

Set-Team -GroupId <GroupId> -DisplayName "Project X - fase 2"

7. Een team archiveren

Set-TeamArchivedState -GroupId <GroupId> -Archived $true

8. Een team uit het archief halen

Set-TeamArchivedState -GroupId <GroupId> -Archived $false

9. Alle gearchiveerde teams tonen

Get-Team -Archived $true | Select-Object DisplayName, GroupId

10. Een team verwijderen

Remove-Team -GroupId <GroupId>

Let op: daarmee verdwijnen ook de Microsoft 365-groep, de SharePoint-site en de mailbox. Een verwijderde groep kun je nog 30 dagen herstellen.

Leden beheren

11. Leden en eigenaars van een team tonen

Get-TeamUser -GroupId <GroupId>

12. Een lid toevoegen

Add-TeamUser -GroupId <GroupId> -User "jan@jouwdomein.be"

13. Een eigenaar toevoegen

Add-TeamUser -GroupId <GroupId> -User "an@jouwdomein.be" -Role Owner

14. Een lid verwijderen

Remove-TeamUser -GroupId <GroupId> -User "jan@jouwdomein.be"

15. Alle teams van één gebruiker

Get-Team -User "jan@jouwdomein.be" | Select-Object DisplayName

Kanalen beheren

16. Alle kanalen van een team tonen

Get-TeamChannel -GroupId <GroupId> | Select-Object DisplayName, MembershipType

17. Een standaard- of privékanaal maken

New-TeamChannel -GroupId <GroupId> -DisplayName "Planning"
New-TeamChannel -GroupId <GroupId> -DisplayName "Directie" -MembershipType Private

18. Een kanaal verwijderen

Remove-TeamChannel -GroupId <GroupId> -DisplayName "Planning"

Beleid en rapporten

19. Een vergaderbeleid toewijzen

Get-CsTeamsMeetingPolicy | Select-Object Identity
Grant-CsTeamsMeetingPolicy -Identity "jan@jouwdomein.be" -PolicyName "Extern-Beperkt"

20. Een overzicht van alle teams en hun eigenaars exporteren

Get-Team | ForEach-Object {
  $owners = (Get-TeamUser -GroupId $_.GroupId -Role Owner).User -join "; "
  [PSCustomObject]@{ Team = $_.DisplayName; Eigenaars = $owners; Gearchiveerd = $_.Archived }
} | Export-Csv -Path ".\teams-eigenaars.csv" -NoTypeInformation -Encoding UTF8

Handig om teams zonder eigenaar op te sporen, of om je opkuisactie voor te bereiden.

Tips


Meer over Teams