Public/Get-GCAuthorizationDivisions.ps1

<#
.SYNOPSIS
    Retrieves a list of authorization divisions.

.DESCRIPTION
    Returns a paginated list of divisions from the Genesys Cloud authorization system.
    Uses the GET /api/v2/authorization/divisions endpoint.

.PARAMETER PageSize
    The number of results per page. Defaults to 25.

.PARAMETER PageNumber
    The page number to retrieve. Defaults to 1.

.PARAMETER SortBy
    The field to sort results by.

.PARAMETER SortOrder
    The sort direction: ascending or descending.

.PARAMETER Name
    Filter divisions by name.

.EXAMPLE
    Get-GCAuthorizationDivisions

.EXAMPLE
    Get-GCAuthorizationDivisions -Name 'Home'

.NOTES
    Genesys Cloud API: GET /api/v2/authorization/divisions
#>

function Get-GCAuthorizationDivisions {
    [CmdletBinding()]
    param(
        [Parameter()]
        [int]$PageSize = 25,

        [Parameter()]
        [int]$PageNumber = 1,

        [Parameter()]
        [string]$SortBy,

        [Parameter()]
        [string]$SortOrder,

        [Parameter()]
        [string]$Name
    )

    $endpoint = "authorization/divisions"
    $queryParams = @{
        pageSize   = $PageSize
        pageNumber = $PageNumber
    }

    if ($SortBy)    { $queryParams['sortBy'] = $SortBy }
    if ($SortOrder) { $queryParams['sortOrder'] = $SortOrder }
    if ($Name)      { $queryParams['name'] = $Name }

    return Invoke-GCApiRequest -Endpoint $endpoint -Method GET -QueryParameters $queryParams
}