ADC NITRO APIs

appqoeaction

Configuration for AppQoS action resource.

Properties

(click to see Operations )

Name Data Type Permissions Description
name Read-write Name for the AppQoE action. Must begin with a letter, number, or the underscore symbol (_). Other characters allowed, after the first character, are the hyphen (-), period (.) hash (#), space ( ), at (@), equals (=), and colon (:) characters. This is a mandatory argument.
priority Read-write Priority for queuing the request. If server resources are not available for a request that matches the configured rule, this option specifies a priority for queuing the request until the server resources are available again. If priority is not configured then Lowest priority will be used to queue the request.

Possible values = HIGH, MEDIUM, LOW, LOWEST
respondwith Read-write Responder action to be taken when the threshold is reached. Available settings function as follows ACS - Serve content from an alternative content service Threshold : maxConn or delay NS - Serve from the Citrix ADC (built-in response) Threshold : maxConn or delay. Possible values = ACS, NS
customfile Read-write name of the HTML page object to use as the response.

Minimum length = 1
altcontentsvcname Read-write Name of the alternative content service to be used in the ACS.

Minimum length = 1

Maximum length = 127
altcontentpath Read-write Path to the alternative content service to be used in the ACS.

Minimum length = 4

Maximum length = 127
polqdepth Read-write Policy queue depth threshold value. When the policy queue size (number of requests queued for the policy binding this action is attached to) increases to the specified polqDepth value, subsequent requests are dropped to the lowest priority level.

Minimum value = 0

Maximum value = 4294967294
priqdepth Read-write Queue depth threshold value per priorirty level. If the queue size (number of requests in the queue of that particular priorirty) on the virtual server to which this policy is bound, increases to the specified qDepth value, subsequent requests are dropped to the lowest priority level.

Minimum value = 0

Maximum value = 4294967294
maxconn Read-write Maximum number of concurrent connections that can be open for requests that matches with rule.

Minimum value = 1

Maximum value = 4294967294
delay Read-write Delay threshold, in microseconds, for requests that match the policy’s rule. If the delay statistics gathered for the matching request exceed the specified delay, configured action triggered for that request, if there is no action then requests are dropped to the lowest priority level.

Minimum value = 1

Maximum value = 599999999
dostrigexpression Read-write Optional expression to add second level check to trigger DoS actions. Specifically used for Analytics based DoS response generation.
dosaction Read-write DoS Action to take when vserver will be considered under DoS attack and corresponding rule matches. Mandatory if AppQoE actions are to be used for DoS attack prevention.

Possible values = SimpleResponse, HICResponse
tcpprofile Read-write Bind TCP Profile based on L2/L3/L7 parameters.

Minimum length = 1

Maximum length = 127
retryonreset Read-write Retry on TCP Reset.

Default value: NO

Possible values = YES, NO
numretries Read-write Retry count.

Default value: 3

Minimum value = 0

Maximum value = 7
hits Read-only .
__count Read-only count parameter

Operations

(click to see Properties )

  • ADD
  • DELETE
  • UPDATE
  • UNSET
  • GET (ALL)
  • GET
  • COUNT

Some options that you can use for each operations:

  • Getting warnings in response: NITRO allows you to get warnings in an operation by specifying the 'warning' query parameter as 'yes'. For example, to get warnings while connecting to the NetScaler appliance, the URL is as follows:

    http:// <netscaler-ip-address> /nitro/v1/config/login?warning=yes

    If any, the warnings are displayed in the response payload with the HTTP code '209 X-NITRO-WARNING'.

  • Authenticated access for individual NITRO operations: NITRO allows you to logon to the NetScaler appliance to perform individual operations. You can use this option instead of creating a NITRO session (using the login object) and then using that session to perform all operations,

    To do this, you must specify the username and password in the request header of the NITRO request as follows:

    X-NITRO-USER: <username>

    X-NITRO-PASS: <password>

    Note: In such cases, make sure that the request header DOES not include the following:

    Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

*Note: *

Mandatory parameters are marked in red and placeholder content is marked in green

add

URL: http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction

HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"appqoeaction":{
<b>      "name":<String_value>,
</b>      "priority":<String_value>,
      "respondwith":<String_value>,
      "customfile":<String_value>,
      "altcontentsvcname":<String_value>,
      "altcontentpath":<String_value>,
      "polqdepth":<Double_value>,
      "priqdepth":<Double_value>,
      "maxconn":<Double_value>,
      "delay":<Double_value>,
      "dostrigexpression":<String_value>,
      "dosaction":<String_value>,
      "tcpprofile":<String_value>,
      "retryonreset":<String_value>,
      "numretries":<Double_value>
}}

<!--NeedCopy-->

Response:

HTTP Status Code on Success: 201 Created

HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

delete

URL: http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction/ name_value<String>

HTTP Method: DELETE

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Response:

HTTP Status Code on Success: 200 OK

HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

update

URL: http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction

HTTP Method: PUT

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"appqoeaction":{
<b>      "name":<String_value>,
</b>      "priority":<String_value>,
      "altcontentsvcname":<String_value>,
      "altcontentpath":<String_value>,
      "polqdepth":<Double_value>,
      "priqdepth":<Double_value>,
      "maxconn":<Double_value>,
      "delay":<Double_value>,
      "dostrigexpression":<String_value>,
      "dosaction":<String_value>,
      "tcpprofile":<String_value>,
      "retryonreset":<String_value>,
      "numretries":<Double_value>
}}

<!--NeedCopy-->

Response:

HTTP Status Code on Success: 200 OK

HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

unset

URL: http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction? action=unset

HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"appqoeaction":{
<b>      "name":<String_value>,
</b>      "priority":true,
      "altcontentsvcname":true,
      "altcontentpath":true,
      "polqdepth":true,
      "priqdepth":true,
      "maxconn":true,
      "delay":true,
      "dosaction":true,
      "tcpprofile":true,
      "retryonreset":true,
      "numretries":true
}}

<!--NeedCopy-->

Response:

HTTP Status Code on Success: 200 OK

HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

get (all)

URL: http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction

Query-parameters:

attrs

http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction? attrs=property-name1,property-name2

Use this query parameter to specify the resource details that you want to retrieve.

filter

http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction? filter=property-name1:property-val1,property-name2:property-val2

Use this query-parameter to get the filtered set of appqoeaction resources configured on NetScaler.Filtering can be done on any of the properties of the resource.

view

http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction? view=summary

Use this query-parameter to get the summary output of appqoeaction resources configured on NetScaler.

Note: By default, the retrieved results are displayed in detail view (?view=detail).

pagination

http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction? pagesize=#no;pageno=#no

Use this query-parameter to get the appqoeaction resources in chunks.

HTTP Method: GET

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Accept:application/json

Response:

HTTP Status Code on Success: 200 OK

HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

Response Header:

Content-Type:application/json

Response Payload:


{ "appqoeaction": [ {
      "name":<String_value>,
      "hits":<Double_value>,
      "priority":<String_value>,
      "respondwith":<String_value>,
      "polqdepth":<Double_value>,
      "priqdepth":<Double_value>,
      "altcontentsvcname":<String_value>,
      "altcontentpath":<String_value>,
      "maxconn":<Double_value>,
      "delay":<Double_value>,
      "customfile":<String_value>,
      "dostrigexpression":<String_value>,
      "dosaction":<String_value>,
      "tcpprofile":<String_value>,
      "retryonreset":<String_value>,
      "numretries":<Double_value>
}]}

<!--NeedCopy-->

get

URL: http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction/ name_value<String>

Query-parameters:

attrs

http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction/ name_value<String> ? attrs=property-name1,property-name2

Use this query parameter to specify the resource details that you want to retrieve.

view

http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction/ name_value<String> ? view=summary

Use this query-parameter to get the summary output of appqoeaction resources configured on NetScaler.

Note: By default, the retrieved results are displayed in detail view (?view=detail).

HTTP Method: GET

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Accept:application/json

Response:

HTTP Status Code on Success: 200 OK

HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

Response Header:

Content-Type:application/json

Response Payload:


{  "appqoeaction": [ {
      "name":<String_value>,
      "hits":<Double_value>,
      "priority":<String_value>,
      "respondwith":<String_value>,
      "polqdepth":<Double_value>,
      "priqdepth":<Double_value>,
      "altcontentsvcname":<String_value>,
      "altcontentpath":<String_value>,
      "maxconn":<Double_value>,
      "delay":<Double_value>,
      "customfile":<String_value>,
      "dostrigexpression":<String_value>,
      "dosaction":<String_value>,
      "tcpprofile":<String_value>,
      "retryonreset":<String_value>,
      "numretries":<Double_value>
}]}

<!--NeedCopy-->

count

URL: http:// <netscaler-ip-address> /nitro/v1/config/appqoeaction? count=yes

HTTP Method: GET

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Accept:application/json

Response:

HTTP Status Code on Success: 200 OK

HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

Response Header:

Content-Type:application/json

Response Payload:


{ "appqoeaction": [ { "__count": "#no"} ] }

<!--NeedCopy-->
appqoeaction