ADC NITRO APIs

botsettings

Configuration for Bot engine settings resource.

Properties

(click to see Operations )

Name Data Type Permissions Description
defaultprofile <String> Read-write Profile to use when a connection does not match any policy. Default setting is " ", which sends unmatched connections back to the Citrix ADC without attempting to filter them further.

Minimum length = 1
javascriptname <String> Read-write Name of the JavaScript that the Bot Management feature uses in response.

Must begin with a letter or number, and can consist of from 1 to 31 letters, numbers, and the hyphen (-) and underscore (_) symbols.



The following requirement applies only to the Citrix ADC CLI:

If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my cookie name" or 'my cookie name').

Minimum length = 1
sessiontimeout <Double> Read-write Timeout, in seconds, after which a user session is terminated.

Minimum value = 1

Maximum value = 65535
sessioncookiename <String> Read-write Name of the SessionCookie that the Bot Management feature uses for tracking.

Must begin with a letter or number, and can consist of from 1 to 31 letters, numbers, and the hyphen (-) and underscore (_) symbols.



The following requirement applies only to the Citrix ADC CLI:

If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my cookie name" or 'my cookie name').

Minimum length = 1
dfprequestlimit <Double> Read-write Number of requests to allow without bot session cookie if device fingerprint is enabled.

Minimum value = 1
signatureautoupdate <String> Read-write Flag used to enable/disable bot auto update signatures.

Default value: OFF

Possible values = ON, OFF
signatureurl <String> Read-write URL to download the bot signature mapping file from server.

Default value: https://nsbotsignatures.s3.amazonaws.com/BotSignatureMapping.json
proxyserver <String> Read-write Proxy Server IP to get updated signatures from AWS.
proxyport <Integer> Read-write Proxy Server Port to get updated signatures from AWS.

Default value: 8080

Range 1 - 65535

* in CLI is represented as 65535 in NITRO API
builtin <String[]> Read-only Flag to determine if bot engine setting is built-in or not.

Possible values = MODIFIABLE, DELETABLE, IMMUTABLE, PARTITION_ALL
feature <String> Read-only The feature to be checked while applying this config.

Operations

(click to see Properties )

  • UPDATE
  • UNSET
  • GET (ALL)

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

update

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

HTTP Method: PUT

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"botsettings":{
      "defaultprofile":<String_value>,
      "javascriptname":<String_value>,
      "sessiontimeout":<Double_value>,
      "sessioncookiename":<String_value>,
      "dfprequestlimit":<Double_value>,
      "signatureautoupdate":<String_value>,
      "signatureurl":<String_value>,
      "proxyserver":<String_value>,
      "proxyport":<Integer_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/botsettings? action=unset

HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"botsettings":{
      "defaultprofile":true,
      "javascriptname":true,
      "sessiontimeout":true,
      "sessioncookiename":true,
      "dfprequestlimit":true,
      "signatureautoupdate":true,
      "signatureurl":true,
      "proxyserver":true,
      "proxyport":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/botsettings

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:


{ "botsettings": [ {
      "defaultprofile":<String_value>,
      "javascriptname":<String_value>,
      "sessiontimeout":<Double_value>,
      "sessioncookiename":<String_value>,
      "dfprequestlimit":<Double_value>,
      "signatureautoupdate":<String_value>,
      "signatureurl":<String_value>,
      "proxyserver":<String_value>,
      "proxyport":<Integer_value>,
      "builtin":<String[]_value>,
      "feature":<String_value>
}]}

<!--NeedCopy-->
botsettings