Public/PropertyContacts/Get-AspirePropertyContacts.ps1
|
<#
.SYNOPSIS Retrieves a list of property contacts from the Aspire API. .DESCRIPTION Uses Invoke-AspireRequest to perform a GET request to the /PropertyContacts endpoint with support for OData query parameters. .PARAMETER Filter Optional OData filter query (e.g., "PropertyID eq 1"). .PARAMETER Top Optional number of records to return (integer). .PARAMETER Skip Optional number of records to skip (integer). .PARAMETER Select Optional comma-separated list of fields to include (e.g., "PropertyID,ContactID"). .PARAMETER Expand Optional comma-separated list of related entities to expand. .PARAMETER OrderBy Optional OData orderby query (e.g., "PropertyID asc"). .PARAMETER PageNumber Optional page number for pagination. .PARAMETER Limit Optional limit for number of records per page. .OUTPUTS The response from the API containing the list of property contacts. .EXAMPLE Get-AspirePropertyContacts -Filter "PropertyID eq 1" -Top 10 #> function Get-AspirePropertyContacts { [CmdletBinding()] param( [string]$Filter = $null, [int]$Top = $null, [int]$Skip = $null, [string]$Select = $null, [string]$Expand = $null, [string]$OrderBy = $null, [int]$PageNumber = $null, [int]$Limit = $null ) $queryParams = @{} if ($Filter) { $queryParams['$filter'] = $Filter } if ($Top) { $queryParams['$top'] = $Top } if ($Skip) { $queryParams['$skip'] = $Skip } if ($Select) { $queryParams['$select'] = $Select } if ($Expand) { $queryParams['$expand'] = $Expand } if ($OrderBy) { $queryParams['$orderby'] = $OrderBy } if ($PageNumber) { $queryParams['$pageNumber'] = $PageNumber } if ($Limit) { $queryParams['$limit'] = $Limit } return Invoke-AspireRequest -Method GET -Path "/PropertyContacts" -QueryParams $queryParams -ApiVersion $null } |