Public/Set-GCRoutingQueue.ps1

<#
.SYNOPSIS
    Updates an existing routing queue in Genesys Cloud.

.DESCRIPTION
    Replaces the configuration of a specific routing queue using a PUT request.
    API Endpoint: PUT /api/v2/routing/queues/{queueId}

.PARAMETER QueueId
    The unique identifier of the routing queue to update.

.PARAMETER Body
    The request body containing the queue properties. Accepts a hashtable or JSON string.

.EXAMPLE
    Set-GCRoutingQueue -QueueId '12345678-1234-1234-1234-123456789012' -Body @{ name = 'Updated Queue'; description = 'Updated description' }
    Updates the specified routing queue.

.NOTES
    Genesys Cloud API: PUT /api/v2/routing/queues/{queueId}
#>

function Set-GCRoutingQueue {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory = $true)]
        [string]$QueueId,

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

    $endpoint = "routing/queues/$QueueId"
    return Invoke-GCApiRequest -Endpoint $endpoint -Method PUT -Body $Body
}