Public/Invoke-GCGroupsSearch2.ps1

<#
.SYNOPSIS
    Searches for groups using a query body.

.DESCRIPTION
    Performs a search query specifically against Genesys Cloud groups.
    Uses the POST /api/v2/groups/search endpoint.
    Named Invoke-GCGroupsSearchQuery to avoid collision with Invoke-GCGroupsSearch.

.PARAMETER Body
    The search criteria object containing query and filter parameters.

.EXAMPLE
    $searchBody = @{ query = @(@{ type = 'EXACT'; fields = @('name'); value = 'Support' }) }
    Invoke-GCGroupsSearchQuery -Body $searchBody

.NOTES
    Genesys Cloud API: POST /api/v2/groups/search
#>

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

    $endpoint = "groups/search"
    return Invoke-GCApiRequest -Endpoint $endpoint -Method POST -Body $Body
}