Public/Get-GCRoutingQueues.ps1
|
<# .SYNOPSIS Retrieves a list of routing queues from Genesys Cloud. .DESCRIPTION Queries the Genesys Cloud API to retrieve a paginated list of routing queues. Supports filtering by name and active status, and sorting. API Endpoint: GET /api/v2/routing/queues .PARAMETER PageSize The number of results per page. Default is 25. .PARAMETER PageNumber The page number to retrieve. Default is 1. .PARAMETER SortOrder The sort order for results. Valid values are 'ascending' or 'descending'. .PARAMETER Name Filter queues by name. Supports partial matching. .PARAMETER Active Filter queues by active status. Set to $true for active queues or $false for inactive. .EXAMPLE Get-GCRoutingQueues Retrieves the first page of routing queues with default page size. .EXAMPLE Get-GCRoutingQueues -Name 'Support' -Active $true -PageSize 50 Retrieves active queues matching 'Support' with 50 results per page. .NOTES Genesys Cloud API: GET /api/v2/routing/queues #> function Get-GCRoutingQueues { [CmdletBinding()] param( [Parameter(Mandatory = $false)] [int]$PageSize = 25, [Parameter(Mandatory = $false)] [int]$PageNumber = 1, [Parameter(Mandatory = $false)] [string]$SortOrder, [Parameter(Mandatory = $false)] [string]$Name, [Parameter(Mandatory = $false)] [bool]$Active ) $queryParams = @{ pageSize = $PageSize pageNumber = $PageNumber } if ($SortOrder) { $queryParams['sortOrder'] = $SortOrder } if ($Name) { $queryParams['name'] = $Name } if ($PSBoundParameters.ContainsKey('Active')) { $queryParams['active'] = $Active } $endpoint = "routing/queues" return Invoke-GCApiRequest -Endpoint $endpoint -Method GET -QueryParameters $queryParams } |