Public/Get-GCUserQueues.ps1

<#
.SYNOPSIS
    Retrieves the queues assigned to a user in Genesys Cloud.

.DESCRIPTION
    Queries the Genesys Cloud API to retrieve a paginated list of queues that a specific
    user is a member of.
    API Endpoint: GET /api/v2/users/{userId}/queues

.PARAMETER UserId
    The unique identifier of the user.

.PARAMETER PageSize
    The number of results per page. Default is 25.

.PARAMETER PageNumber
    The page number to retrieve. Default is 1.

.EXAMPLE
    Get-GCUserQueues -UserId '12345678-1234-1234-1234-123456789012'
    Retrieves the first page of queues for the specified user.

.EXAMPLE
    Get-GCUserQueues -UserId '12345678-1234-1234-1234-123456789012' -PageSize 50
    Retrieves queues for the user with 50 results per page.

.NOTES
    Genesys Cloud API: GET /api/v2/users/{userId}/queues
#>

function Get-GCUserQueues {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory = $true)]
        [string]$UserId,

        [Parameter(Mandatory = $false)]
        [int]$PageSize = 25,

        [Parameter(Mandatory = $false)]
        [int]$PageNumber = 1
    )

    $queryParams = @{
        pageSize   = $PageSize
        pageNumber = $PageNumber
    }

    $endpoint = "users/$UserId/queues"
    return Invoke-GCApiRequest -Endpoint $endpoint -Method GET -QueryParameters $queryParams
}