ADC NITRO APIs

nshttpprofile

Configuration for HTTP profile resource.

Properties

(click to see Operations )

Name Data Type Permissions Description
name Read-write Name for an HTTP profile. Must begin with a letter, number, or the underscore (_) character. Other characters allowed, after the first character, are the hyphen (-), period (.), hash (#), space ( ), at (@), colon (:), and equal (=) characters. The name of a HTTP profile cannot be changed after it is created.



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

Minimum length = 1

Maximum length = 127
dropinvalreqs Read-write Drop invalid HTTP requests or responses.

Default value: DISABLED

Possible values = ENABLED, DISABLED
markhttp09inval Read-write Mark HTTP/0.9 requests as invalid.

Default value: DISABLED

Possible values = ENABLED, DISABLED
markconnreqinval Read-write Mark CONNECT requests as invalid.

Default value: DISABLED

Possible values = ENABLED, DISABLED
marktracereqinval Read-write Mark TRACE requests as invalid.

Default value: DISABLED

Possible values = ENABLED, DISABLED
markrfc7230noncompliantinval Read-write Mark RFC7230 non-compliant transaction as invalid.

Default value: DISABLED

Possible values = ENABLED, DISABLED
markhttpheaderextrawserror Read-write Mark Http header with extra white space as invalid.

Default value: DISABLED

Possible values = ENABLED, DISABLED
cmponpush Read-write Start data compression on receiving a TCP packet with PUSH flag set.

Default value: DISABLED

Possible values = ENABLED, DISABLED
conmultiplex Read-write Reuse server connections for requests from more than one client connections.

Default value: ENABLED

Possible values = ENABLED, DISABLED
maxreusepool Read-write Maximum limit on the number of connections, from the Citrix ADC to a particular server that are kept in the reuse pool. This setting is helpful for optimal memory utilization and for reducing the idle connections to the server just after the peak time. Zero implies no limit on reuse pool size. If non-zero value is given, it has to be greater than or equal to the number of running Packet Engines.

Default value: 0

Minimum value = 0

Maximum value = 360000
dropextracrlf Read-write Drop any extra ‘CR’ and ‘LF’ characters present after the header.

Default value: ENABLED

Possible values = ENABLED, DISABLED
incomphdrdelay Read-write Maximum time to wait, in milliseconds, between incomplete header packets. If the header packets take longer to arrive at Citrix ADC, the connection is silently dropped.

Default value: 7000

Minimum value = 1

Maximum value = 360000
websocket Read-write HTTP connection to be upgraded to a web socket connection. Once upgraded, Citrix ADC does not process Layer 7 traffic on this connection.

Default value: DISABLED

Possible values = ENABLED, DISABLED
rtsptunnel Read-write Allow RTSP tunnel in HTTP. Once application/x-rtsp-tunnelled is seen in Accept or Content-Type header, Citrix ADC does not process Layer 7 traffic on this connection.

Default value: DISABLED

Possible values = ENABLED, DISABLED
reqtimeout Read-write Time, in seconds, within which the HTTP request must complete. If the request does not complete within this time, the specified request timeout action is executed. Zero disables the timeout.

Default value: 0

Minimum value = 0

Maximum value = 86400
adpttimeout Read-write Adapts the configured request timeout based on flow conditions. The timeout is increased or decreased internally and applied on the flow.

Default value: DISABLED

Possible values = ENABLED, DISABLED
reqtimeoutaction Read-write Action to take when the HTTP request does not complete within the specified request timeout duration. You can configure the following actions
  • RESET - Send RST (reset) to client when timeout occurs.
  • DROP - Drop silently when timeout occurs.
  • Custom responder action - Name of the responder action to trigger when timeout occurs, used to send custom message.
  • dropextradata Read-write Drop any extra data when server sends more data than the specified content-length.

    Default value: DISABLED

    Possible values = ENABLED, DISABLED
    weblog Read-write Enable or disable web logging.

    Default value: ENABLED

    Possible values = ENABLED, DISABLED
    clientiphdrexpr Read-write Name of the header that contains the real client IP address.
    maxreq Read-write Maximum number of requests allowed on a single connection. Zero implies no limit on the number of requests.

    Default value: 0

    Minimum value = 0

    Maximum value = 65534
    persistentetag Read-write Generate the persistent Citrix ADC specific ETag for the HTTP response with ETag header.

    Default value: DISABLED

    Possible values = ENABLED, DISABLED
    spdy Read-write Enable SPDYv2 or SPDYv3 or both over SSL vserver. SSL will advertise SPDY support either during NPN Handshake or when client will advertises SPDY support during ALPN handshake. Both SPDY versions are enabled when this parameter is set to ENABLED.

    Default value: DISABLED

    Possible values = DISABLED, ENABLED, V2, V3
    http2 Read-write Choose whether to enable support for HTTP/2.

    Default value: DISABLED

    Possible values = ENABLED, DISABLED
    http2direct Read-write Choose whether to enable support for Direct HTTP/2.

    Default value: DISABLED

    Possible values = ENABLED, DISABLED
    http2strictcipher Read-write Choose whether to enable strict HTTP/2 cipher selection.

    Default value: ENABLED

    Possible values = ENABLED, DISABLED
    altsvc Read-write Choose whether to enable support for Alternative Service.

    Default value: DISABLED

    Possible values = ENABLED, DISABLED
    reusepooltimeout Read-write Idle timeout (in seconds) for server connections in re-use pool. Connections in the re-use pool are flushed, if they remain idle for the configured timeout.

    Default value: 0

    Minimum value = 0

    Maximum value = 31536000
    maxheaderlen Read-write Number of bytes to be queued to look for complete header before returning error. If complete header is not obtained after queuing these many bytes, request will be marked as invalid and no L7 processing will be done for that TCP connection.

    Default value: 24820

    Minimum value = 2048

    Maximum value = 61440
    minreusepool Read-write Minimum limit on the number of connections, from the Citrix ADC to a particular server that are kept in the reuse pool. This setting is helpful for optimal memory utilization and for reducing the idle connections to the server just after the peak time. Zero implies no limit on reuse pool size.

    Default value: 0

    Minimum value = 0

    Maximum value = 360000
    http2maxheaderlistsize Read-write Maximum size of header list that the Citrix ADC is prepared to accept, in bytes. NOTE: The actual plain text header size that the Citrix ADC accepts is limited by maxHeaderLen. Please change maxHeaderLen parameter as well when modifying http2MaxHeaderListSize.

    Default value: 24576

    Minimum value = 8192

    Maximum value = 65535
    http2maxframesize Read-write Maximum size of the frame payload that the Citrix ADC is willing to receive, in bytes.

    Default value: 16384

    Minimum value = 16384

    Maximum value = 32768
    http2maxconcurrentstreams Read-write Maximum number of concurrent streams that is allowed per connection.

    Default value: 100

    Minimum value = 0

    Maximum value = 1000
    http2initialwindowsize Read-write Initial window size for stream level flow control, in bytes.

    Default value: 65535

    Minimum value = 8192

    Maximum value = 20971520
    http2headertablesize Read-write Maximum size of the header compression table used to decode header blocks, in bytes.

    Default value: 4096

    Minimum value = 0

    Maximum value = 16384
    http2minseverconn Read-write Minimum number of HTTP2 connections established to backend server, on receiving HTTP requests from client before multiplexing the streams into the available HTTP/2 connections.

    Default value: 20

    Minimum value = 1

    Maximum value = 360000
    http2maxpingframespermin Read-write Maximum number of ping frames allowed in HTTP2 connection per minute.

    Default value: 60

    Minimum value = 1

    Maximum value = 360000
    http2maxsettingsframespermin Read-write Maximum number of settings frames allowed in HTTP2 connection per minute.

    Default value: 15

    Minimum value = 1

    Maximum value = 360000
    http2maxresetframespermin Read-write Maximum number of reset frames allowed in HTTP/2 connection per minute.

    Default value: 90

    Minimum value = 1

    Maximum value = 360000
    http2maxemptyframespermin Read-write Maximum number of empty frames allowed in HTTP2 connection per minute.

    Default value: 60

    Minimum value = 1

    Maximum value = 360000
    apdexcltresptimethreshold Read-write This option sets the satisfactory threshold (T) for client response time in milliseconds to be used for APDEX calculations. This means a transaction responding in less than this threshold is considered satisfactory. Transaction responding between T and 4T is considered tolerable. Any transaction responding in more than 4T time is considered frustrating. Citrix ADC maintains stats for such tolerable and frustrating transcations. And client response time related apdex counters are only updated on a vserver which receives clients traffic.

    Default value: 500

    Minimum value = 1

    Maximum value = 3600000
    refcnt Read-only Number of entities using this profile.
    builtin <String[]> Read-only Flag to determine if http profile is built-in or not.

    Possible values = MODIFIABLE, DELETABLE, IMMUTABLE, PARTITION_ALL
    feature Read-only The feature to be checked while applying this config.
    apdexsvrresptimethreshold Read-only This option sets the satisfactory threshold (T) for server response time in milliseconds to be used for APDEX calculations. This means a transaction responding in less than this threshold is considered satisfactory. Transaction responding between T and 4T is considered tolerable. Any transaction responding in more than 4T time is considered frustrating. Citrix ADC maintains stats for such tolerable and frustrating transcations. Server Response time related apdex counters are only updated on backend services or a backend vserver which is not accepting client traffic.

    Default value: 400

    Minimum value = 1

    Maximum value = 3600000
    __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/nshttpprofile

    HTTP Method: POST

    Request Headers:

    Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

    Content-Type:application/json

    Request Payload:

    
    {"nshttpprofile":{
    <b>      "name":<String_value>,
    </b>      "dropinvalreqs":<String_value>,
          "markhttp09inval":<String_value>,
          "markconnreqinval":<String_value>,
          "marktracereqinval":<String_value>,
          "markrfc7230noncompliantinval":<String_value>,
          "markhttpheaderextrawserror":<String_value>,
          "cmponpush":<String_value>,
          "conmultiplex":<String_value>,
          "maxreusepool":<Double_value>,
          "dropextracrlf":<String_value>,
          "incomphdrdelay":<Double_value>,
          "websocket":<String_value>,
          "rtsptunnel":<String_value>,
          "reqtimeout":<Double_value>,
          "adpttimeout":<String_value>,
          "reqtimeoutaction":<String_value>,
          "dropextradata":<String_value>,
          "weblog":<String_value>,
          "clientiphdrexpr":<String_value>,
          "maxreq":<Double_value>,
          "persistentetag":<String_value>,
          "spdy":<String_value>,
          "http2":<String_value>,
          "http2direct":<String_value>,
          "http2strictcipher":<String_value>,
          "altsvc":<String_value>,
          "reusepooltimeout":<Double_value>,
          "maxheaderlen":<Double_value>,
          "minreusepool":<Double_value>,
          "http2maxheaderlistsize":<Double_value>,
          "http2maxframesize":<Double_value>,
          "http2maxconcurrentstreams":<Double_value>,
          "http2initialwindowsize":<Double_value>,
          "http2headertablesize":<Double_value>,
          "http2minseverconn":<Double_value>,
          "http2maxpingframespermin":<Double_value>,
          "http2maxsettingsframespermin":<Double_value>,
          "http2maxresetframespermin":<Double_value>,
          "http2maxemptyframespermin":<Double_value>,
          "apdexcltresptimethreshold":<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/nshttpprofile/ 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/nshttpprofile

    HTTP Method: PUT

    Request Headers:

    Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

    Content-Type:application/json

    Request Payload:

    
    {"nshttpprofile":{
    <b>      "name":<String_value>,
    </b>      "dropinvalreqs":<String_value>,
          "markhttp09inval":<String_value>,
          "markconnreqinval":<String_value>,
          "marktracereqinval":<String_value>,
          "markrfc7230noncompliantinval":<String_value>,
          "markhttpheaderextrawserror":<String_value>,
          "cmponpush":<String_value>,
          "conmultiplex":<String_value>,
          "maxreusepool":<Double_value>,
          "dropextracrlf":<String_value>,
          "incomphdrdelay":<Double_value>,
          "websocket":<String_value>,
          "rtsptunnel":<String_value>,
          "reqtimeout":<Double_value>,
          "adpttimeout":<String_value>,
          "reqtimeoutaction":<String_value>,
          "dropextradata":<String_value>,
          "weblog":<String_value>,
          "clientiphdrexpr":<String_value>,
          "maxreq":<Double_value>,
          "persistentetag":<String_value>,
          "spdy":<String_value>,
          "http2":<String_value>,
          "http2direct":<String_value>,
          "http2strictcipher":<String_value>,
          "altsvc":<String_value>,
          "http2maxheaderlistsize":<Double_value>,
          "http2maxframesize":<Double_value>,
          "http2maxconcurrentstreams":<Double_value>,
          "http2initialwindowsize":<Double_value>,
          "http2headertablesize":<Double_value>,
          "http2minseverconn":<Double_value>,
          "http2maxpingframespermin":<Double_value>,
          "http2maxsettingsframespermin":<Double_value>,
          "http2maxresetframespermin":<Double_value>,
          "http2maxemptyframespermin":<Double_value>,
          "reusepooltimeout":<Double_value>,
          "maxheaderlen":<Double_value>,
          "minreusepool":<Double_value>,
          "apdexcltresptimethreshold":<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/nshttpprofile? action=unset

    HTTP Method: POST

    Request Headers:

    Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

    Content-Type:application/json

    Request Payload:

    
    {"nshttpprofile":{
    <b>      "name":<String_value>,
    </b>      "dropinvalreqs":true,
          "markhttp09inval":true,
          "markconnreqinval":true,
          "marktracereqinval":true,
          "markrfc7230noncompliantinval":true,
          "markhttpheaderextrawserror":true,
          "cmponpush":true,
          "conmultiplex":true,
          "maxreusepool":true,
          "dropextracrlf":true,
          "incomphdrdelay":true,
          "websocket":true,
          "dropextradata":true,
          "clientiphdrexpr":true,
          "reqtimeout":true,
          "adpttimeout":true,
          "reqtimeoutaction":true,
          "weblog":true,
          "maxreq":true,
          "persistentetag":true,
          "spdy":true,
          "http2":true,
          "http2maxheaderlistsize":true,
          "http2maxframesize":true,
          "http2maxconcurrentstreams":true,
          "http2initialwindowsize":true,
          "http2headertablesize":true,
          "http2minseverconn":true,
          "http2maxpingframespermin":true,
          "http2maxsettingsframespermin":true,
          "http2maxresetframespermin":true,
          "http2maxemptyframespermin":true,
          "reusepooltimeout":true,
          "maxheaderlen":true,
          "rtsptunnel":true,
          "minreusepool":true,
          "apdexcltresptimethreshold":true,
          "http2direct":true,
          "http2strictcipher":true,
          "altsvc":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/nshttpprofile

    Query-parameters:

    attrs

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

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

    view

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

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

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

    
    { "nshttpprofile": [ {
          "name":<String_value>,
          "dropinvalreqs":<String_value>,
          "markhttp09inval":<String_value>,
          "markconnreqinval":<String_value>,
          "marktracereqinval":<String_value>,
          "markrfc7230noncompliantinval":<String_value>,
          "markhttpheaderextrawserror":<String_value>,
          "cmponpush":<String_value>,
          "conmultiplex":<String_value>,
          "maxreusepool":<Double_value>,
          "websocket":<String_value>,
          "refcnt":<Double_value>,
          "dropextracrlf":<String_value>,
          "incomphdrdelay":<Double_value>,
          "reqtimeout":<Double_value>,
          "adpttimeout":<String_value>,
          "reqtimeoutaction":<String_value>,
          "dropextradata":<String_value>,
          "weblog":<String_value>,
          "clientiphdrexpr":<String_value>,
          "maxreq":<Double_value>,
          "persistentetag":<String_value>,
          "spdy":<String_value>,
          "http2":<String_value>,
          "http2direct":<String_value>,
          "http2strictcipher":<String_value>,
          "altsvc":<String_value>,
          "http2maxheaderlistsize":<Double_value>,
          "http2maxframesize":<Double_value>,
          "http2maxconcurrentstreams":<Double_value>,
          "http2initialwindowsize":<Double_value>,
          "http2headertablesize":<Double_value>,
          "http2minseverconn":<Double_value>,
          "http2maxpingframespermin":<Double_value>,
          "http2maxsettingsframespermin":<Double_value>,
          "http2maxresetframespermin":<Double_value>,
          "http2maxemptyframespermin":<Double_value>,
          "reusepooltimeout":<Double_value>,
          "maxheaderlen":<Double_value>,
          "rtsptunnel":<String_value>,
          "minreusepool":<Double_value>,
          "builtin":<String[]_value>,
          "feature":<String_value>,
          "apdexsvrresptimethreshold":<Double_value>,
          "apdexcltresptimethreshold":<Double_value>
    }]}
    
    <!--NeedCopy-->
    

    get

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

    Query-parameters:

    attrs

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

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

    
    {  "nshttpprofile": [ {
          "name":<String_value>,
          "dropinvalreqs":<String_value>,
          "markhttp09inval":<String_value>,
          "markconnreqinval":<String_value>,
          "marktracereqinval":<String_value>,
          "markrfc7230noncompliantinval":<String_value>,
          "markhttpheaderextrawserror":<String_value>,
          "cmponpush":<String_value>,
          "conmultiplex":<String_value>,
          "maxreusepool":<Double_value>,
          "websocket":<String_value>,
          "refcnt":<Double_value>,
          "dropextracrlf":<String_value>,
          "incomphdrdelay":<Double_value>,
          "reqtimeout":<Double_value>,
          "adpttimeout":<String_value>,
          "reqtimeoutaction":<String_value>,
          "dropextradata":<String_value>,
          "weblog":<String_value>,
          "clientiphdrexpr":<String_value>,
          "maxreq":<Double_value>,
          "persistentetag":<String_value>,
          "spdy":<String_value>,
          "http2":<String_value>,
          "http2direct":<String_value>,
          "http2strictcipher":<String_value>,
          "altsvc":<String_value>,
          "http2maxheaderlistsize":<Double_value>,
          "http2maxframesize":<Double_value>,
          "http2maxconcurrentstreams":<Double_value>,
          "http2initialwindowsize":<Double_value>,
          "http2headertablesize":<Double_value>,
          "http2minseverconn":<Double_value>,
          "http2maxpingframespermin":<Double_value>,
          "http2maxsettingsframespermin":<Double_value>,
          "http2maxresetframespermin":<Double_value>,
          "http2maxemptyframespermin":<Double_value>,
          "reusepooltimeout":<Double_value>,
          "maxheaderlen":<Double_value>,
          "rtsptunnel":<String_value>,
          "minreusepool":<Double_value>,
          "builtin":<String[]_value>,
          "feature":<String_value>,
          "apdexsvrresptimethreshold":<Double_value>,
          "apdexcltresptimethreshold":<Double_value>
    }]}
    
    <!--NeedCopy-->
    

    count

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

    
    { "nshttpprofile": [ { "__count": "#no"} ] }
    
    <!--NeedCopy-->
    
    nshttpprofile