Public/Get-GCRecordingPolicies.ps1
|
<# .SYNOPSIS Retrieves a list of recording media retention policies from Genesys Cloud. .DESCRIPTION Queries the Genesys Cloud API to retrieve a paginated list of cross-platform media retention policies used for recording management. Supports filtering by name and sorting. API Endpoint: GET /api/v2/recording/crossplatform/mediaretentionpolicies .PARAMETER PageSize The number of results per page. Default is 25. .PARAMETER PageNumber The page number to retrieve. Default is 1. .PARAMETER SortBy The field to sort results by. .PARAMETER SortOrder The sort order for results. Valid values are 'ascending' or 'descending'. .PARAMETER Name Filter policies by name. Supports partial matching. .EXAMPLE Get-GCRecordingPolicies Retrieves the first page of recording policies with default page size. .EXAMPLE Get-GCRecordingPolicies -PageSize 50 -Name 'Compliance' Retrieves recording policies matching 'Compliance' with 50 results per page. .NOTES Genesys Cloud API: GET /api/v2/recording/crossplatform/mediaretentionpolicies #> function Get-GCRecordingPolicies { [CmdletBinding()] param( [Parameter(Mandatory = $false)] [int]$PageSize = 25, [Parameter(Mandatory = $false)] [int]$PageNumber = 1, [Parameter(Mandatory = $false)] [string]$SortBy, [Parameter(Mandatory = $false)] [string]$SortOrder, [Parameter(Mandatory = $false)] [string]$Name ) $queryParams = @{ pageSize = $PageSize pageNumber = $PageNumber } if ($SortBy) { $queryParams['sortBy'] = $SortBy } if ($SortOrder) { $queryParams['sortOrder'] = $SortOrder } if ($Name) { $queryParams['name'] = $Name } $endpoint = "recording/crossplatform/mediaretentionpolicies" return Invoke-GCApiRequest -Endpoint $endpoint -Method GET -QueryParameters $queryParams } |