ADC NITRO APIs

gslbservice

Configuration for GSLB service resource.

Properties

(click to see Operations )

Name Data Type Permissions Description
servicename Read-write Name for the GSLB service. 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. Can be changed after the GSLB service is created.



CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, “my gslbsvc” or ‘my gslbsvc’).

Minimum length = 1
cnameentry Read-write Canonical name of the GSLB service. Used in CNAME-based GSLB.

Minimum length = 1
ip Read-write IP address for the GSLB service. Should represent a load balancing, content switching, or VPN virtual server on the Citrix ADC, or the IP address of another load balancing device.

Minimum length = 1
servername Read-write Name of the server hosting the GSLB service.

Minimum length = 1
servicetype Read-write Type of service to create.

Default value: NSSVC_SERVICE_UNKNOWN

Possible values = HTTP, FTP, TCP, UDP, SSL, SSL_BRIDGE, SSL_TCP, NNTP, ANY, SIP_UDP, SIP_TCP, SIP_SSL, RADIUS, RDP, RTSP, MYSQL, MSSQL, ORACLE
port Read-write Port on which the load balancing entity represented by this GSLB service listens.

Minimum value = 1

Range 1 - 65535

* in CLI is represented as 65535 in NITRO API
publicip Read-write The public IP address that a NAT device translates to the GSLB service’s private IP address. Optional.
publicport Read-write The public port associated with the GSLB service’s public IP address. The port is mapped to the service’s private port number. Applicable to the local GSLB service. Optional.
maxclient Read-write The maximum number of open connections that the service can support at any given time. A GSLB service whose connection count reaches the maximum is not considered when a GSLB decision is made, until the connection count drops below the maximum.

Minimum value = 0

Maximum value = 4294967294
healthmonitor Read-write Monitor the health of the GSLB service.

Default value: YES

Possible values = YES, NO
sitename Read-write Name of the GSLB site to which the service belongs.

Minimum length = 1
state Read-write Enable or disable the service.

Default value: ENABLED

Possible values = ENABLED, DISABLED
cip Read-write In the request that is forwarded to the GSLB service, insert a header that stores the client’s IP address. Client IP header insertion is used in connection-proxy based site persistence.

Default value: DISABLED

Possible values = ENABLED, DISABLED
cipheader Read-write Name for the HTTP header that stores the client’s IP address. Used with the Client IP option. If client IP header insertion is enabled on the service and a name is not specified for the header, the Citrix ADC uses the name specified by the cipHeader parameter in the set ns param command or, in the GUI, the Client IP Header parameter in the Configure HTTP Parameters dialog box.

Minimum length = 1
sitepersistence Read-write Use cookie-based site persistence. Applicable only to HTTP and SSL GSLB services.

Possible values = ConnectionProxy, HTTPRedirect, NONE
cookietimeout Read-write Timeout value, in minutes, for the cookie, when cookie based site persistence is enabled.

Minimum value = 0

Maximum value = 1440
siteprefix Read-write The site’s prefix string. When the service is bound to a GSLB virtual server, a GSLB site domain is generated internally for each bound service-domain pair by concatenating the site prefix of the service and the name of the domain. If the special string NONE is specified, the site-prefix string is unset. When implementing HTTP redirect site persistence, the Citrix ADC redirects GSLB requests to GSLB services by using their site domains.
clttimeout Read-write Idle time, in seconds, after which a client connection is terminated. Applicable if connection proxy based site persistence is used.

Minimum value = 0

Maximum value = 31536000
svrtimeout Read-write Idle time, in seconds, after which a server connection is terminated. Applicable if connection proxy based site persistence is used.

Minimum value = 0

Maximum value = 31536000
maxbandwidth Read-write Integer specifying the maximum bandwidth allowed for the service. A GSLB service whose bandwidth reaches the maximum is not considered when a GSLB decision is made, until its bandwidth consumption drops below the maximum.
downstateflush Read-write Flush all active transactions associated with the GSLB service when its state transitions from UP to DOWN. Do not enable this option for services that must complete their transactions. Applicable if connection proxy based site persistence is used.

Possible values = ENABLED, DISABLED
maxaaausers Read-write Maximum number of SSL VPN users that can be logged on concurrently to the VPN virtual server that is represented by this GSLB service. A GSLB service whose user count reaches the maximum is not considered when a GSLB decision is made, until the count drops below the maximum.

Minimum value = 0

Maximum value = 65535
monthreshold Read-write Monitoring threshold value for the GSLB service. If the sum of the weights of the monitors that are bound to this GSLB service and are in the UP state is not equal to or greater than this threshold value, the service is marked as DOWN.

Minimum value = 0

Maximum value = 65535
hashid Read-write Unique hash identifier for the GSLB service, used by hash based load balancing methods.

Minimum value = 1
comment Read-write Any comments that you might want to associate with the GSLB service.
appflowlog Read-write Enable logging appflow flow information.

Default value: ENABLED

Possible values = ENABLED, DISABLED
naptrreplacement Read-write The replacement domain name for this NAPTR.

Maximum length = 255
naptrorder Read-write An integer specifying the order in which the NAPTR records MUST be processed in order to accurately represent the ordered list of Rules. The ordering is from lowest to highest.

Default value: 1

Minimum value = 1

Maximum value = 65535
naptrservices Read-write Service Parameters applicable to this delegation path.

Maximum length = 255
naptrdomainttl Read-write Modify the TTL of the internally created naptr domain.

Default value: 3600

Minimum value = 1
naptrpreference Read-write An integer specifying the preference of this NAPTR among NAPTR records having same order. lower the number, higher the preference.

Default value: 1

Minimum value = 1

Maximum value = 65535
ipaddress Read-write The new IP address of the service.
viewname Read-write Name of the DNS view of the service. A DNS view is used in global server load balancing (GSLB) to return a predetermined IP address to a specific group of clients, which are identified by using a DNS policy.

Minimum length = 1
viewip Read-write IP address to be used for the given view.
weight Read-write Weight to assign to the monitor-service binding. A larger number specifies a greater weight. Contributes to the monitoring threshold, which determines the state of the service.

Minimum value = 1

Maximum value = 100
monitor_name_svc Read-write Name of the monitor to bind to the service.

Minimum length = 1
newname Read-write New name for the GSLB service.

Minimum length = 1
gslb Read-only .

Default value: GSLB

Possible values = REMOTE, LOCAL
svrstate Read-only Server state.

Possible values = UP, DOWN, UNKNOWN, BUSY, OUT OF SERVICE, GOING OUT OF SERVICE, DOWN WHEN GOING OUT OF SERVICE, NS_EMPTY_STR, Unknown, DISABLED
svreffgslbstate Read-only Effective state of the gslb svc.

Possible values = UP, DOWN, UNKNOWN, BUSY, OUT OF SERVICE, GOING OUT OF SERVICE, DOWN WHEN GOING OUT OF SERVICE, NS_EMPTY_STR, Unknown, DISABLED
gslbthreshold Read-only Indicates if gslb svc has reached threshold.
gslbsvcstats Read-only Indicates if gslb svc has stats of the primary or the whole chain.
monstate Read-only State of the monitor bound to gslb service.

Possible values = ENABLED, DISABLED
preferredlocation Read-only Prefered location.
monitor_state Read-only The running state of the monitor on this service.

Possible values = UP, DOWN, UNKNOWN, BUSY, OUT OF SERVICE, GOING OUT OF SERVICE, DOWN WHEN GOING OUT OF SERVICE, NS_EMPTY_STR, Unknown, DISABLED
statechangetimesec Read-only Time when last state change happened. Seconds part.
tickssincelaststatechange Read-only Time in 10 millisecond ticks since the last state change.
threshold Read-only .

Possible values = ABOVE, BELOW
clmonowner Read-only Tells the mon owner of the gslb service.

Minimum value = 0

Maximum value = 32
clmonview Read-only Tells the view id of the monitoring owner.
gslbsvchealth Read-only This parameter displays effective health of a GSLB service.
glsbsvchealthdescr Read-only Displays the warning message related to health a of GSLB service.
nodefaultbindings Read-only to determine if the configuration will have default ssl CIPHER and ECC curve bindings.

Default value: NO

Possible values = YES, NO
__count Read-only count parameter

Operations

(click to see Properties )

  • ADD
  • DELETE
  • UPDATE
  • UNSET
  • 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/gslbservice HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:

{"gslbservice":{
<b>"servicename":<String_value>,
</b>"cnameentry":<String_value>,
"ip":<String_value>,
"servername":<String_value>,
"servicetype":<String_value>,
"port":<Integer_value>,
"publicip":<String_value>,
"publicport":<Integer_value>,
"maxclient":<Double_value>,
"healthmonitor":<String_value>,
<b>"sitename":<String_value>,
</b>"state":<String_value>,
"cip":<String_value>,
"cipheader":<String_value>,
"sitepersistence":<String_value>,
"cookietimeout":<Double_value>,
"siteprefix":<String_value>,
"clttimeout":<Double_value>,
"svrtimeout":<Double_value>,
"maxbandwidth":<Double_value>,
"downstateflush":<String_value>,
"maxaaausers":<Double_value>,
"monthreshold":<Double_value>,
"hashid":<Double_value>,
"comment":<String_value>,
"appflowlog":<String_value>,
"naptrreplacement":<String_value>,
"naptrorder":<Double_value>,
"naptrservices":<String_value>,
"naptrdomainttl":<Double_value>,
"naptrpreference":<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/gslbservice/ servicename_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/gslbservice HTTP Method: PUT

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:

{"gslbservice":{
<b>"servicename":<String_value>,
</b>"ipaddress":<String_value>,
"publicip":<String_value>,
"publicport":<Integer_value>,
"cip":<String_value>,
"cipheader":<String_value>,
"sitepersistence":<String_value>,
"siteprefix":<String_value>,
"maxclient":<Double_value>,
"healthmonitor":<String_value>,
"maxbandwidth":<Double_value>,
"downstateflush":<String_value>,
"maxaaausers":<Double_value>,
"viewname":<String_value>,
"viewip":<String_value>,
"monthreshold":<Double_value>,
"weight":<Double_value>,
"monitor_name_svc":<String_value>,
"hashid":<Double_value>,
"comment":<String_value>,
"appflowlog":<String_value>,
"naptrorder":<Double_value>,
"naptrpreference":<Double_value>,
"naptrservices":<String_value>,
"naptrreplacement":<String_value>,
"naptrdomainttl":<Double_value>,
"sitename":<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/gslbservice? action=unset HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:

{"gslbservice":{
<b>"servicename":<String_value>,
</b>"publicip":true,
"publicport":true,
"cip":true,
"cipheader":true,
"sitepersistence":true,
"siteprefix":true,
"maxclient":true,
"healthmonitor":true,
"maxbandwidth":true,
"downstateflush":true,
"maxaaausers":true,
"monthreshold":true,
"hashid":true,
"comment":true,
"appflowlog":true,
"naptrorder":true,
"naptrpreference":true,
"naptrservices":true,
"naptrreplacement":true,
"naptrdomainttl":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

rename

URL: http:// <netscaler-ip-address> /nitro/v1/config/gslbservice? action=rename HTTP Method: POST

Request Headers:

Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

Content-Type:application/json

Request Payload:

{"gslbservice":{
<b>"servicename":<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/gslbservice Query-parameters: attrs http:// <netscaler-ip-address> /nitro/v1/config/gslbservice? 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/gslbservice? filter=property-name1:property-val1,property-name2:property-val2

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

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

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

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

{ "gslbservice": [ {
"servicename":<String_value>,
"gslb":<String_value>,
"ipaddress":<String_value>,
"ip":<String_value>,
"servername":<String_value>,
"servicetype":<String_value>,
"port":<Integer_value>,
"publicip":<String_value>,
"publicport":<Integer_value>,
"maxclient":<Double_value>,
"maxaaausers":<Double_value>,
"sitename":<String_value>,
"svrstate":<String_value>,
"svreffgslbstate":<String_value>,
"gslbthreshold":<Integer_value>,
"gslbsvcstats":<Integer_value>,
"state":<String_value>,
"monstate":<String_value>,
"cip":<String_value>,
"cipheader":<String_value>,
"sitepersistence":<String_value>,
"siteprefix":<String_value>,
"clttimeout":<Double_value>,
"svrtimeout":<Double_value>,
"preferredlocation":<String_value>,
"maxbandwidth":<Double_value>,
"downstateflush":<String_value>,
"cnameentry":<String_value>,
"viewname":<String_value>,
"viewip":<String_value>,
"weight":<Double_value>,
"monthreshold":<Double_value>,
"monitor_state":<String_value>,
"hashid":<Double_value>,
"comment":<String_value>,
"healthmonitor":<String_value>,
"appflowlog":<String_value>,
"statechangetimesec":<String_value>,
"tickssincelaststatechange":<Double_value>,
"threshold":<String_value>,
"clmonowner":<Double_value>,
"clmonview":<Double_value>,
"naptrorder":<Double_value>,
"naptrpreference":<Double_value>,
"naptrservices":<String_value>,
"naptrreplacement":<String_value>,
"naptrdomainttl":<Double_value>,
"gslbsvchealth":<Integer_value>,
"glsbsvchealthdescr":<String_value>,
"nodefaultbindings":<String_value>
}]}

<!--NeedCopy-->

get

URL: http:// <netscaler-ip-address> /nitro/v1/config/gslbservice/ servicename_value<String> Query-parameters: attrs http:// <netscaler-ip-address> /nitro/v1/config/gslbservice/ servicename_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/gslbservice/ servicename_value<String> ? view=summary

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

{  "gslbservice": [ {
"servicename":<String_value>,
"gslb":<String_value>,
"ipaddress":<String_value>,
"ip":<String_value>,
"servername":<String_value>,
"servicetype":<String_value>,
"port":<Integer_value>,
"publicip":<String_value>,
"publicport":<Integer_value>,
"maxclient":<Double_value>,
"maxaaausers":<Double_value>,
"sitename":<String_value>,
"svrstate":<String_value>,
"svreffgslbstate":<String_value>,
"gslbthreshold":<Integer_value>,
"gslbsvcstats":<Integer_value>,
"state":<String_value>,
"monstate":<String_value>,
"cip":<String_value>,
"cipheader":<String_value>,
"sitepersistence":<String_value>,
"siteprefix":<String_value>,
"clttimeout":<Double_value>,
"svrtimeout":<Double_value>,
"preferredlocation":<String_value>,
"maxbandwidth":<Double_value>,
"downstateflush":<String_value>,
"cnameentry":<String_value>,
"viewname":<String_value>,
"viewip":<String_value>,
"weight":<Double_value>,
"monthreshold":<Double_value>,
"monitor_state":<String_value>,
"hashid":<Double_value>,
"comment":<String_value>,
"healthmonitor":<String_value>,
"appflowlog":<String_value>,
"statechangetimesec":<String_value>,
"tickssincelaststatechange":<Double_value>,
"threshold":<String_value>,
"clmonowner":<Double_value>,
"clmonview":<Double_value>,
"naptrorder":<Double_value>,
"naptrpreference":<Double_value>,
"naptrservices":<String_value>,
"naptrreplacement":<String_value>,
"naptrdomainttl":<Double_value>,
"gslbsvchealth":<Integer_value>,
"glsbsvchealthdescr":<String_value>,
"nodefaultbindings":<String_value>
}]}

<!--NeedCopy-->

count

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

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

<!--NeedCopy-->
gslbservice