Public/Get-GCAuthorizationRoles.ps1
|
<# .SYNOPSIS Retrieves a list of authorization roles. .DESCRIPTION Returns a paginated list of roles from the Genesys Cloud authorization system. Uses the GET /api/v2/authorization/roles endpoint. .PARAMETER PageSize The number of results per page. Defaults to 25. .PARAMETER PageNumber The page number to retrieve. Defaults to 1. .PARAMETER SortBy The field to sort results by. .PARAMETER SortOrder The sort direction: ascending or descending. .PARAMETER Name Filter roles by name. .PARAMETER Permission Filter roles by permission(s). .EXAMPLE Get-GCAuthorizationRoles .EXAMPLE Get-GCAuthorizationRoles -PageSize 50 -Name 'Admin' .EXAMPLE Get-GCAuthorizationRoles -Permission @('admin', 'user') .NOTES Genesys Cloud API: GET /api/v2/authorization/roles #> function Get-GCAuthorizationRoles { [CmdletBinding()] param( [Parameter()] [int]$PageSize = 25, [Parameter()] [int]$PageNumber = 1, [Parameter()] [string]$SortBy, [Parameter()] [string]$SortOrder, [Parameter()] [string]$Name, [Parameter()] [string[]]$Permission ) $endpoint = "authorization/roles" $queryParams = @{ pageSize = $PageSize pageNumber = $PageNumber } if ($SortBy) { $queryParams['sortBy'] = $SortBy } if ($SortOrder) { $queryParams['sortOrder'] = $SortOrder } if ($Name) { $queryParams['name'] = $Name } if ($Permission) { $queryParams['permission'] = $Permission -join ',' } return Invoke-GCApiRequest -Endpoint $endpoint -Method GET -QueryParameters $queryParams } |