ADC NITRO APIs

server

Configuration for server resource.

Properties

(click to see Operations )

Name Data Type Permissions Description
name Read-write Name for the server.

Must begin with an ASCII alphabetic or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.

Can be changed after the name is created.

Minimum length = 1
ipaddress Read-write IPv4 or IPv6 address of the server. If you create an IP address based server, you can specify the name of the server, instead of its IP address, when creating a service. Note: If you do not create a server entry, the server IP address that you enter when you create a service becomes the name of the server.
domain Read-write Domain name of the server. For a domain based configuration, you must create the server first.

Minimum length = 1
translationip Read-write IP address used to transform the server’s DNS-resolved IP address.
translationmask Read-write The netmask of the translation ip.
domainresolveretry Read-write Time, in seconds, for which the Citrix ADC must wait, after DNS resolution fails, before sending the next DNS query to resolve the domain name.

Default value: 5

Minimum value = 5

Maximum value = 20939
state Read-write Initial state of the server.

Default value: ENABLED

Possible values = ENABLED, DISABLED
ipv6address Read-write Support IPv6 addressing mode. If you configure a server with the IPv6 addressing mode, you cannot use the server in the IPv4 addressing mode.

Default value: NO

Possible values = YES, NO
comment Read-write Any information about the server.
td Read-write Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.

Minimum value = 0

Maximum value = 4094
querytype Read-write Specify the type of DNS resolution to be done on the configured domain to get the backend services. Valid query types are A, AAAA and SRV with A being the default querytype. The type of DNS resolution done on the domains in SRV records is inherited from ipv6 argument.

Default value: A

Possible values = A, AAAA, SRV
domainresolvenow Read-write Immediately send a DNS query to resolve the server’s domain name.
delay Read-write Time, in seconds, after which all the services configured on the server are disabled.
graceful Read-write Shut down gracefully, without accepting any new connections, and disabling each service when all of its connections are closed.

Default value: NO

Possible values = YES, NO
Internal Read-write Display names of the servers that have been created for internal use.
newname Read-write New name for the server. Must begin with an ASCII alphabetic or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.

Minimum length = 1
statechangetimesec Read-only Time when last state change happened. Seconds part.
tickssincelaststatechange Read-only Time in 10 millisecond ticks since the last state change.
autoscale Read-only Auto scale option for a servicegroup.

Default value: DISABLED

Possible values = DISABLED, DNS, POLICY, CLOUD, API
usip Read-only Use the client’s IP address as the source IP address when initiating a connection to the server. When creating a service, if you do not set this parameter, the service inherits the global Use Source IP setting (available in the enable ns mode and disable ns mode CLI commands, or in the System > Settings > Configure modes > Configure Modes dialog box). However, you can override this setting after you create the service.

Possible values = YES, NO
cka Read-only Enable client keep-alive for the service group.

Possible values = YES, NO
tcpb Read-only Enable TCP buffering for the service group.

Possible values = YES, NO
cmp Read-only Enable compression for the specified service.

Possible values = YES, NO
cacheable Read-only Use the transparent cache redirection virtual server to forward the request to the cache server.

Default value: NO

Possible values = YES, NO
sc Read-only State of the SureConnect feature for the service group.

Default value: OFF

Possible values = ON, OFF
sp Read-only Enable surge protection for the service group.

Default value: OFF

Possible values = ON, OFF
__count Read-only count parameter

Operations

(click to see Properties )

  • ADD
  • DELETE
  • UPDATE
  • UNSET
  • ENABLE
  • DISABLE
  • GET (ALL)
  • GET
  • COUNT
  • RENAME

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/server

HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"server":{
<b>      "name":<String_value>,
</b>      "ipaddress":<String_value>,
      "domain":<String_value>,
      "translationip":<String_value>,
      "translationmask":<String_value>,
      "domainresolveretry":<Integer_value>,
      "state":<String_value>,
      "ipv6address":<String_value>,
      "comment":<String_value>,
      "td":<Double_value>,
      "querytype":<String_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/server/ 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/server

HTTP Method: PUT

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"server":{
<b>      "name":<String_value>,
</b>      "ipaddress":<String_value>,
      "domainresolveretry":<Integer_value>,
      "translationip":<String_value>,
      "translationmask":<String_value>,
      "domainresolvenow":<Boolean_value>,
      "comment":<String_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/server? action=unset

HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"server":{
<b>      "name":<String_value>,
</b>      "comment":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

enable

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

HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"server":{
<b>      "name":<String_value>
</b>}}

<!--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

disable

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

HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"server":{
<b>      "name":<String_value>,
</b>      "delay":<Double_value>,
      "graceful":<String_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

rename

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

HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:


{"server":{
<b>      "name":<String_value>,
</b><b>      "newname":<String_value>
</b>}}

<!--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/server

Query-parameters:

args

http:// <netscaler-ip-address> /nitro/v1/config/server? args=name: <String_value> ,Internal: <Boolean_value>

Use this query-parameter to get server resources based on additional properties.

attrs

http:// <netscaler-ip-address> /nitro/v1/config/server? 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/server? filter=property-name1:property-val1,property-name2:property-val2

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

view

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

Use this query-parameter to get the summary output of server 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/server? pagesize=#no;pageno=#no

Use this query-parameter to get the server 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:


{ "server": [ {
name:<String_value>,Internal:<Boolean_value>      "ipaddress":<String_value>,
      "state":<String_value>,
      "domain":<String_value>,
      "domainresolveretry":<Integer_value>,
      "translationip":<String_value>,
      "translationmask":<String_value>,
      "comment":<String_value>,
      "statechangetimesec":<String_value>,
      "tickssincelaststatechange":<Double_value>,
      "ipv6address":<String_value>,
      "td":<Double_value>,
      "autoscale":<String_value>,
      "usip":<String_value>,
      "cka":<String_value>,
      "tcpb":<String_value>,
      "cmp":<String_value>,
      "cacheable":<String_value>,
      "sc":<String_value>,
      "sp":<String_value>,
      "querytype":<String_value>
}]}

<!--NeedCopy-->

get

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

Query-parameters:

attrs

http:// <netscaler-ip-address> /nitro/v1/config/server/ 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/server/ name_value<String> ? view=summary

Use this query-parameter to get the summary output of server 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:


{  "server": [ {
name:<String_value>,Internal:<Boolean_value>      "ipaddress":<String_value>,
      "state":<String_value>,
      "domain":<String_value>,
      "domainresolveretry":<Integer_value>,
      "translationip":<String_value>,
      "translationmask":<String_value>,
      "comment":<String_value>,
      "statechangetimesec":<String_value>,
      "tickssincelaststatechange":<Double_value>,
      "ipv6address":<String_value>,
      "td":<Double_value>,
      "autoscale":<String_value>,
      "usip":<String_value>,
      "cka":<String_value>,
      "tcpb":<String_value>,
      "cmp":<String_value>,
      "cacheable":<String_value>,
      "sc":<String_value>,
      "sp":<String_value>,
      "querytype":<String_value>
}]}

<!--NeedCopy-->

count

URL: http:// <netscaler-ip-address> /nitro/v1/config/server? 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:


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

<!--NeedCopy-->
server