NetScalerToolkit.Configuration/Public/ns-functions-config-stream.ps1
|
# Generated NetScalerToolkit Configuration bundle for category 'stream'. # region Invoke-NSAddStreamIdentifier function Invoke-NSAddStreamIdentifier { <# .SYNOPSIS Creates a NetScaler streamidentifier resource. .DESCRIPTION Configuration for identifier resource. .PARAMETER AcceptanceThreshold Non-Breaching transactions to Total transactions threshold expressed in percent. Maximum of 6 decimal places is supported. Default value: 0.000000 Maximum length = 10 .PARAMETER AppFlowLog Enable/disable Appflow logging for stream identifier. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER BreachThreshold Breaching transactions threshold calculated over interval. Default value: 0 .PARAMETER Interval Number of minutes of data to use when calculating session statistics (number of requests, bandwidth, and response times). The interval is a moving window that keeps the most recently collected data. Older data is discarded at regular intervals. Default value: 1 Minimum value = 1 Maximum value = 10080 .PARAMETER Log Location where objects collected on the identifier will be logged. Default value: NONE Possible values = SYSLOG, NONE .PARAMETER LoginTerval Time interval in minutes for logging the collected objects. Log interval should be greater than or equal to the inteval of the stream identifier. Default value: 5 Minimum value = 1 Maximum value = 10080 .PARAMETER Loglimit Maximum number of objects to be logged in the log interval. Default value: 100 Minimum value = 1 Maximum value = 1000 .PARAMETER MaxTransActionThreshold Maximum per transcation value of metric. Metric to be tracked is specified by tracktransactions attribute. Default value: 0 .PARAMETER MinTransActionThreshold Minimum per transcation value of metric. Metric to be tracked is specified by tracktransactions attribute. Default value: 0 .PARAMETER Name The name of stream identifier. .PARAMETER Samplecount Size of the sample from which to select a request for evaluation. The smaller the sample count, the more accurate is the statistical data. To evaluate all requests, set the sample count to 1. However, such a low setting can result in excessive consumption of memory and processing resources. Default value: 1 Minimum value = 1 Maximum value = 65535 .PARAMETER SelectorName Name of the selector to use with the stream identifier. Minimum length = 1 .PARAMETER SNMPTrap Enable/disable SNMP trap for stream identifier. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER Sort Sort stored records by the specified statistics column, in descending order. Performed during data collection, the sorting enables real-time data evaluation through Citrix ADC policies (for example, compression and caching policies) that use functions such as IS_TOP(n). Default value: REQUESTS Possible values = REQUESTS, CONNECTIONS, RESPTIME, BANDWIDTH, RESPTIME_BREACHES, NONE .PARAMETER Trackackonlypackets Track ack only packets as well. This setting is applicable only when packet rate limiting is being used. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER TracktransActionS Track transactions exceeding configured threshold. Transaction tracking can be enabled for following metric: ResponseTime. By default transaction tracking is disabled. Default value: NONE Possible values = RESPTIME, NONE .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .PARAMETER PassThru Returns the updated resource after the operation completes. .EXAMPLE Invoke-NSAddStreamIdentifier -Name 'example' -SelectorName 'example' -PassThru .EXAMPLE Invoke-NSAddStreamIdentifier -Name 'example' -SelectorName 'example' -WhatIf .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess)] param( [Parameter()] [string] $AcceptanceThreshold, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [string] $AppFlowLog, [Parameter()] [int] $BreachThreshold, [Parameter()] [int] $Interval, [Parameter()] [string] $Log, [Parameter()] [int] $LoginTerval, [Parameter()] [int] $Loglimit, [Parameter()] [int] $MaxTransActionThreshold, [Parameter()] [int] $MinTransActionThreshold, [Parameter(Mandatory, Position = 0)] [string] $Name, [Parameter()] [int] $Samplecount, [Parameter(Mandatory)] [string] $SelectorName, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [string] $SNMPTrap, [Parameter()] [ValidateSet('REQUESTS', 'CONNECTIONS', 'RESPTIME', 'BANDWIDTH', 'RESPTIME_BREACHES', 'NONE')] [string] $Sort, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [string] $Trackackonlypackets, [Parameter()] [ValidateSet('RESPTIME', 'NONE')] [string] $TracktransActionS, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning, [Parameter()] [switch] $PassThru ) $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') if ($PSBoundParameters.ContainsKey('Log')) { Assert-NSParameterValue -ParameterName 'Log' -Value $Log -AllowedValuesByVersion @{ '13.1' = @(); '14.1' = @('SYSLOG', 'NONE') } -MetadataVersion $metadataVersion } $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $properties = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($PSBoundParameters.ContainsKey('AcceptanceThreshold')) { $properties['acceptancethreshold'] = $AcceptanceThreshold } if ($PSBoundParameters.ContainsKey('AppFlowLog')) { $properties['appflowlog'] = $AppFlowLog } if ($PSBoundParameters.ContainsKey('BreachThreshold')) { $properties['breachthreshold'] = $BreachThreshold } if ($PSBoundParameters.ContainsKey('Interval')) { $properties['interval'] = $Interval } if ($PSBoundParameters.ContainsKey('Log')) { $properties['log'] = $Log } if ($PSBoundParameters.ContainsKey('LoginTerval')) { $properties['loginterval'] = $LoginTerval } if ($PSBoundParameters.ContainsKey('Loglimit')) { $properties['loglimit'] = $Loglimit } if ($PSBoundParameters.ContainsKey('MaxTransActionThreshold')) { $properties['maxtransactionthreshold'] = $MaxTransActionThreshold } if ($PSBoundParameters.ContainsKey('MinTransActionThreshold')) { $properties['mintransactionthreshold'] = $MinTransActionThreshold } if ($PSBoundParameters.ContainsKey('Name')) { $properties['name'] = $Name } if ($PSBoundParameters.ContainsKey('Samplecount')) { $properties['samplecount'] = $Samplecount } if ($PSBoundParameters.ContainsKey('SelectorName')) { $properties['selectorname'] = $SelectorName } if ($PSBoundParameters.ContainsKey('SNMPTrap')) { $properties['snmptrap'] = $SNMPTrap } if ($PSBoundParameters.ContainsKey('Sort')) { $properties['sort'] = $Sort } if ($PSBoundParameters.ContainsKey('Trackackonlypackets')) { $properties['trackackonlypackets'] = $Trackackonlypackets } if ($PSBoundParameters.ContainsKey('TracktransActionS')) { $properties['tracktransactions'] = $TracktransActionS } $body = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) foreach ($key in $properties.Keys) { if ($null -ne $properties[$key] -and (-not ($properties[$key] -is [string]) -or $properties[$key] -ne '')) { $body[$key] = $properties[$key] } } if ($PSCmdlet.ShouldProcess("$Name", 'Create streamidentifier')) { $response = Invoke-NSRestRequest @transportParameters -Session $Session -Method POST -Task config -Type streamidentifier -Payload @{ streamidentifier = $body } -RawResponse if ($PassThru) { return Invoke-NSGetStreamIdentifier -Name $Name -Session $Session } return $response } } # endregion Invoke-NSAddStreamIdentifier # region Invoke-NSAddStreamIdentifierAnalyticsProfileBinding function Invoke-NSAddStreamIdentifierAnalyticsProfileBinding { <# .SYNOPSIS Creates a NetScaler streamidentifier_analyticsprofile_binding resource. .DESCRIPTION Binding object showing the analyticsprofile that can be bound to streamidentifier. .PARAMETER AnalyticsProfile Name of the analytics profile. .PARAMETER Name The name of stream identifier. .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .PARAMETER PassThru Returns the updated resource after the operation completes. .EXAMPLE Invoke-NSAddStreamIdentifierAnalyticsProfileBinding -Name 'example' -PassThru .EXAMPLE Invoke-NSAddStreamIdentifierAnalyticsProfileBinding -Name 'example' -WhatIf .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess)] param( [Parameter()] [string] $AnalyticsProfile, [Parameter(Mandatory)] [string] $Name, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning, [Parameter()] [switch] $PassThru ) $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $properties = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($PSBoundParameters.ContainsKey('AnalyticsProfile')) { $properties['analyticsprofile'] = $AnalyticsProfile } if ($PSBoundParameters.ContainsKey('Name')) { $properties['name'] = $Name } $body = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) foreach ($key in $properties.Keys) { if ($null -ne $properties[$key] -and (-not ($properties[$key] -is [string]) -or $properties[$key] -ne '')) { $body[$key] = $properties[$key] } } if ($PSCmdlet.ShouldProcess('streamidentifier_analyticsprofile_binding', 'Create streamidentifier_analyticsprofile_binding')) { $response = Invoke-NSRestRequest @transportParameters -Session $Session -Method POST -Task config -Type streamidentifier_analyticsprofile_binding -Payload @{ streamidentifier_analyticsprofile_binding = $body } -RawResponse return $response } } # endregion Invoke-NSAddStreamIdentifierAnalyticsProfileBinding # region Invoke-NSAddStreamselector function Invoke-NSAddStreamselector { <# .SYNOPSIS Creates a NetScaler streamselector resource. .DESCRIPTION Configuration for selector resource. .PARAMETER Name Name for the selector. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. If the name includes one or more spaces, and you are using the Citrix ADC CLI, enclose the name in double or single quotation marks (for example, "my selector" or 'my selector'). .PARAMETER Rule Set of up to five expressions. Maximum length: 7499 characters. Each expression must identify a specific request characteristic, such as the client's IP address (with CLIENT.IP.SRC) or requested server resource (with HTTP.REQ.URL). Note: If two or more selectors contain the same expressions in different order, a separate set of records is created for each selector. Minimum length = 1 .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .PARAMETER PassThru Returns the updated resource after the operation completes. .EXAMPLE Invoke-NSAddStreamselector -Name 'example' -Rule 'example' -PassThru .EXAMPLE Invoke-NSAddStreamselector -Name 'example' -Rule 'example' -WhatIf .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess)] param( [Parameter(Mandatory, Position = 0)] [string] $Name, [Parameter(Mandatory)] [string[]] $Rule, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning, [Parameter()] [switch] $PassThru ) $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $properties = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($PSBoundParameters.ContainsKey('Name')) { $properties['name'] = $Name } if ($PSBoundParameters.ContainsKey('Rule')) { $properties['rule'] = $Rule } $body = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) foreach ($key in $properties.Keys) { if ($null -ne $properties[$key] -and (-not ($properties[$key] -is [string]) -or $properties[$key] -ne '')) { $body[$key] = $properties[$key] } } if ($PSCmdlet.ShouldProcess("$Name", 'Create streamselector')) { $response = Invoke-NSRestRequest @transportParameters -Session $Session -Method POST -Task config -Type streamselector -Payload @{ streamselector = $body } -RawResponse if ($PassThru) { return Invoke-NSGetStreamselector -Name $Name -Session $Session } return $response } } # endregion Invoke-NSAddStreamselector # region Invoke-NSDeleteStreamIdentifier function Invoke-NSDeleteStreamIdentifier { <# .SYNOPSIS Removes a NetScaler streamidentifier resource. .DESCRIPTION Configuration for identifier resource. .PARAMETER Name The name of stream identifier. .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .EXAMPLE Invoke-NSDeleteStreamIdentifier -Name 'example' -Confirm:$false .EXAMPLE Invoke-NSGetStreamIdentifier -Name 'streamidentifier_example' | Invoke-NSDeleteStreamIdentifier -Confirm:$false .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess, ConfirmImpact = 'High')] param( [Parameter(Mandatory, Position = 0, ValueFromPipelineByPropertyName)] [string] $Name, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } if ($PSCmdlet.ShouldProcess("$Name", 'Delete streamidentifier')) { Invoke-NSRestRequest @transportParameters -Session $Session -Method DELETE -Task config -Type streamidentifier -Resource $Name -RawResponse } } } # endregion Invoke-NSDeleteStreamIdentifier # region Invoke-NSDeleteStreamIdentifierAnalyticsProfileBinding function Invoke-NSDeleteStreamIdentifierAnalyticsProfileBinding { <# .SYNOPSIS Removes a NetScaler streamidentifier_analyticsprofile_binding resource. .DESCRIPTION Binding object showing the analyticsprofile that can be bound to streamidentifier. .PARAMETER Name The name of stream identifier. .PARAMETER AnalyticsProfile Name of the analytics profile. .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .EXAMPLE Invoke-NSDeleteStreamIdentifierAnalyticsProfileBinding -Name 'example' -AnalyticsProfile 'example' -Confirm:$false .EXAMPLE Invoke-NSGetStreamIdentifierAnalyticsProfileBinding | Invoke-NSDeleteStreamIdentifierAnalyticsProfileBinding -Confirm:$false .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess, ConfirmImpact = 'High')] param( [Parameter(Mandatory, ValueFromPipelineByPropertyName)] [string] $Name, [Parameter()] [string] $AnalyticsProfile, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $query = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) $argumentParts = @() if ($PSBoundParameters.ContainsKey('Name')) { $argumentParts += 'name:' + $Name } if ($PSBoundParameters.ContainsKey('AnalyticsProfile')) { $argumentParts += 'analyticsprofile:' + $AnalyticsProfile } if ($argumentParts.Count -gt 0) { $query.args = $argumentParts -join ',' } if ($PSCmdlet.ShouldProcess('streamidentifier_analyticsprofile_binding', 'Delete streamidentifier_analyticsprofile_binding')) { Invoke-NSRestRequest @transportParameters -Session $Session -Method DELETE -Task config -Type streamidentifier_analyticsprofile_binding -Query $query -RawResponse } } } # endregion Invoke-NSDeleteStreamIdentifierAnalyticsProfileBinding # region Invoke-NSDeleteStreamselector function Invoke-NSDeleteStreamselector { <# .SYNOPSIS Removes a NetScaler streamselector resource. .DESCRIPTION Configuration for selector resource. .PARAMETER Name Name for the selector. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. If the name includes one or more spaces, and you are using the Citrix ADC CLI, enclose the name in double or single quotation marks (for example, "my selector" or 'my selector'). .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .EXAMPLE Invoke-NSDeleteStreamselector -Name 'example' -Confirm:$false .EXAMPLE Invoke-NSGetStreamselector -Name 'streamselector_example' | Invoke-NSDeleteStreamselector -Confirm:$false .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess, ConfirmImpact = 'High')] param( [Parameter(Mandatory, Position = 0, ValueFromPipelineByPropertyName)] [string] $Name, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } if ($PSCmdlet.ShouldProcess("$Name", 'Delete streamselector')) { Invoke-NSRestRequest @transportParameters -Session $Session -Method DELETE -Task config -Type streamselector -Resource $Name -RawResponse } } } # endregion Invoke-NSDeleteStreamselector # region Invoke-NSGetStreamIdentifier function Invoke-NSGetStreamIdentifier { <# .SYNOPSIS Gets NetScaler streamidentifier configuration. .DESCRIPTION Configuration for identifier resource. .PARAMETER Name The name of stream identifier. .PARAMETER Filter NITRO filter values as a hashtable. .PARAMETER ViewSummary Requests the NITRO summary view. .PARAMETER Count Returns only the number of matching resources. .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .EXAMPLE Invoke-NSGetStreamIdentifier .EXAMPLE Invoke-NSGetStreamIdentifier -Name 'streamidentifier_example' .EXAMPLE Invoke-NSGetStreamIdentifier -Filter @{ servicetype = 'HTTP' } .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(DefaultParameterSetName = 'All')] param( [Parameter(ParameterSetName = 'ByName', Mandatory, Position = 0, ValueFromPipelineByPropertyName)] [string] $Name, [Parameter(ParameterSetName = 'All')] [hashtable] $Filter, [Parameter(ParameterSetName = 'All')] [switch] $ViewSummary, [Parameter(ParameterSetName = 'Count')] [switch] $Count, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $query = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($Filter) { $query.filter = (($Filter.GetEnumerator() | Sort-Object Name | ForEach-Object { "{0}:{1}" -f $_.Key, $_.Value }) -join ',') } if ($ViewSummary) { $query.view = 'summary' } if ($Count) { $query.count = 'yes' } $request = @{ Session = $Session Method = 'GET' Task = 'config' Type = 'streamidentifier' Query = $query } if ($PSCmdlet.ParameterSetName -eq 'ByName') { $request.Resource = $Name } foreach ($key in $transportParameters.Keys) { $request[$key] = $transportParameters[$key] } Invoke-NSRestRequest @request } } # endregion Invoke-NSGetStreamIdentifier # region Invoke-NSGetStreamIdentifierAnalyticsProfileBinding function Invoke-NSGetStreamIdentifierAnalyticsProfileBinding { <# .SYNOPSIS Gets NetScaler streamidentifier_analyticsprofile_binding configuration. .DESCRIPTION Binding object showing the analyticsprofile that can be bound to streamidentifier. .PARAMETER ViewSummary Requests the NITRO summary view. .PARAMETER Count Returns only the number of matching resources. .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .EXAMPLE Invoke-NSGetStreamIdentifierAnalyticsProfileBinding .EXAMPLE Invoke-NSGetStreamIdentifierAnalyticsProfileBinding -Filter @{ servicetype = 'HTTP' } .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(DefaultParameterSetName = 'All')] param( [Parameter(ParameterSetName = 'All')] [hashtable] $Filter, [Parameter(ParameterSetName = 'All')] [switch] $ViewSummary, [Parameter(ParameterSetName = 'Count')] [switch] $Count, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $query = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($Filter) { $query.filter = (($Filter.GetEnumerator() | Sort-Object Name | ForEach-Object { "{0}:{1}" -f $_.Key, $_.Value }) -join ',') } if ($ViewSummary) { $query.view = 'summary' } if ($Count) { $query.count = 'yes' } $request = @{ Session = $Session Method = 'GET' Task = 'config' Type = 'streamidentifier_analyticsprofile_binding' Query = $query } foreach ($key in $transportParameters.Keys) { $request[$key] = $transportParameters[$key] } Invoke-NSRestRequest @request } } # endregion Invoke-NSGetStreamIdentifierAnalyticsProfileBinding # region Invoke-NSGetStreamIdentifierBinding function Invoke-NSGetStreamIdentifierBinding { <# .SYNOPSIS Gets NetScaler streamidentifier_binding configuration. .DESCRIPTION Binding object which returns the resources bound to streamidentifier. .PARAMETER Name The name of stream identifier. .PARAMETER Filter NITRO filter values as a hashtable. .PARAMETER ViewSummary Requests the NITRO summary view. .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .EXAMPLE Invoke-NSGetStreamIdentifierBinding .EXAMPLE Invoke-NSGetStreamIdentifierBinding -Name 'streamidentifier_binding_example' .EXAMPLE Invoke-NSGetStreamIdentifierBinding -Filter @{ servicetype = 'HTTP' } .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(DefaultParameterSetName = 'All')] param( [Parameter(ParameterSetName = 'ByName', Mandatory, Position = 0, ValueFromPipelineByPropertyName)] [string] $Name, [Parameter(ParameterSetName = 'All')] [hashtable] $Filter, [Parameter(ParameterSetName = 'All')] [switch] $ViewSummary, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $query = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($Filter) { $query.filter = (($Filter.GetEnumerator() | Sort-Object Name | ForEach-Object { "{0}:{1}" -f $_.Key, $_.Value }) -join ',') } if ($ViewSummary) { $query.view = 'summary' } $request = @{ Session = $Session Method = 'GET' Task = 'config' Type = 'streamidentifier_binding' Query = $query } if ($PSCmdlet.ParameterSetName -eq 'ByName') { $request.Resource = $Name } foreach ($key in $transportParameters.Keys) { $request[$key] = $transportParameters[$key] } Invoke-NSRestRequest @request } } # endregion Invoke-NSGetStreamIdentifierBinding # region Invoke-NSGetStreamIdentifierStreamsessionBinding function Invoke-NSGetStreamIdentifierStreamsessionBinding { <# .SYNOPSIS Gets NetScaler streamidentifier_streamsession_binding configuration. .DESCRIPTION Binding object showing the streamsession that can be bound to streamidentifier. .PARAMETER ViewSummary Requests the NITRO summary view. .PARAMETER Count Returns only the number of matching resources. .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .EXAMPLE Invoke-NSGetStreamIdentifierStreamsessionBinding .EXAMPLE Invoke-NSGetStreamIdentifierStreamsessionBinding -Filter @{ servicetype = 'HTTP' } .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(DefaultParameterSetName = 'All')] param( [Parameter(ParameterSetName = 'All')] [hashtable] $Filter, [Parameter(ParameterSetName = 'All')] [switch] $ViewSummary, [Parameter(ParameterSetName = 'Count')] [switch] $Count, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $query = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($Filter) { $query.filter = (($Filter.GetEnumerator() | Sort-Object Name | ForEach-Object { "{0}:{1}" -f $_.Key, $_.Value }) -join ',') } if ($ViewSummary) { $query.view = 'summary' } if ($Count) { $query.count = 'yes' } $request = @{ Session = $Session Method = 'GET' Task = 'config' Type = 'streamidentifier_streamsession_binding' Query = $query } foreach ($key in $transportParameters.Keys) { $request[$key] = $transportParameters[$key] } Invoke-NSRestRequest @request } } # endregion Invoke-NSGetStreamIdentifierStreamsessionBinding # region Invoke-NSGetStreamselector function Invoke-NSGetStreamselector { <# .SYNOPSIS Gets NetScaler streamselector configuration. .DESCRIPTION Configuration for selector resource. .PARAMETER Name Name for the selector. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. If the name includes one or more spaces, and you are using the Citrix ADC CLI, enclose the name in double or single quotation marks (for example, "my selector" or 'my selector'). .PARAMETER Filter NITRO filter values as a hashtable. .PARAMETER ViewSummary Requests the NITRO summary view. .PARAMETER Count Returns only the number of matching resources. .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .EXAMPLE Invoke-NSGetStreamselector .EXAMPLE Invoke-NSGetStreamselector -Name 'streamselector_example' .EXAMPLE Invoke-NSGetStreamselector -Filter @{ servicetype = 'HTTP' } .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(DefaultParameterSetName = 'All')] param( [Parameter(ParameterSetName = 'ByName', Mandatory, Position = 0, ValueFromPipelineByPropertyName)] [string] $Name, [Parameter(ParameterSetName = 'All')] [hashtable] $Filter, [Parameter(ParameterSetName = 'All')] [switch] $ViewSummary, [Parameter(ParameterSetName = 'Count')] [switch] $Count, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $query = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($Filter) { $query.filter = (($Filter.GetEnumerator() | Sort-Object Name | ForEach-Object { "{0}:{1}" -f $_.Key, $_.Value }) -join ',') } if ($ViewSummary) { $query.view = 'summary' } if ($Count) { $query.count = 'yes' } $request = @{ Session = $Session Method = 'GET' Task = 'config' Type = 'streamselector' Query = $query } if ($PSCmdlet.ParameterSetName -eq 'ByName') { $request.Resource = $Name } foreach ($key in $transportParameters.Keys) { $request[$key] = $transportParameters[$key] } Invoke-NSRestRequest @request } } # endregion Invoke-NSGetStreamselector # region Invoke-NSUnsetStreamIdentifier function Invoke-NSUnsetStreamIdentifier { <# .SYNOPSIS Clears one or more NetScaler streamidentifier resource properties. .DESCRIPTION Configuration for identifier resource. .PARAMETER Name The name of stream identifier. .PARAMETER AcceptanceThreshold Non-Breaching transactions to Total transactions threshold expressed in percent. Maximum of 6 decimal places is supported. Default value: 0.000000 Maximum length = 10 .PARAMETER AppFlowLog Enable/disable Appflow logging for stream identifier. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER BreachThreshold Breaching transactions threshold calculated over interval. Default value: 0 .PARAMETER Interval Number of minutes of data to use when calculating session statistics (number of requests, bandwidth, and response times). The interval is a moving window that keeps the most recently collected data. Older data is discarded at regular intervals. Default value: 1 Minimum value = 1 Maximum value = 10080 .PARAMETER Log Location where objects collected on the identifier will be logged. Default value: NONE Possible values = SYSLOG, NONE .PARAMETER LoginTerval Time interval in minutes for logging the collected objects. Log interval should be greater than or equal to the inteval of the stream identifier. Default value: 5 Minimum value = 1 Maximum value = 10080 .PARAMETER Loglimit Maximum number of objects to be logged in the log interval. Default value: 100 Minimum value = 1 Maximum value = 1000 .PARAMETER MaxTransActionThreshold Maximum per transcation value of metric. Metric to be tracked is specified by tracktransactions attribute. Default value: 0 .PARAMETER MinTransActionThreshold Minimum per transcation value of metric. Metric to be tracked is specified by tracktransactions attribute. Default value: 0 .PARAMETER Samplecount Size of the sample from which to select a request for evaluation. The smaller the sample count, the more accurate is the statistical data. To evaluate all requests, set the sample count to 1. However, such a low setting can result in excessive consumption of memory and processing resources. Default value: 1 Minimum value = 1 Maximum value = 65535 .PARAMETER SelectorName Name of the selector to use with the stream identifier. Minimum length = 1 .PARAMETER SNMPTrap Enable/disable SNMP trap for stream identifier. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER Sort Sort stored records by the specified statistics column, in descending order. Performed during data collection, the sorting enables real-time data evaluation through Citrix ADC policies (for example, compression and caching policies) that use functions such as IS_TOP(n). Default value: REQUESTS Possible values = REQUESTS, CONNECTIONS, RESPTIME, BANDWIDTH, RESPTIME_BREACHES, NONE .PARAMETER Trackackonlypackets Track ack only packets as well. This setting is applicable only when packet rate limiting is being used. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER TracktransActionS Track transactions exceeding configured threshold. Transaction tracking can be enabled for following metric: ResponseTime. By default transaction tracking is disabled. Default value: NONE Possible values = RESPTIME, NONE .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .PARAMETER PassThru Returns the updated resource after the operation completes. .EXAMPLE Invoke-NSUnsetStreamIdentifier -Name 'example' -AcceptanceThreshold -PassThru .EXAMPLE Invoke-NSUnsetStreamIdentifier -Name 'example' -AcceptanceThreshold -WhatIf .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess)] param( [Parameter(Mandatory, Position = 0, ValueFromPipelineByPropertyName)] [string] $Name, [Parameter()] [switch] $AcceptanceThreshold, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [switch] $AppFlowLog, [Parameter()] [switch] $BreachThreshold, [Parameter()] [switch] $Interval, [Parameter()] [ValidateSet('SYSLOG', 'NONE')] [switch] $Log, [Parameter()] [switch] $LoginTerval, [Parameter()] [switch] $Loglimit, [Parameter()] [switch] $MaxTransActionThreshold, [Parameter()] [switch] $MinTransActionThreshold, [Parameter()] [switch] $Samplecount, [Parameter()] [switch] $SelectorName, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [switch] $SNMPTrap, [Parameter()] [ValidateSet('REQUESTS', 'CONNECTIONS', 'RESPTIME', 'BANDWIDTH', 'RESPTIME_BREACHES', 'NONE')] [switch] $Sort, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [switch] $Trackackonlypackets, [Parameter()] [ValidateSet('RESPTIME', 'NONE')] [switch] $TracktransActionS, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning, [Parameter()] [switch] $PassThru ) process { $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $body = @{ name = $Name } if ($PSBoundParameters.ContainsKey('AcceptanceThreshold')) { $body['acceptancethreshold'] = $true } if ($PSBoundParameters.ContainsKey('AppFlowLog')) { $body['appflowlog'] = $true } if ($PSBoundParameters.ContainsKey('BreachThreshold')) { $body['breachthreshold'] = $true } if ($PSBoundParameters.ContainsKey('Interval')) { $body['interval'] = $true } if ($PSBoundParameters.ContainsKey('Log')) { $body['log'] = $true } if ($PSBoundParameters.ContainsKey('LoginTerval')) { $body['loginterval'] = $true } if ($PSBoundParameters.ContainsKey('Loglimit')) { $body['loglimit'] = $true } if ($PSBoundParameters.ContainsKey('MaxTransActionThreshold')) { $body['maxtransactionthreshold'] = $true } if ($PSBoundParameters.ContainsKey('MinTransActionThreshold')) { $body['mintransactionthreshold'] = $true } if ($PSBoundParameters.ContainsKey('Samplecount')) { $body['samplecount'] = $true } if ($PSBoundParameters.ContainsKey('SelectorName')) { $body['selectorname'] = $true } if ($PSBoundParameters.ContainsKey('SNMPTrap')) { $body['snmptrap'] = $true } if ($PSBoundParameters.ContainsKey('Sort')) { $body['sort'] = $true } if ($PSBoundParameters.ContainsKey('Trackackonlypackets')) { $body['trackackonlypackets'] = $true } if ($PSBoundParameters.ContainsKey('TracktransActionS')) { $body['tracktransactions'] = $true } if ($body.Count -le 1) { throw 'Specify at least one property switch to clear.' } if ($PSCmdlet.ShouldProcess("$Name", 'Clear streamidentifier properties')) { $response = Invoke-NSRestRequest @transportParameters -Session $Session -Method POST -Task config -Type streamidentifier -Action unset -Payload @{ streamidentifier = $body } -RawResponse if ($PassThru) { return Invoke-NSGetStreamIdentifier -Name $Name -Session $Session } return $response } } } # endregion Invoke-NSUnsetStreamIdentifier # region Invoke-NSUpdateStreamIdentifier function Invoke-NSUpdateStreamIdentifier { <# .SYNOPSIS Updates a NetScaler streamidentifier resource. .DESCRIPTION Configuration for identifier resource. .PARAMETER AcceptanceThreshold Non-Breaching transactions to Total transactions threshold expressed in percent. Maximum of 6 decimal places is supported. Default value: 0.000000 Maximum length = 10 .PARAMETER AppFlowLog Enable/disable Appflow logging for stream identifier. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER BreachThreshold Breaching transactions threshold calculated over interval. Default value: 0 .PARAMETER Interval Number of minutes of data to use when calculating session statistics (number of requests, bandwidth, and response times). The interval is a moving window that keeps the most recently collected data. Older data is discarded at regular intervals. Default value: 1 Minimum value = 1 Maximum value = 10080 .PARAMETER Log Location where objects collected on the identifier will be logged. Default value: NONE Possible values = SYSLOG, NONE .PARAMETER LoginTerval Time interval in minutes for logging the collected objects. Log interval should be greater than or equal to the inteval of the stream identifier. Default value: 5 Minimum value = 1 Maximum value = 10080 .PARAMETER Loglimit Maximum number of objects to be logged in the log interval. Default value: 100 Minimum value = 1 Maximum value = 1000 .PARAMETER MaxTransActionThreshold Maximum per transcation value of metric. Metric to be tracked is specified by tracktransactions attribute. Default value: 0 .PARAMETER MinTransActionThreshold Minimum per transcation value of metric. Metric to be tracked is specified by tracktransactions attribute. Default value: 0 .PARAMETER Name The name of stream identifier. .PARAMETER Samplecount Size of the sample from which to select a request for evaluation. The smaller the sample count, the more accurate is the statistical data. To evaluate all requests, set the sample count to 1. However, such a low setting can result in excessive consumption of memory and processing resources. Default value: 1 Minimum value = 1 Maximum value = 65535 .PARAMETER SelectorName Name of the selector to use with the stream identifier. Minimum length = 1 .PARAMETER SNMPTrap Enable/disable SNMP trap for stream identifier. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER Sort Sort stored records by the specified statistics column, in descending order. Performed during data collection, the sorting enables real-time data evaluation through Citrix ADC policies (for example, compression and caching policies) that use functions such as IS_TOP(n). Default value: REQUESTS Possible values = REQUESTS, CONNECTIONS, RESPTIME, BANDWIDTH, RESPTIME_BREACHES, NONE .PARAMETER Trackackonlypackets Track ack only packets as well. This setting is applicable only when packet rate limiting is being used. Default value: DISABLED Possible values = ENABLED, DISABLED .PARAMETER TracktransActionS Track transactions exceeding configured threshold. Transaction tracking can be enabled for following metric: ResponseTime. By default transaction tracking is disabled. Default value: NONE Possible values = RESPTIME, NONE .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .PARAMETER PassThru Returns the updated resource after the operation completes. .EXAMPLE Invoke-NSUpdateStreamIdentifier -Name 'example' -PassThru .EXAMPLE Invoke-NSUpdateStreamIdentifier -Name 'example' -WhatIf .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess)] param( [Parameter()] [string] $AcceptanceThreshold, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [string] $AppFlowLog, [Parameter()] [int] $BreachThreshold, [Parameter()] [int] $Interval, [Parameter()] [string] $Log, [Parameter()] [int] $LoginTerval, [Parameter()] [int] $Loglimit, [Parameter()] [int] $MaxTransActionThreshold, [Parameter()] [int] $MinTransActionThreshold, [Parameter(Mandatory, Position = 0)] [string] $Name, [Parameter()] [int] $Samplecount, [Parameter()] [string] $SelectorName, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [string] $SNMPTrap, [Parameter()] [ValidateSet('REQUESTS', 'CONNECTIONS', 'RESPTIME', 'BANDWIDTH', 'RESPTIME_BREACHES', 'NONE')] [string] $Sort, [Parameter()] [ValidateSet('ENABLED', 'DISABLED')] [string] $Trackackonlypackets, [Parameter()] [ValidateSet('RESPTIME', 'NONE')] [string] $TracktransActionS, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning, [Parameter()] [switch] $PassThru ) $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') if ($PSBoundParameters.ContainsKey('Log')) { Assert-NSParameterValue -ParameterName 'Log' -Value $Log -AllowedValuesByVersion @{ '13.1' = @(); '14.1' = @('SYSLOG', 'NONE') } -MetadataVersion $metadataVersion } $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $properties = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($PSBoundParameters.ContainsKey('AcceptanceThreshold')) { $properties['acceptancethreshold'] = $AcceptanceThreshold } if ($PSBoundParameters.ContainsKey('AppFlowLog')) { $properties['appflowlog'] = $AppFlowLog } if ($PSBoundParameters.ContainsKey('BreachThreshold')) { $properties['breachthreshold'] = $BreachThreshold } if ($PSBoundParameters.ContainsKey('Interval')) { $properties['interval'] = $Interval } if ($PSBoundParameters.ContainsKey('Log')) { $properties['log'] = $Log } if ($PSBoundParameters.ContainsKey('LoginTerval')) { $properties['loginterval'] = $LoginTerval } if ($PSBoundParameters.ContainsKey('Loglimit')) { $properties['loglimit'] = $Loglimit } if ($PSBoundParameters.ContainsKey('MaxTransActionThreshold')) { $properties['maxtransactionthreshold'] = $MaxTransActionThreshold } if ($PSBoundParameters.ContainsKey('MinTransActionThreshold')) { $properties['mintransactionthreshold'] = $MinTransActionThreshold } if ($PSBoundParameters.ContainsKey('Name')) { $properties['name'] = $Name } if ($PSBoundParameters.ContainsKey('Samplecount')) { $properties['samplecount'] = $Samplecount } if ($PSBoundParameters.ContainsKey('SelectorName')) { $properties['selectorname'] = $SelectorName } if ($PSBoundParameters.ContainsKey('SNMPTrap')) { $properties['snmptrap'] = $SNMPTrap } if ($PSBoundParameters.ContainsKey('Sort')) { $properties['sort'] = $Sort } if ($PSBoundParameters.ContainsKey('Trackackonlypackets')) { $properties['trackackonlypackets'] = $Trackackonlypackets } if ($PSBoundParameters.ContainsKey('TracktransActionS')) { $properties['tracktransactions'] = $TracktransActionS } $body = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) foreach ($key in $properties.Keys) { if ($null -ne $properties[$key] -and (-not ($properties[$key] -is [string]) -or $properties[$key] -ne '')) { $body[$key] = $properties[$key] } } if ($PSCmdlet.ShouldProcess("$Name", 'Update streamidentifier')) { $response = Invoke-NSRestRequest @transportParameters -Session $Session -Method PUT -Task config -Type streamidentifier -Payload @{ streamidentifier = $body } -RawResponse if ($PassThru) { return Invoke-NSGetStreamIdentifier -Name $Name -Session $Session } return $response } } # endregion Invoke-NSUpdateStreamIdentifier # region Invoke-NSUpdateStreamselector function Invoke-NSUpdateStreamselector { <# .SYNOPSIS Updates a NetScaler streamselector resource. .DESCRIPTION Configuration for selector resource. .PARAMETER Name Name for the selector. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. If the name includes one or more spaces, and you are using the Citrix ADC CLI, enclose the name in double or single quotation marks (for example, "my selector" or 'my selector'). .PARAMETER Rule Set of up to five expressions. Maximum length: 7499 characters. Each expression must identify a specific request characteristic, such as the client's IP address (with CLIENT.IP.SRC) or requested server resource (with HTTP.REQ.URL). Note: If two or more selectors contain the same expressions in different order, a separate set of records is created for each selector. Minimum length = 1 .PARAMETER Session The NetScaler session. If omitted, the current default session is used. .PARAMETER IgnoreNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ReturnNullOnNotFound Returns null instead of throwing for known NITRO not-found responses. .PARAMETER ThrowOnWarning Treats NITRO warning responses as terminating errors. .PARAMETER PassThru Returns the updated resource after the operation completes. .EXAMPLE Invoke-NSUpdateStreamselector -Name 'example' -PassThru .EXAMPLE Invoke-NSUpdateStreamselector -Name 'example' -WhatIf .OUTPUTS System.Management.Automation.PSCustomObject .NOTES Generated from NetScaler NITRO API metadata. Generated: 2026-06-01 21:28 Supported metadata versions: 13.1, 14.1. #> [CmdletBinding(SupportsShouldProcess)] param( [Parameter(Mandatory, Position = 0)] [string] $Name, [Parameter()] [string[]] $Rule, [Parameter()] [psobject] $Session = (Get-NSSession), [Parameter()] [switch] $IgnoreNotFound, [Parameter()] [switch] $ReturnNullOnNotFound, [Parameter()] [switch] $ThrowOnWarning, [Parameter()] [switch] $PassThru ) $metadataVersion = Resolve-NSMetadataVersion -Session $Session -SupportedVersion @('13.1', '14.1') $transportParameters = @{} if ($PSBoundParameters.ContainsKey('IgnoreNotFound')) { $transportParameters.IgnoreNotFound = $IgnoreNotFound } if ($PSBoundParameters.ContainsKey('ReturnNullOnNotFound')) { $transportParameters.ReturnNullOnNotFound = $ReturnNullOnNotFound } if ($PSBoundParameters.ContainsKey('ThrowOnWarning')) { $transportParameters.ThrowOnWarning = $ThrowOnWarning } $properties = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) if ($PSBoundParameters.ContainsKey('Name')) { $properties['name'] = $Name } if ($PSBoundParameters.ContainsKey('Rule')) { $properties['rule'] = $Rule } $body = [System.Collections.Generic.Dictionary[string, object]]::new([System.StringComparer]::Ordinal) foreach ($key in $properties.Keys) { if ($null -ne $properties[$key] -and (-not ($properties[$key] -is [string]) -or $properties[$key] -ne '')) { $body[$key] = $properties[$key] } } if ($PSCmdlet.ShouldProcess("$Name", 'Update streamselector')) { $response = Invoke-NSRestRequest @transportParameters -Session $Session -Method PUT -Task config -Type streamselector -Payload @{ streamselector = $body } -RawResponse if ($PassThru) { return Invoke-NSGetStreamselector -Name $Name -Session $Session } return $response } } # endregion Invoke-NSUpdateStreamselector # SIG # Begin signature block # MIImdwYJKoZIhvcNAQcCoIImaDCCJmQCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDHAcV66azIeuV5 # o7C4bCzECNHIcPCANrCPBP8X+TKflaCCIAowggYUMIID/KADAgECAhB6I67aU2mW # D5HIPlz0x+M/MA0GCSqGSIb3DQEBDAUAMFcxCzAJBgNVBAYTAkdCMRgwFgYDVQQK # Ew9TZWN0aWdvIExpbWl0ZWQxLjAsBgNVBAMTJVNlY3RpZ28gUHVibGljIFRpbWUg # U3RhbXBpbmcgUm9vdCBSNDYwHhcNMjEwMzIyMDAwMDAwWhcNMzYwMzIxMjM1OTU5 # WjBVMQswCQYDVQQGEwJHQjEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMSwwKgYD # VQQDEyNTZWN0aWdvIFB1YmxpYyBUaW1lIFN0YW1waW5nIENBIFIzNjCCAaIwDQYJ # KoZIhvcNAQEBBQADggGPADCCAYoCggGBAM2Y2ENBq26CK+z2M34mNOSJjNPvIhKA # VD7vJq+MDoGD46IiM+b83+3ecLvBhStSVjeYXIjfa3ajoW3cS3ElcJzkyZlBnwDE # JuHlzpbN4kMH2qRBVrjrGJgSlzzUqcGQBaCxpectRGhhnOSwcjPMI3G0hedv2eNm # GiUbD12OeORN0ADzdpsQ4dDi6M4YhoGE9cbY11XxM2AVZn0GiOUC9+XE0wI7CQKf # OUfigLDn7i/WeyxZ43XLj5GVo7LDBExSLnh+va8WxTlA+uBvq1KO8RSHUQLgzb1g # bL9Ihgzxmkdp2ZWNuLc+XyEmJNbD2OIIq/fWlwBp6KNL19zpHsODLIsgZ+WZ1AzC # s1HEK6VWrxmnKyJJg2Lv23DlEdZlQSGdF+z+Gyn9/CRezKe7WNyxRf4e4bwUtrYE # 2F5Q+05yDD68clwnweckKtxRaF0VzN/w76kOLIaFVhf5sMM/caEZLtOYqYadtn03 # 4ykSFaZuIBU9uCSrKRKTPJhWvXk4CllgrwIDAQABo4IBXDCCAVgwHwYDVR0jBBgw # FoAU9ndq3T/9ARP/FqFsggIv0Ao9FCUwHQYDVR0OBBYEFF9Y7UwxeqJhQo1SgLqz # YZcZojKbMA4GA1UdDwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMBMGA1Ud # JQQMMAoGCCsGAQUFBwMIMBEGA1UdIAQKMAgwBgYEVR0gADBMBgNVHR8ERTBDMEGg # P6A9hjtodHRwOi8vY3JsLnNlY3RpZ28uY29tL1NlY3RpZ29QdWJsaWNUaW1lU3Rh # bXBpbmdSb290UjQ2LmNybDB8BggrBgEFBQcBAQRwMG4wRwYIKwYBBQUHMAKGO2h0 # dHA6Ly9jcnQuc2VjdGlnby5jb20vU2VjdGlnb1B1YmxpY1RpbWVTdGFtcGluZ1Jv # b3RSNDYucDdjMCMGCCsGAQUFBzABhhdodHRwOi8vb2NzcC5zZWN0aWdvLmNvbTAN # BgkqhkiG9w0BAQwFAAOCAgEAEtd7IK0ONVgMnoEdJVj9TC1ndK/HYiYh9lVUacah # RoZ2W2hfiEOyQExnHk1jkvpIJzAMxmEc6ZvIyHI5UkPCbXKspioYMdbOnBWQUn73 # 3qMooBfIghpR/klUqNxx6/fDXqY0hSU1OSkkSivt51UlmJElUICZYBodzD3M/SFj # eCP59anwxs6hwj1mfvzG+b1coYGnqsSz2wSKr+nDO+Db8qNcTbJZRAiSazr7KyUJ # Go1c+MScGfG5QHV+bps8BX5Oyv9Ct36Y4Il6ajTqV2ifikkVtB3RNBUgwu/mSiSU # ice/Jp/q8BMk/gN8+0rNIE+QqU63JoVMCMPY2752LmESsRVVoypJVt8/N3qQ1c6F # ibbcRabo3azZkcIdWGVSAdoLgAIxEKBeNh9AQO1gQrnh1TA8ldXuJzPSuALOz1Uj # b0PCyNVkWk7hkhVHfcvBfI8NtgWQupiaAeNHe0pWSGH2opXZYKYG4Lbukg7HpNi/ # KqJhue2Keak6qH9A8CeEOB7Eob0Zf+fU+CCQaL0cJqlmnx9HCDxF+3BLbUufrV64 # EbTI40zqegPZdA+sXCmbcZy6okx/SjwsusWRItFA3DE8MORZeFb6BmzBtqKJ7l93 # 9bbKBy2jvxcJI98Va95Q5JnlKor3m0E7xpMeYRriWklUPsetMSf2NvUQa/E5vVye # fQIwggZFMIIELaADAgECAhAIMk+dt9qRb2Pk8qM8Xl1RMA0GCSqGSIb3DQEBCwUA # MFYxCzAJBgNVBAYTAlBMMSEwHwYDVQQKExhBc3NlY28gRGF0YSBTeXN0ZW1zIFMu # QS4xJDAiBgNVBAMTG0NlcnR1bSBDb2RlIFNpZ25pbmcgMjAyMSBDQTAeFw0yNDA0 # MDQxNDA0MjRaFw0yNzA0MDQxNDA0MjNaMGsxCzAJBgNVBAYTAk5MMRIwEAYDVQQH # DAlTY2hpam5kZWwxIzAhBgNVBAoMGkpvaG4gQmlsbGVrZW5zIENvbnN1bHRhbmN5 # MSMwIQYDVQQDDBpKb2huIEJpbGxla2VucyBDb25zdWx0YW5jeTCCAaIwDQYJKoZI # hvcNAQEBBQADggGPADCCAYoCggGBAMslntDbSQwHZXwFhmibivbnd0Qfn6sqe/6f # os3pKzKxEsR907RkDMet2x6RRg3eJkiIr3TFPwqBooyXXgK3zxxpyhGOcuIqyM9J # 28DVf4kUyZHsjGO/8HFjrr3K1hABNUszP0o7H3o6J31eqV1UmCXYhQlNoW9FOmRC # 1amlquBmh7w4EKYEytqdmdOBavAD5Xq4vLPxNP6kyA+B2YTtk/xM27TghtbwFGKn # u9Vwnm7dFcpLxans4ONt2OxDQOMA5NwgcUv/YTpjhq9qoz6ivG55NRJGNvUXsM3w # 2o7dR6Xh4MuEGrTSrOWGg2A5EcLH1XqQtkF5cZnAPM8W/9HUp8ggornWnFVQ9/6M # ga+ermy5wy5XrmQpN+x3u6tit7xlHk1Hc+4XY4a4ie3BPXG2PhJhmZAn4ebNSBwN # Hh8z7WTT9X9OFERepGSytZVeEP7hgyptSLcuhpwWeR4QdBb7dV++4p3PsAUQVHFp # wkSbrRTv4EiJ0Lcz9P1HPGFoHiFAQQIDAQABo4IBeDCCAXQwDAYDVR0TAQH/BAIw # ADA9BgNVHR8ENjA0MDKgMKAuhixodHRwOi8vY2NzY2EyMDIxLmNybC5jZXJ0dW0u # cGwvY2NzY2EyMDIxLmNybDBzBggrBgEFBQcBAQRnMGUwLAYIKwYBBQUHMAGGIGh0 # dHA6Ly9jY3NjYTIwMjEub2NzcC1jZXJ0dW0uY29tMDUGCCsGAQUFBzAChilodHRw # Oi8vcmVwb3NpdG9yeS5jZXJ0dW0ucGwvY2NzY2EyMDIxLmNlcjAfBgNVHSMEGDAW # gBTddF1MANt7n6B0yrFu9zzAMsBwzTAdBgNVHQ4EFgQUO6KtBpOBgmrlANVAnyiQ # C6W6lJwwSwYDVR0gBEQwQjAIBgZngQwBBAEwNgYLKoRoAYb2dwIFAQQwJzAlBggr # BgEFBQcCARYZaHR0cHM6Ly93d3cuY2VydHVtLnBsL0NQUzATBgNVHSUEDDAKBggr # BgEFBQcDAzAOBgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggIBAEQsN8wg # PMdWVkwHPPTN+jKpdns5AKVFjcn00psf2NGVVgWWNQBIQc9lEuTBWb54IK6Ga3hx # QRZfnPNo5HGl73YLmFgdFQrFzZ1lnaMdIcyh8LTWv6+XNWfoyCM9wCp4zMIDPOs8 # LKSMQqA/wRgqiACWnOS4a6fyd5GUIAm4CuaptpFYr90l4Dn/wAdXOdY32UhgzmSu # xpUbhD8gVJUaBNVmQaRqeU8y49MxiVrUKJXde1BCrtR9awXbqembc7Nqvmi60tYK # lD27hlpKtj6eGPjkht0hHEsgzU0Fxw7ZJghYG2wXfpF2ziN893ak9Mi/1dmCNmor # GOnybKYfT6ff6YTCDDNkod4egcMZdOSv+/Qv+HAeIgEvrxE9QsGlzTwbRtbm6gwY # YcVBs/SsVUdBn/TSB35MMxRhHE5iC3aUTkDbceo/XP3uFhVL4g2JZHpFfCSu2TQr # rzRn2sn07jfMvzeHArCOJgBW1gPqR3WrJ4hUxL06Rbg1gs9tU5HGGz9KNQMfQFQ7 # 0Wz7UIhezGcFcRfkIfSkMmQYYpsc7rfzj+z0ThfDVzzJr2dMOFsMlfj1T6l22GBq # 9XQx0A4lcc5Fl9pRxbOuHHWFqIBD/BCEhwniOCySzqENd2N+oz8znKooSISStnkN # aYXt6xblJF2dx9Dn89FK7d1IquNxOwt0tI5dMIIGYjCCBMqgAwIBAgIRAKQpO24e # 3denNAiHrXpOtyQwDQYJKoZIhvcNAQEMBQAwVTELMAkGA1UEBhMCR0IxGDAWBgNV # BAoTD1NlY3RpZ28gTGltaXRlZDEsMCoGA1UEAxMjU2VjdGlnbyBQdWJsaWMgVGlt # ZSBTdGFtcGluZyBDQSBSMzYwHhcNMjUwMzI3MDAwMDAwWhcNMzYwMzIxMjM1OTU5 # WjByMQswCQYDVQQGEwJHQjEXMBUGA1UECBMOV2VzdCBZb3Jrc2hpcmUxGDAWBgNV # BAoTD1NlY3RpZ28gTGltaXRlZDEwMC4GA1UEAxMnU2VjdGlnbyBQdWJsaWMgVGlt # ZSBTdGFtcGluZyBTaWduZXIgUjM2MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC # CgKCAgEA04SV9G6kU3jyPRBLeBIHPNyUgVNnYayfsGOyYEXrn3+SkDYTLs1crcw/ # ol2swE1TzB2aR/5JIjKNf75QBha2Ddj+4NEPKDxHEd4dEn7RTWMcTIfm492TW22I # 8LfH+A7Ehz0/safc6BbsNBzjHTt7FngNfhfJoYOrkugSaT8F0IzUh6VUwoHdYDpi # ln9dh0n0m545d5A5tJD92iFAIbKHQWGbCQNYplqpAFasHBn77OqW37P9BhOASdmj # p3IijYiFdcA0WQIe60vzvrk0HG+iVcwVZjz+t5OcXGTcxqOAzk1frDNZ1aw8nFhG # EvG0ktJQknnJZE3D40GofV7O8WzgaAnZmoUn4PCpvH36vD4XaAF2CjiPsJWiY/j2 # xLsJuqx3JtuI4akH0MmGzlBUylhXvdNVXcjAuIEcEQKtOBR9lU4wXQpISrbOT8ux # +96GzBq8TdbhoFcmYaOBZKlwPP7pOp5Mzx/UMhyBA93PQhiCdPfIVOCINsUY4U23 # p4KJ3F1HqP3H6Slw3lHACnLilGETXRg5X/Fp8G8qlG5Y+M49ZEGUp2bneRLZoyHT # yynHvFISpefhBCV0KdRZHPcuSL5OAGWnBjAlRtHvsMBrI3AAA0Tu1oGvPa/4yeei # Ayu+9y3SLC98gDVbySnXnkujjhIh+oaatsk/oyf5R2vcxHahajMCAwEAAaOCAY4w # ggGKMB8GA1UdIwQYMBaAFF9Y7UwxeqJhQo1SgLqzYZcZojKbMB0GA1UdDgQWBBSI # YYyhKjdkgShgoZsx0Iz9LALOTzAOBgNVHQ8BAf8EBAMCBsAwDAYDVR0TAQH/BAIw # ADAWBgNVHSUBAf8EDDAKBggrBgEFBQcDCDBKBgNVHSAEQzBBMDUGDCsGAQQBsjEB # AgEDCDAlMCMGCCsGAQUFBwIBFhdodHRwczovL3NlY3RpZ28uY29tL0NQUzAIBgZn # gQwBBAIwSgYDVR0fBEMwQTA/oD2gO4Y5aHR0cDovL2NybC5zZWN0aWdvLmNvbS9T # ZWN0aWdvUHVibGljVGltZVN0YW1waW5nQ0FSMzYuY3JsMHoGCCsGAQUFBwEBBG4w # bDBFBggrBgEFBQcwAoY5aHR0cDovL2NydC5zZWN0aWdvLmNvbS9TZWN0aWdvUHVi # bGljVGltZVN0YW1waW5nQ0FSMzYuY3J0MCMGCCsGAQUFBzABhhdodHRwOi8vb2Nz # cC5zZWN0aWdvLmNvbTANBgkqhkiG9w0BAQwFAAOCAYEAAoE+pIZyUSH5ZakuPVKK # 4eWbzEsTRJOEjbIu6r7vmzXXLpJx4FyGmcqnFZoa1dzx3JrUCrdG5b//LfAxOGy9 # Ph9JtrYChJaVHrusDh9NgYwiGDOhyyJ2zRy3+kdqhwtUlLCdNjFjakTSE+hkC9F5 # ty1uxOoQ2ZkfI5WM4WXA3ZHcNHB4V42zi7Jk3ktEnkSdViVxM6rduXW0jmmiu71Z # pBFZDh7Kdens+PQXPgMqvzodgQJEkxaION5XRCoBxAwWwiMm2thPDuZTzWp/gUFz # i7izCmEt4pE3Kf0MOt3ccgwn4Kl2FIcQaV55nkjv1gODcHcD9+ZVjYZoyKTVWb4V # qMQy/j8Q3aaYd/jOQ66Fhk3NWbg2tYl5jhQCuIsE55Vg4N0DUbEWvXJxtxQQaVR5 # xzhEI+BjJKzh3TQ026JxHhr2fuJ0mV68AluFr9qshgwS5SpN5FFtaSEnAwqZv3IS # +mlG50rK7W3qXbWwi4hmpylUfygtYLEdLQukNEX1jiOKMIIGgjCCBGqgAwIBAgIQ # NsKwvXwbOuejs902y8l1aDANBgkqhkiG9w0BAQwFADCBiDELMAkGA1UEBhMCVVMx # EzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYD # VQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBS # U0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMjEwMzIyMDAwMDAwWhcNMzgw # MTE4MjM1OTU5WjBXMQswCQYDVQQGEwJHQjEYMBYGA1UEChMPU2VjdGlnbyBMaW1p # dGVkMS4wLAYDVQQDEyVTZWN0aWdvIFB1YmxpYyBUaW1lIFN0YW1waW5nIFJvb3Qg # UjQ2MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAiJ3YuUVnnR3d6Lkm # gZpUVMB8SQWbzFoVD9mUEES0QUCBdxSZqdTkdizICFNeINCSJS+lV1ipnW5ihkQy # C0cRLWXUJzodqpnMRs46npiJPHrfLBOifjfhpdXJ2aHHsPHggGsCi7uE0awqKggE # /LkYw3sqaBia67h/3awoqNvGqiFRJ+OTWYmUCO2GAXsePHi+/JUNAax3kpqstbl3 # vcTdOGhtKShvZIvjwulRH87rbukNyHGWX5tNK/WABKf+Gnoi4cmisS7oSimgHUI0 # Wn/4elNd40BFdSZ1EwpuddZ+Wr7+Dfo0lcHflm/FDDrOJ3rWqauUP8hsokDoI7D/ # yUVI9DAE/WK3Jl3C4LKwIpn1mNzMyptRwsXKrop06m7NUNHdlTDEMovXAIDGAvYy # nPt5lutv8lZeI5w3MOlCybAZDpK3Dy1MKo+6aEtE9vtiTMzz/o2dYfdP0KWZwZIX # bYsTIlg1YIetCpi5s14qiXOpRsKqFKqav9R1R5vj3NgevsAsvxsAnI8Oa5s2oy25 # qhsoBIGo/zi6GpxFj+mOdh35Xn91y72J4RGOJEoqzEIbW3q0b2iPuWLA911cRxgY # 5SJYubvjay3nSMbBPPFsyl6mY4/WYucmyS9lo3l7jk27MAe145GWxK4O3m3gEFEI # kv7kRmefDR7Oe2T1HxAnICQvr9sCAwEAAaOCARYwggESMB8GA1UdIwQYMBaAFFN5 # v1qqK0rPVIDh2JvAnfKyA2bLMB0GA1UdDgQWBBT2d2rdP/0BE/8WoWyCAi/QCj0U # JTAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zATBgNVHSUEDDAKBggr # BgEFBQcDCDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0 # cDovL2NybC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25B # dXRob3JpdHkuY3JsMDUGCCsGAQUFBwEBBCkwJzAlBggrBgEFBQcwAYYZaHR0cDov # L29jc3AudXNlcnRydXN0LmNvbTANBgkqhkiG9w0BAQwFAAOCAgEADr5lQe1oRLjl # ocXUEYfktzsljOt+2sgXke3Y8UPEooU5y39rAARaAdAxUeiX1ktLJ3+lgxtoLQhn # 5cFb3GF2SSZRX8ptQ6IvuD3wz/LNHKpQ5nX8hjsDLRhsyeIiJsms9yAWnvdYOdEM # q1W61KE9JlBkB20XBee6JaXx4UBErc+YuoSb1SxVf7nkNtUjPfcxuFtrQdRMRi/f # InV/AobE8Gw/8yBMQKKaHt5eia8ybT8Y/Ffa6HAJyz9gvEOcF1VWXG8OMeM7Vy7B # s6mSIkYeYtddU1ux1dQLbEGur18ut97wgGwDiGinCwKPyFO7ApcmVJOtlw9FVJxw # /mL1TbyBns4zOgkaXFnnfzg4qbSvnrwyj1NiurMp4pmAWjR+Pb/SIduPnmFzbSN/ # G8reZCL4fvGlvPFk4Uab/JVCSmj59+/mB2Gn6G/UYOy8k60mKcmaAZsEVkhOFuoj # 4we8CYyaR9vd9PGZKSinaZIkvVjbH/3nlLb0a7SBIkiRzfPfS9T+JesylbHa1LtR # V9U/7m0q7Ma2CQ/t392ioOssXW7oKLdOmMBl14suVFBmbzrt5V5cQPnwtd3UOTpS # 9oCG+ZZheiIvPgkDmA8FzPsnfXW5qHELB43ET7HHFHeRPRYrMBKjkb8/IN7Po0d0 # hQoF4TeMM+zYAJzoKQnVKOLg8pZVPT8wgga5MIIEoaADAgECAhEAmaOACiZVO2Wr # 3G6EprPqOTANBgkqhkiG9w0BAQwFADCBgDELMAkGA1UEBhMCUEwxIjAgBgNVBAoT # GVVuaXpldG8gVGVjaG5vbG9naWVzIFMuQS4xJzAlBgNVBAsTHkNlcnR1bSBDZXJ0 # aWZpY2F0aW9uIEF1dGhvcml0eTEkMCIGA1UEAxMbQ2VydHVtIFRydXN0ZWQgTmV0 # d29yayBDQSAyMB4XDTIxMDUxOTA1MzIxOFoXDTM2MDUxODA1MzIxOFowVjELMAkG # A1UEBhMCUEwxITAfBgNVBAoTGEFzc2VjbyBEYXRhIFN5c3RlbXMgUy5BLjEkMCIG # A1UEAxMbQ2VydHVtIENvZGUgU2lnbmluZyAyMDIxIENBMIICIjANBgkqhkiG9w0B # AQEFAAOCAg8AMIICCgKCAgEAnSPPBDAjO8FGLOczcz5jXXp1ur5cTbq96y34vuTm # flN4mSAfgLKTvggv24/rWiVGzGxT9YEASVMw1Aj8ewTS4IndU8s7VS5+djSoMcbv # IKck6+hI1shsylP4JyLvmxwLHtSworV9wmjhNd627h27a8RdrT1PH9ud0IF+njvM # k2xqbNTIPsnWtw3E7DmDoUmDQiYi/ucJ42fcHqBkbbxYDB7SYOouu9Tj1yHIohzu # C8KNqfcYf7Z4/iZgkBJ+UFNDcc6zokZ2uJIxWgPWXMEmhu1gMXgv8aGUsRdaCtVD # 2bSlbfsq7BiqljjaCun+RJgTgFRCtsuAEw0pG9+FA+yQN9n/kZtMLK+Wo837Q4QO # ZgYqVWQ4x6cM7/G0yswg1ElLlJj6NYKLw9EcBXE7TF3HybZtYvj9lDV2nT8mFSkc # SkAExzd4prHwYjUXTeZIlVXqj+eaYqoMTpMrfh5MCAOIG5knN4Q/JHuurfTI5XDY # O962WZayx7ACFf5ydJpoEowSP07YaBiQ8nXpDkNrUA9g7qf/rCkKbWpQ5boufUnq # 1UiYPIAHlezf4muJqxqIns/kqld6JVX8cixbd6PzkDpwZo4SlADaCi2JSplKShBS # ND36E/ENVv8urPS0yOnpG4tIoBGxVCARPCg1BnyMJ4rBJAcOSnAWd18Jx5n858JS # qPECAwEAAaOCAVUwggFRMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFN10XUwA # 23ufoHTKsW73PMAywHDNMB8GA1UdIwQYMBaAFLahVDkCw6A/joq8+tT4HKbROg79 # MA4GA1UdDwEB/wQEAwIBBjATBgNVHSUEDDAKBggrBgEFBQcDAzAwBgNVHR8EKTAn # MCWgI6Ahhh9odHRwOi8vY3JsLmNlcnR1bS5wbC9jdG5jYTIuY3JsMGwGCCsGAQUF # BwEBBGAwXjAoBggrBgEFBQcwAYYcaHR0cDovL3N1YmNhLm9jc3AtY2VydHVtLmNv # bTAyBggrBgEFBQcwAoYmaHR0cDovL3JlcG9zaXRvcnkuY2VydHVtLnBsL2N0bmNh # Mi5jZXIwOQYDVR0gBDIwMDAuBgRVHSAAMCYwJAYIKwYBBQUHAgEWGGh0dHA6Ly93 # d3cuY2VydHVtLnBsL0NQUzANBgkqhkiG9w0BAQwFAAOCAgEAdYhYD+WPUCiaU58Q # 7EP89DttyZqGYn2XRDhJkL6P+/T0IPZyxfxiXumYlARMgwRzLRUStJl490L94C9L # GF3vjzzH8Jq3iR74BRlkO18J3zIdmCKQa5LyZ48IfICJTZVJeChDUyuQy6rGDxLU # UAsO0eqeLNhLVsgw6/zOfImNlARKn1FP7o0fTbj8ipNGxHBIutiRsWrhWM2f8pXd # d3x2mbJCKKtl2s42g9KUJHEIiLni9ByoqIUul4GblLQigO0ugh7bWRLDm0CdY9rN # LqyA3ahe8WlxVWkxyrQLjH8ItI17RdySaYayX3PhRSC4Am1/7mATwZWwSD+B7eMc # ZNhpn8zJ+6MTyE6YoEBSRVrs0zFFIHUR08Wk0ikSf+lIe5Iv6RY3/bFAEloMU+vU # BfSouCReZwSLo8WdrDlPXtR0gicDnytO7eZ5827NS2x7gCBibESYkOh1/w1tVxTp # V2Na3PR7nxYVlPu1JPoRZCbH86gc96UTvuWiOruWmyOEMLOGGniR+x+zPF/2DaGg # K2W1eEJfo2qyrBNPvF7wuAyQfiFXLwvWHamoYtPZo0LHuH8X3n9C+xN4YaNjt2yw # zOr+tKyEVAotnyU9vyEVOaIYMk3IeBrmFnn0gbKeTTyYeEEUz/Qwt4HOUBCrW602 # NCmvO1nm+/80nLy5r0AZvCQxaQ4xggXDMIIFvwIBATBqMFYxCzAJBgNVBAYTAlBM # MSEwHwYDVQQKExhBc3NlY28gRGF0YSBTeXN0ZW1zIFMuQS4xJDAiBgNVBAMTG0Nl # cnR1bSBDb2RlIFNpZ25pbmcgMjAyMSBDQQIQCDJPnbfakW9j5PKjPF5dUTANBglg # hkgBZQMEAgEFAKCBhDAYBgorBgEEAYI3AgEMMQowCKACgAChAoAAMBkGCSqGSIb3 # DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsxDjAMBgorBgEEAYI3AgEV # MC8GCSqGSIb3DQEJBDEiBCAq2/a7nPw933NX5HmTejdnsmFdInkxrxQh4HJ20P5X # nTANBgkqhkiG9w0BAQEFAASCAYBtROKHtqDW8XqWePtVNx0BOEva0pDz61Yp4c2n # F1amtkhnTnx+b7MgJTJe28MagUJ1BuJ/i+DctizJ05zwbVPwdlORv8PEdgRjyE9r # mCj7OEC7P64pSMeHe71xfu4fSBTuQYlW1EKZQ9kQkwr6d3edG6iXHpPNqzsjmvEl # akPgqA1EGiFtGzg6vyy8LOH6kgG13nvnZAeEHuOfMgBK/ELmOOkPGLUXPJKn+Vze # yevSu6JWlQCl6hktSf2SnFxq8oK+qyNTj5Xbcdd01u+VmYGvfsn6/GIsHlG4MOdK # UXQgm5RcPCV4H06YOCXU7Ktthm+hdt1HsUEAUlXO+omu2pQm/lugYqVCYko9OXHD # IST3N5bswMRNBO09rbNkggBtBGrU8N63HaaavywTZZ21h0auZNpDxs2WP5OkXbDK # O+r26+Omf02qh9z3/sI+L1OxkfjTFeyzXEZZlhd3NRj3MDXTPfYgYtMOmICnLn/M # adCo7tVYZThOmH8FB5Wothke5uShggMjMIIDHwYJKoZIhvcNAQkGMYIDEDCCAwwC # AQEwajBVMQswCQYDVQQGEwJHQjEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMSww # KgYDVQQDEyNTZWN0aWdvIFB1YmxpYyBUaW1lIFN0YW1waW5nIENBIFIzNgIRAKQp # O24e3denNAiHrXpOtyQwDQYJYIZIAWUDBAICBQCgeTAYBgkqhkiG9w0BCQMxCwYJ # KoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0yNjA2MDExOTU2NDRaMD8GCSqGSIb3 # DQEJBDEyBDBQqTrj7S91NWcssw12DcOxETEHilS8ZRcJNOxrAmC+rfuNEI5OEE8+ # 4XS6nWDFf+cwDQYJKoZIhvcNAQEBBQAEggIAMx9mEjzkc83u6qilL9DfLs85osEW # ijIMioH1hE/Y10sar+QXduHoUlMq1sXcXKdYYi/sIK4wkYxp4sUQstq7vUhPSNaa # ZZ9NEhKtPfAK0Uk2Nrghn0AxQPSnGIxBK40sklcMbissALnMtkXcFT0qglvbfPzV # uG1nlnB9CWhPZbL0gil6pvKeG1CX3MocqV250Ceo+uv6+YSfSnwU8QTBBA0RVZDX # BzNXeiFmKBj96xbQSdhMhm2bbw91++CbBrqfocnG6VxSIsxS5/qI+BvMtv4bY3LO # K8PqeQh5pU/llB58CfrSggnwB7j+4b0wlpj9egevPO0Hk+ot+tsIngSoGDpHTj2g # 73e2XrYbZiWyKRNbdqQrwIuSNqWfcy/h5CrL2E7vgbbPXqRwsgPQYnCLKU/xFQNi # 66p2spXhm6NCT5mCU/X6c7hqHBNxw52BzcmQv5oTIP33pF1u/SvLihTqf1WbIVGo # E8rDPqZQD081j9uW/XoSqphgCwXME2fn2xx0zyq3BS/nC1N8sNYS21zM9MJo3Mrg # i/aTSAbDHRTgVakq2F4P7xXliRwaZOuno8NtDAHRokbXw0tBQ+NXRTln7ifCmdr5 # meHJEmZvkQk78g5TD6eChvvybiSXaqnLNVsilDS+vWwIRuRwTCtjD4QL95M4N6Nx # r7jfBjvwz+Q5Nhg= # SIG # End signature block |