Public/Set-GCIntegration.ps1

<#
.SYNOPSIS
    Updates an existing integration.

.DESCRIPTION
    Partially updates the specified integration in Genesys Cloud.
    Uses the PATCH /api/v2/integrations/{integrationId} endpoint.

.PARAMETER IntegrationId
    The unique identifier of the integration to update.

.PARAMETER Body
    The updated integration properties.

.EXAMPLE
    $intBody = @{ intendedState = 'ENABLED' }
    Set-GCIntegration -IntegrationId 'a1b2c3d4-e5f6-7890-abcd-ef1234567890' -Body $intBody

.NOTES
    Genesys Cloud API: PATCH /api/v2/integrations/{integrationId}
#>

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

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

    $endpoint = "integrations/$IntegrationId"
    return Invoke-GCApiRequest -Endpoint $endpoint -Method PATCH -Body $Body
}