Public/Invoke-GCAnalyticsBotsAggregatesQuery.ps1

<#
.SYNOPSIS
    Queries bot aggregate analytics.

.DESCRIPTION
    Executes an analytics query for bot aggregate metrics in Genesys Cloud.
    Returns aggregated bot interaction data such as sessions, turns, and intents.
    Calls POST /api/v2/analytics/bots/aggregates/query.

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

.EXAMPLE
    $query = @{
        interval = '2024-01-01T00:00:00Z/2024-01-02T00:00:00Z'
        granularity = 'PT1H'
        metrics = @('nBotSessions', 'tBotSession')
    }
    Invoke-GCAnalyticsBotsAggregatesQuery -Body $query

.NOTES
    Genesys Cloud API: POST /api/v2/analytics/bots/aggregates/query
#>

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

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