Public/New-GCQualityEvaluation.ps1

<#
.SYNOPSIS
    Creates a new quality evaluation for a conversation in Genesys Cloud.

.DESCRIPTION
    Creates a new quality evaluation for a specific conversation using the Genesys Cloud API.
    API Endpoint: POST /api/v2/quality/conversations/{conversationId}/evaluations

.PARAMETER ConversationId
    The unique identifier of the conversation to create an evaluation for.

.PARAMETER Body
    The evaluation definition object. Should include properties such as evaluationForm and agent.

.EXAMPLE
    $evalBody = @{ evaluationForm = @{ id = 'form-id' }; agent = @{ id = 'agent-id' } }
    New-GCQualityEvaluation -ConversationId 'conv-id-1' -Body $evalBody
    Creates a new evaluation for the specified conversation.

.NOTES
    Genesys Cloud API: POST /api/v2/quality/conversations/{conversationId}/evaluations
#>

function New-GCQualityEvaluation {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory = $true)]
        [string]$ConversationId,

        [Parameter(Mandatory = $true)]
        [object]$Body
    )

    $endpoint = "quality/conversations/$ConversationId/evaluations"
    return Invoke-GCApiRequest -Endpoint $endpoint -Method POST -Body $Body
}