public/Get-VSASDTicketCustomFields.ps1
function Get-VSASDTicketCustomFields { <# .Synopsis Returns the value of a custom field in a service desk ticket. .DESCRIPTION Returns the value of a custom field in a service desk ticket. Takes either persistent or non-persistent connection information. .PARAMETER VSAConnection Specifies existing non-persistent VSAConnection. .PARAMETER URISuffix Specifies URI suffix if it differs from the default. .PARAMETER ServiceDeskId Specifies id of service desk .PARAMETER Filter Specifies REST API Filter. .PARAMETER Paging Specifies REST API Paging. .PARAMETER Sort Specifies REST API Sorting. .EXAMPLE Get-VSASDTicketCustomFields -ServiceDeskTicketId 3434343 -CustomFieldId 32323232 .EXAMPLE Get-VSASDTicketCustomFields -VSAConnection $connection -ServiceDeskTicketId 3434343 -CustomFieldId 32323232 .INPUTS Accepts piped non-persistent VSAConnection .OUTPUTS Array of items that represent custom fields of service desk ticket #> [CmdletBinding()] param ( [parameter(Mandatory = $true, ValueFromPipelineByPropertyName = $true, ParameterSetName = 'NonPersistent')] [VSAConnection] $VSAConnection, [parameter(Mandatory=$false, ValueFromPipelineByPropertyName=$true, ParameterSetName = 'NonPersistent')] [parameter(Mandatory=$false, ValueFromPipelineByPropertyName=$true, ParameterSetName = 'Persistent')] [ValidateNotNullOrEmpty()] [string] $URISuffix = 'api/v1.0/automation/servicedesktickets/{0}/customfields/{1}', [ValidateNotNullOrEmpty()] [parameter(ParameterSetName = 'Persistent', Mandatory=$true, ValueFromPipelineByPropertyName=$true)] [parameter(ParameterSetName = 'NonPersistent', Mandatory=$true, ValueFromPipelineByPropertyName=$true)] [ValidateNotNullOrEmpty()] [string] $ServiceDeskTicketId, [parameter(ParameterSetName = 'Persistent', Mandatory=$true, ValueFromPipelineByPropertyName=$true)] [parameter(ParameterSetName = 'NonPersistent', Mandatory=$true, ValueFromPipelineByPropertyName=$true)] [ValidateNotNullOrEmpty()] [string] $CustomFieldId, [Parameter(ParameterSetName = 'Persistent', Mandatory = $false)] [Parameter(ParameterSetName = 'NonPersistent', Mandatory = $false)] [ValidateNotNullOrEmpty()] [string] $Filter, [Parameter(ParameterSetName = 'Persistent', Mandatory = $false)] [Parameter(ParameterSetName = 'NonPersistent', Mandatory = $false)] [ValidateNotNullOrEmpty()] [string] $Paging, [Parameter(ParameterSetName = 'Persistent', Mandatory = $false)] [Parameter(ParameterSetName = 'NonPersistent', Mandatory = $false)] [ValidateNotNullOrEmpty()] [string] $Sort ) $URISuffix = $URISuffix -f $ServiceDeskTicketId, $CustomFieldId [hashtable]$Params =@{ URISuffix = $URISuffix } if($VSAConnection) {$Params.Add('VSAConnection', $VSAConnection)} if($Filter) {$Params.Add('Filter', $Filter)} if($Paging) {$Params.Add('Paging', $Paging)} if($Sort) {$Params.Add('Sort', $Sort)} return Get-VSAItems @Params } Export-ModuleMember -Function Get-VSASDTicketCustomFields |