Public/Roles/Get-MMRole.ps1
|
# Get-MMRole.ps1 — Получение ролей MatterMost по ID, имени, списку имён или всех сразу function Get-MMRole { <# .SYNOPSIS Returns a MatterMost role by ID, name, list of names, or all roles. .EXAMPLE Get-MMRole -All .EXAMPLE Get-MMRole -RoleId 'abc123' .EXAMPLE Get-MMRole -Name 'system_admin' .EXAMPLE Get-MMRole -Names 'system_admin', 'system_user', 'team_admin' #> [OutputType('MMRole')] [CmdletBinding(DefaultParameterSetName = 'All')] param( [Parameter(ParameterSetName = 'All')] [switch]$All, [Parameter(Mandatory, ParameterSetName = 'ById')] [string]$RoleId, [Parameter(Mandatory, ParameterSetName = 'ByName', Position = 0)] [string]$Name, [Parameter(Mandatory, ParameterSetName = 'ByNames')] [string[]]$Names ) switch ($PSCmdlet.ParameterSetName) { 'All' { Invoke-MMRequest -Endpoint 'roles' | ConvertTo-MMRole } 'ById' { Invoke-MMRequest -Endpoint "roles/$RoleId" | ConvertTo-MMRole } 'ByName' { Invoke-MMRequest -Endpoint "roles/name/$Name" | ConvertTo-MMRole } 'ByNames' { Invoke-MMRequest -Endpoint 'roles/names' -Method POST -Body $Names | ConvertTo-MMRole } } } |