Public/Users/Get-MMUserToken.ps1
|
# Retrieves personal access tokens for a MatterMost user function Get-MMUserToken { <# .SYNOPSIS Gets personal access tokens. Returns tokens for a user or a single token by ID. .EXAMPLE Get-MMUserToken -UserId 'abc123' .EXAMPLE Get-MMUser -Username 'john' | Get-MMUserToken .EXAMPLE Get-MMUserToken -TokenId 'tok123' #> [CmdletBinding(DefaultParameterSetName = 'ByUser')] [OutputType('MMUserToken')] param( [Parameter(Mandatory, ParameterSetName = 'ByUser', ValueFromPipelineByPropertyName)] [Alias('id', 'user_id')] [string]$UserId, [Parameter(ParameterSetName = 'ByUser')] [int]$Page = 0, [Parameter(ParameterSetName = 'ByUser')] [int]$PerPage = 60, [Parameter(Mandatory, ParameterSetName = 'ById')] [string]$TokenId ) process { if ($PSCmdlet.ParameterSetName -eq 'ById') { Invoke-MMRequest -Endpoint "users/tokens/$TokenId" -Method GET | ConvertTo-MMUserToken } else { Invoke-MMRequest -Endpoint "users/$UserId/tokens?page=$Page&per_page=$PerPage" -Method GET | ForEach-Object { $_ | ConvertTo-MMUserToken } } } } |