Public/Invoke-GCAnalyticsQueuesObservationsQuery.ps1

<#
.SYNOPSIS
    Queries queue observation analytics.

.DESCRIPTION
    Executes an analytics query for queue observation metrics in Genesys Cloud.
    Returns real-time queue statistics such as active, waiting, and interacting counts.
    Calls POST /api/v2/analytics/queues/observations/query.

.PARAMETER Body
    The mandatory request body containing the analytics query definition including filter,
    metrics, and detailMetrics.

.EXAMPLE
    $query = @{
        filter = @{
            type = 'or'
            predicates = @(
                @{ dimension = 'queueId'; value = 'queue-id-here' }
            )
        }
        metrics = @('oWaiting', 'oInteracting', 'oOnQueueUsers')
    }
    Invoke-GCAnalyticsQueuesObservationsQuery -Body $query

.NOTES
    Genesys Cloud API: POST /api/v2/analytics/queues/observations/query
#>

function Invoke-GCAnalyticsQueuesObservationsQuery {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory = $true)]
        [object]$Body
    )

    $endpoint = "analytics/queues/observations/query"
    return Invoke-GCApiRequest -Endpoint $endpoint -Method POST -Body $Body
}