Public/New-GCAuthorizationRole.ps1

<#
.SYNOPSIS
    Creates a new authorization role.

.DESCRIPTION
    Creates a new role in the Genesys Cloud authorization system.
    Uses the POST /api/v2/authorization/roles endpoint.

.PARAMETER Body
    The role definition object containing name, description, permissions, and other properties.

.EXAMPLE
    $roleBody = @{ name = 'Custom Role'; description = 'A custom role' }
    New-GCAuthorizationRole -Body $roleBody

.NOTES
    Genesys Cloud API: POST /api/v2/authorization/roles
#>

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

    $endpoint = "authorization/roles"
    return Invoke-GCApiRequest -Endpoint $endpoint -Method POST -Body $Body
}