openapi: 3.1.0 info: title: Citrix NetScaler NITRO REST API description: >- The NITRO (NetScaler Interface Through RESTful Operations) API provides programmatic access to configure, monitor, and manage Citrix NetScaler (ADC) appliances. Built on REST architecture using HTTP/HTTPS, the API supports comprehensive management of application delivery controller features including load balancing virtual servers, content switching virtual servers, system configuration, and appliance-level settings. All NITRO operations are logged to /var/nitro.log on the appliance. version: '14.1' contact: name: NetScaler Support url: https://support.citrix.com/ license: name: Proprietary url: https://www.cloud.com/legal termsOfService: https://www.cloud.com/legal externalDocs: description: Citrix ADC NITRO API Reference Documentation url: https://developer-docs.netscaler.com/en-us/adc-nitro-api/current-release.html servers: - url: https://{nsip}/nitro/v1 description: NetScaler NITRO API endpoint variables: nsip: default: netscaler.example.com description: >- The IP address or hostname of the NetScaler appliance (NSIP). tags: - name: Authentication description: >- Session-based authentication for the NITRO API. Obtain an authentication token via login, then include it as a cookie in subsequent requests. - name: CS Virtual Server description: >- Content switching virtual servers direct client requests to different load balancing virtual servers based on content switching policies that evaluate HTTP request attributes. - name: LB Virtual Server description: >- Load balancing virtual servers accept incoming traffic and distribute it across backend services using configurable load balancing methods such as round robin, least connections, and more. - name: NS Config description: >- NetScaler appliance configuration including IP address, network settings, HTTP ports, and system-level parameters. Supports save, clear, and diff operations. - name: Statistics description: >- Real-time performance and health statistics for configured resources including virtual servers, services, and system metrics. - name: System description: >- System-level resources for managing the NetScaler appliance including system information, files, users, groups, and global settings. security: - nitroAuthToken: [] - nitroBasicAuth: [] paths: /config/login: post: operationId: login summary: Citrix Netscaler Log in to the Netscaler Appliance description: >- Authenticates the user and returns a session token (NITRO_AUTH_TOKEN) as a cookie. This token must be included in subsequent API requests. The default session timeout is 30 minutes, or a user-configured value when restricted timeout is enabled (default 15 minutes). tags: - Authentication security: [] requestBody: required: true content: application/json: schema: type: object required: - login properties: login: type: object required: - username - password properties: username: type: string description: The administrator username. examples: - nsroot password: type: string description: The administrator password. format: password example: login: username: nsroot password: nsroot responses: '201': description: Login successful. Session token returned as a Set-Cookie header. headers: Set-Cookie: description: >- NITRO_AUTH_TOKEN cookie for authenticating subsequent requests. schema: type: string examples: - NITRO_AUTH_TOKEN=abc123xyz; path=/nitro/v1 content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Login201Example: summary: Default login 201 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': description: Authentication failed due to invalid credentials. content: application/json: schema: $ref: '#/components/schemas/NitroErrorResponse' examples: Login401Example: summary: Default login 401 response x-microcks-default: true value: errorcode: 10 message: example_value severity: ERROR x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/logout: post: operationId: logout summary: Citrix Netscaler Log Out From the Netscaler Appliance description: >- Terminates the current session and invalidates the NITRO_AUTH_TOKEN cookie. tags: - Authentication requestBody: required: true content: application/json: schema: type: object required: - logout properties: logout: type: object example: logout: {} responses: '201': description: Logout successful. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Logout201Example: summary: Default logout 201 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/nsconfig: get: operationId: getNsConfig summary: Citrix Netscaler Get Netscaler Configuration description: >- Retrieves the current NetScaler appliance configuration including IP address, network settings, HTTP ports, and system parameters. tags: - NS Config parameters: - $ref: '#/components/parameters/Attrs' responses: '200': description: Successful retrieval of NS configuration. content: application/json: schema: type: object properties: nsconfig: $ref: '#/components/schemas/NsConfig' examples: Getnsconfig200Example: summary: Default getNsConfig 200 response x-microcks-default: true value: nsconfig: ipaddress: example_value netmask: example_value nsvlan: 10 ifnum: example_value tagged: 'YES' httpport: - 10 maxconn: 10 maxreq: 10 cip: ENABLED cipheader: example_value cookieversion: '0' securecookie: ENABLED pmtumin: 10 pmtutimeout: 10 ftpportrange: example_value timezone: example_value grantquotamaxclient: 10 grantquotaspillover: 10 crportrange: example_value systemtype: Stand-alone primaryip: example_value primaryip6: example_value flags: 10 lastconfigchangedtime: example_value lastconfigsavetime: example_value currentsytemtime: example_value systemtime: 10 configchanged: true mappedip: example_value range: 10 '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateNsConfig summary: Citrix Netscaler Update Netscaler Configuration description: >- Modifies NetScaler appliance configuration parameters such as IP address, network settings, and system-level options. tags: - NS Config requestBody: required: true content: application/json: schema: type: object required: - nsconfig properties: nsconfig: $ref: '#/components/schemas/NsConfig' examples: UpdatensconfigRequestExample: summary: Default updateNsConfig request x-microcks-default: true value: nsconfig: ipaddress: example_value netmask: example_value nsvlan: 10 ifnum: example_value tagged: 'YES' httpport: - 10 maxconn: 10 maxreq: 10 cip: ENABLED cipheader: example_value cookieversion: '0' securecookie: ENABLED pmtumin: 10 pmtutimeout: 10 ftpportrange: example_value timezone: example_value grantquotamaxclient: 10 grantquotaspillover: 10 crportrange: example_value systemtype: Stand-alone primaryip: example_value primaryip6: example_value flags: 10 lastconfigchangedtime: example_value lastconfigsavetime: example_value currentsytemtime: example_value systemtime: 10 configchanged: true mappedip: example_value range: 10 responses: '200': description: Configuration updated successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Updatensconfig200Example: summary: Default updateNsConfig 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' '400': $ref: '#/components/responses/BadRequest' x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/nsconfig?action=save: post: operationId: saveNsConfig summary: Citrix Netscaler Save Netscaler Configuration description: >- Saves the running configuration to the appliance persistent storage (ns.conf). This ensures configuration changes persist across reboots. tags: - NS Config requestBody: required: true content: application/json: schema: type: object required: - nsconfig properties: nsconfig: type: object example: nsconfig: {} responses: '200': description: Configuration saved successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Savensconfig200Example: summary: Default saveNsConfig 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/nsconfig?action=clear: post: operationId: clearNsConfig summary: Citrix Netscaler Clear Netscaler Configuration description: >- Clears the NetScaler configuration. The level parameter controls what is cleared - basic, extended, or full. tags: - NS Config requestBody: required: true content: application/json: schema: type: object required: - nsconfig properties: nsconfig: type: object required: - level properties: level: type: string description: >- Level of configuration to clear. enum: - basic - extended - full examples: ClearnsconfigRequestExample: summary: Default clearNsConfig request x-microcks-default: true value: nsconfig: level: basic responses: '200': description: Configuration cleared successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Clearnsconfig200Example: summary: Default clearNsConfig 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/systemfile: get: operationId: listSystemFiles summary: Citrix Netscaler List System Files description: >- Retrieves system files from a specified location on the NetScaler appliance. tags: - System parameters: - name: args in: query description: >- File location argument in the format filelocation:%2Fnsconfig%2Fssl (URL-encoded path). required: true schema: type: string example: example_value responses: '200': description: Successful retrieval of system files. content: application/json: schema: type: object properties: systemfile: type: array items: $ref: '#/components/schemas/SystemFile' examples: Listsystemfiles200Example: summary: Default listSystemFiles 200 response x-microcks-default: true value: systemfile: - filename: example_value filelocation: example_value filecontent: example_value fileencoding: BASE64 fileaccesstime: example_value filemodifiedtime: example_value filemode: example_value filesize: 10 '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: uploadSystemFile summary: Citrix Netscaler Upload a System File description: >- Uploads a file to the NetScaler appliance. The file content must be Base64-encoded. tags: - System requestBody: required: true content: application/json: schema: type: object required: - systemfile properties: systemfile: $ref: '#/components/schemas/SystemFile' example: systemfile: filename: cert1.crt filelocation: /nsconfig/ssl filecontent: BASE64_ENCODED_CONTENT fileencoding: BASE64 responses: '201': description: File uploaded successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Uploadsystemfile201Example: summary: Default uploadSystemFile 201 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/systemfile/{filename}: delete: operationId: deleteSystemFile summary: Citrix Netscaler Delete a System File description: >- Deletes a file from the NetScaler appliance at the specified location. tags: - System parameters: - name: filename in: path required: true description: The name of the file to delete. schema: type: string example: example_value - name: args in: query required: true description: >- File location argument in the format filelocation:%2Fnsconfig%2Fssl (URL-encoded path). schema: type: string example: example_value responses: '200': description: File deleted successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Deletesystemfile200Example: summary: Default deleteSystemFile 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' '404': description: File not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/lbvserver: get: operationId: listLbVservers summary: Citrix Netscaler List Load Balancing Virtual Servers description: >- Retrieves all load balancing virtual server configurations. Supports filtering, pagination, attribute selection, and summary/detail views. tags: - LB Virtual Server parameters: - $ref: '#/components/parameters/Attrs' - $ref: '#/components/parameters/Filter' - $ref: '#/components/parameters/View' - $ref: '#/components/parameters/Count' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNo' responses: '200': description: Successful retrieval of load balancing virtual servers. content: application/json: schema: type: object properties: lbvserver: type: array items: $ref: '#/components/schemas/LbVserver' examples: Listlbvservers200Example: summary: Default listLbVservers 200 response x-microcks-default: true value: lbvserver: - name: Example Title servicetype: HTTP ipv46: example_value port: 10 ipset: example_value range: 10 ippattern: example_value ipmask: example_value td: 10 lbmethod: ROUNDROBIN hashlength: 10 netmask: example_value v6netmasklen: 10 backuplbmethod: ROUNDROBIN persistencetype: SOURCEIP persistmask: example_value v6persistmasklen: 10 persistencebackup: SOURCEIP timeout: 10 persistavpno: - {} cookiename: example_value rule: example_value listenpolicy: example_value listenpriority: 10 resrule: example_value push: ENABLED pushlabel: example_value pushmulticlients: 'YES' comment: example_value clttimeout: 10 somethod: CONNECTION sopersistence: ENABLED sopersistencetimeout: 10 sothreshold: 10 healththreshold: 10 redirecturl: https://www.example.com downstateflush: ENABLED disableprimaryondown: ENABLED insertvserveripport: 'OFF' vipheader: example_value authenticationhost: example_value authentication: 'ON' authn401: 'ON' authnvsname: example_value icmpvsrresponse: PASSIVE rhistate: PASSIVE newservicerequest: 10 newservicerequestunit: PER_SECOND newservicerequestincrementinterval: 10 minautoscalemembers: 10 maxautoscalemembers: 10 skippersistency: Bypass appflowlog: ENABLED state: ENABLED connfailover: DISABLED redirurl: https://www.example.com curstate: UP effectivestate: UP status: 10 lbrrreason: 10 totalservices: 10 activeservices: 10 statechangetimesec: example_value tickssincelaststatechange: 10 health: 10 isgslb: true '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createLbVserver summary: Citrix Netscaler Create a Load Balancing Virtual Server description: >- Creates a new load balancing virtual server with the specified configuration. The name and servicetype properties are required. Supports bulk creation by passing an array. tags: - LB Virtual Server parameters: - $ref: '#/components/parameters/BulkErrorHandling' requestBody: required: true content: application/json: schema: type: object required: - lbvserver properties: lbvserver: oneOf: - $ref: '#/components/schemas/LbVserver' - type: array items: $ref: '#/components/schemas/LbVserver' example: lbvserver: name: MyFirstLbVServer servicetype: HTTP ipv46: 10.102.29.88 port: 80 lbmethod: ROUNDROBIN responses: '201': description: Load balancing virtual server created successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Createlbvserver201Example: summary: Default createLbVserver 201 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '207': description: >- Multi-status response for bulk operations where some items may have succeeded and others failed. '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '409': description: >- Resource already exists. A virtual server with the specified name is already configured. x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/lbvserver/{name}: get: operationId: getLbVserver summary: Citrix Netscaler Get a Specific Load Balancing Virtual Server description: >- Retrieves the configuration of a specific load balancing virtual server identified by name. tags: - LB Virtual Server parameters: - name: name in: path required: true description: >- Name of the load balancing virtual server. schema: type: string minLength: 1 example: Example Title - $ref: '#/components/parameters/Attrs' responses: '200': description: Successful retrieval of the virtual server. content: application/json: schema: type: object properties: lbvserver: type: array items: $ref: '#/components/schemas/LbVserver' minItems: 1 maxItems: 1 examples: Getlbvserver200Example: summary: Default getLbVserver 200 response x-microcks-default: true value: lbvserver: - name: Example Title servicetype: HTTP ipv46: example_value port: 10 ipset: example_value range: 10 ippattern: example_value ipmask: example_value td: 10 lbmethod: ROUNDROBIN hashlength: 10 netmask: example_value v6netmasklen: 10 backuplbmethod: ROUNDROBIN persistencetype: SOURCEIP persistmask: example_value v6persistmasklen: 10 persistencebackup: SOURCEIP timeout: 10 persistavpno: - {} cookiename: example_value rule: example_value listenpolicy: example_value listenpriority: 10 resrule: example_value push: ENABLED pushlabel: example_value pushmulticlients: 'YES' comment: example_value clttimeout: 10 somethod: CONNECTION sopersistence: ENABLED sopersistencetimeout: 10 sothreshold: 10 healththreshold: 10 redirecturl: https://www.example.com downstateflush: ENABLED disableprimaryondown: ENABLED insertvserveripport: 'OFF' vipheader: example_value authenticationhost: example_value authentication: 'ON' authn401: 'ON' authnvsname: example_value icmpvsrresponse: PASSIVE rhistate: PASSIVE newservicerequest: 10 newservicerequestunit: PER_SECOND newservicerequestincrementinterval: 10 minautoscalemembers: 10 maxautoscalemembers: 10 skippersistency: Bypass appflowlog: ENABLED state: ENABLED connfailover: DISABLED redirurl: https://www.example.com curstate: UP effectivestate: UP status: 10 lbrrreason: 10 totalservices: 10 activeservices: 10 statechangetimesec: example_value tickssincelaststatechange: 10 health: 10 isgslb: true '401': $ref: '#/components/responses/Unauthorized' '404': description: Virtual server not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateLbVserver summary: Citrix Netscaler Update a Load Balancing Virtual Server description: >- Updates the configuration of an existing load balancing virtual server. Retrieve the current state, modify properties locally, and upload the complete updated state. tags: - LB Virtual Server parameters: - name: name in: path required: true description: >- Name of the load balancing virtual server to update. schema: type: string minLength: 1 example: Example Title requestBody: required: true content: application/json: schema: type: object required: - lbvserver properties: lbvserver: $ref: '#/components/schemas/LbVserver' example: lbvserver: name: MyFirstLbVServer lbmethod: LEASTCONNECTION comment: Updated via NITRO API responses: '200': description: Virtual server updated successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Updatelbvserver200Example: summary: Default updateLbVserver 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': description: Virtual server not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteLbVserver summary: Citrix Netscaler Delete a Load Balancing Virtual Server description: >- Deletes a load balancing virtual server identified by name. tags: - LB Virtual Server parameters: - name: name in: path required: true description: >- Name of the load balancing virtual server to delete. schema: type: string minLength: 1 example: Example Title responses: '200': description: Virtual server deleted successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Deletelbvserver200Example: summary: Default deleteLbVserver 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' '404': description: Virtual server not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/lbvserver_service_binding: put: operationId: bindServiceToLbVserver summary: Citrix Netscaler Bind a Service to a Load Balancing Virtual Server description: >- Binds a backend service to a load balancing virtual server, allowing the virtual server to distribute traffic to that service. tags: - LB Virtual Server requestBody: required: true content: application/json: schema: type: object required: - lbvserver_service_binding properties: lbvserver_service_binding: $ref: '#/components/schemas/LbVserverServiceBinding' example: lbvserver_service_binding: name: MyFirstLbVServer servicename: svc_prod weight: 20 responses: '200': description: Service bound successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Bindservicetolbvserver200Example: summary: Default bindServiceToLbVserver 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/lbvserver_service_binding/{name}: get: operationId: getLbVserverServiceBindings summary: Citrix Netscaler Get Service Bindings for a Load Balancing Virtual Server description: >- Retrieves all services bound to a specific load balancing virtual server. tags: - LB Virtual Server parameters: - name: name in: path required: true description: >- Name of the load balancing virtual server. schema: type: string example: Example Title responses: '200': description: Successful retrieval of service bindings. content: application/json: schema: type: object properties: lbvserver_service_binding: type: array items: $ref: '#/components/schemas/LbVserverServiceBinding' examples: Getlbvserverservicebindings200Example: summary: Default getLbVserverServiceBindings 200 response x-microcks-default: true value: lbvserver_service_binding: - name: Example Title servicename: example_value weight: 10 servicetype: example_value curstate: example_value ipv46: example_value port: 10 dynamicweight: 10 '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: unbindServiceFromLbVserver summary: Citrix Netscaler Unbind a Service From a Load Balancing Virtual Server description: >- Removes the binding between a service and a load balancing virtual server. tags: - LB Virtual Server parameters: - name: name in: path required: true description: >- Name of the load balancing virtual server. schema: type: string example: Example Title - name: args in: query required: true description: >- Arguments to identify the service binding to remove, in the format servicename:svc_prod. schema: type: string example: example_value responses: '200': description: Service unbound successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Unbindservicefromlbvserver200Example: summary: Default unbindServiceFromLbVserver 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/csvserver: get: operationId: listCsVservers summary: Citrix Netscaler List Content Switching Virtual Servers description: >- Retrieves all content switching virtual server configurations. Supports filtering, pagination, attribute selection, and summary/detail views. tags: - CS Virtual Server parameters: - $ref: '#/components/parameters/Attrs' - $ref: '#/components/parameters/Filter' - $ref: '#/components/parameters/View' - $ref: '#/components/parameters/Count' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNo' responses: '200': description: Successful retrieval of content switching virtual servers. content: application/json: schema: type: object properties: csvserver: type: array items: $ref: '#/components/schemas/CsVserver' examples: Listcsvservers200Example: summary: Default listCsVservers 200 response x-microcks-default: true value: csvserver: - name: Example Title td: 10 servicetype: HTTP ipv46: example_value port: 10 ipset: example_value range: 10 ippattern: example_value ipmask: example_value stateupdate: ENABLED precedence: RULE casesensitive: 'ON' somethod: CONNECTION sopersistence: ENABLED sopersistencetimeout: 10 sothreshold: 10 redirecturl: https://www.example.com clttimeout: 10 downstateflush: ENABLED insertvserveripport: 'OFF' vipheader: example_value disableprimaryondown: ENABLED authentication: 'ON' authenticationhost: example_value authn401: 'ON' authnvsname: example_value push: ENABLED pushlabel: example_value pushmulticlients: 'YES' comment: example_value l2conn: 'ON' icmpvsrresponse: PASSIVE rhistate: PASSIVE appflowlog: ENABLED state: ENABLED lbvserver: example_value targetlbvserver: example_value cachetype: TRANSPARENT redirect: CACHE curstate: UP status: 10 statechangetimesec: example_value tickssincelaststatechange: 10 type: example_value ngname: example_value value: example_value '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createCsVserver summary: Citrix Netscaler Create a Content Switching Virtual Server description: >- Creates a new content switching virtual server. Content switching directs incoming client requests to specific load balancing virtual servers based on policies that evaluate request attributes. tags: - CS Virtual Server parameters: - $ref: '#/components/parameters/BulkErrorHandling' requestBody: required: true content: application/json: schema: type: object required: - csvserver properties: csvserver: oneOf: - $ref: '#/components/schemas/CsVserver' - type: array items: $ref: '#/components/schemas/CsVserver' example: csvserver: name: CSVS-1 servicetype: HTTP ipv46: 203.0.113.5 port: 80 responses: '201': description: Content switching virtual server created successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Createcsvserver201Example: summary: Default createCsVserver 201 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '409': description: Resource already exists. x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/csvserver/{name}: get: operationId: getCsVserver summary: Citrix Netscaler Get a Specific Content Switching Virtual Server description: >- Retrieves the configuration of a specific content switching virtual server identified by name. tags: - CS Virtual Server parameters: - name: name in: path required: true description: >- Name of the content switching virtual server. schema: type: string minLength: 1 example: Example Title - $ref: '#/components/parameters/Attrs' responses: '200': description: Successful retrieval of the content switching virtual server. content: application/json: schema: type: object properties: csvserver: type: array items: $ref: '#/components/schemas/CsVserver' minItems: 1 maxItems: 1 examples: Getcsvserver200Example: summary: Default getCsVserver 200 response x-microcks-default: true value: csvserver: - name: Example Title td: 10 servicetype: HTTP ipv46: example_value port: 10 ipset: example_value range: 10 ippattern: example_value ipmask: example_value stateupdate: ENABLED precedence: RULE casesensitive: 'ON' somethod: CONNECTION sopersistence: ENABLED sopersistencetimeout: 10 sothreshold: 10 redirecturl: https://www.example.com clttimeout: 10 downstateflush: ENABLED insertvserveripport: 'OFF' vipheader: example_value disableprimaryondown: ENABLED authentication: 'ON' authenticationhost: example_value authn401: 'ON' authnvsname: example_value push: ENABLED pushlabel: example_value pushmulticlients: 'YES' comment: example_value l2conn: 'ON' icmpvsrresponse: PASSIVE rhistate: PASSIVE appflowlog: ENABLED state: ENABLED lbvserver: example_value targetlbvserver: example_value cachetype: TRANSPARENT redirect: CACHE curstate: UP status: 10 statechangetimesec: example_value tickssincelaststatechange: 10 type: example_value ngname: example_value value: example_value '401': $ref: '#/components/responses/Unauthorized' '404': description: Content switching virtual server not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateCsVserver summary: Citrix Netscaler Update a Content Switching Virtual Server description: >- Updates the configuration of an existing content switching virtual server. tags: - CS Virtual Server parameters: - name: name in: path required: true description: >- Name of the content switching virtual server to update. schema: type: string minLength: 1 example: Example Title requestBody: required: true content: application/json: schema: type: object required: - csvserver properties: csvserver: $ref: '#/components/schemas/CsVserver' examples: UpdatecsvserverRequestExample: summary: Default updateCsVserver request x-microcks-default: true value: csvserver: name: Example Title td: 10 servicetype: HTTP ipv46: example_value port: 10 ipset: example_value range: 10 ippattern: example_value ipmask: example_value stateupdate: ENABLED precedence: RULE casesensitive: 'ON' somethod: CONNECTION sopersistence: ENABLED sopersistencetimeout: 10 sothreshold: 10 redirecturl: https://www.example.com clttimeout: 10 downstateflush: ENABLED insertvserveripport: 'OFF' vipheader: example_value disableprimaryondown: ENABLED authentication: 'ON' authenticationhost: example_value authn401: 'ON' authnvsname: example_value push: ENABLED pushlabel: example_value pushmulticlients: 'YES' comment: example_value l2conn: 'ON' icmpvsrresponse: PASSIVE rhistate: PASSIVE appflowlog: ENABLED state: ENABLED lbvserver: example_value targetlbvserver: example_value cachetype: TRANSPARENT redirect: CACHE curstate: UP status: 10 statechangetimesec: example_value tickssincelaststatechange: 10 type: example_value ngname: example_value value: example_value responses: '200': description: Content switching virtual server updated successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Updatecsvserver200Example: summary: Default updateCsVserver 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': description: Content switching virtual server not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteCsVserver summary: Citrix Netscaler Delete a Content Switching Virtual Server description: >- Deletes a content switching virtual server identified by name. tags: - CS Virtual Server parameters: - name: name in: path required: true description: >- Name of the content switching virtual server to delete. schema: type: string minLength: 1 example: Example Title responses: '200': description: Content switching virtual server deleted successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Deletecsvserver200Example: summary: Default deleteCsVserver 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' '404': description: Content switching virtual server not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/csvserver_cspolicy_binding: put: operationId: bindCsPolicyToCsVserver summary: Citrix Netscaler Bind a Content Switching Policy to a Virtual Server description: >- Binds a content switching policy to a content switching virtual server, defining how incoming requests are routed to load balancing virtual servers. tags: - CS Virtual Server requestBody: required: true content: application/json: schema: type: object required: - csvserver_cspolicy_binding properties: csvserver_cspolicy_binding: $ref: '#/components/schemas/CsVserverCsPolicyBinding' example: csvserver_cspolicy_binding: name: CSVS-1 policyname: CSPOL-EN targetlbvserver: LBVS-EN priority: 10 responses: '200': description: Policy bound successfully. content: application/json: schema: $ref: '#/components/schemas/NitroResponse' examples: Bindcspolicytocsvserver200Example: summary: Default bindCsPolicyToCsVserver 200 response x-microcks-default: true value: errorcode: 10 message: example_value severity: NONE '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /config/csvserver_cspolicy_binding/{name}: get: operationId: getCsVserverPolicyBindings summary: Citrix Netscaler Get Policy Bindings for a Content Switching Virtual Server description: >- Retrieves all content switching policies bound to a specific content switching virtual server. tags: - CS Virtual Server parameters: - name: name in: path required: true description: >- Name of the content switching virtual server. schema: type: string example: Example Title responses: '200': description: Successful retrieval of policy bindings. content: application/json: schema: type: object properties: csvserver_cspolicy_binding: type: array items: $ref: '#/components/schemas/CsVserverCsPolicyBinding' examples: Getcsvserverpolicybindings200Example: summary: Default getCsVserverPolicyBindings 200 response x-microcks-default: true value: csvserver_cspolicy_binding: - name: Example Title policyname: example_value targetlbvserver: example_value priority: 10 gotopriorityexpression: example_value bindpoint: REQUEST '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /stat/lbvserver: get: operationId: listLbVserverStats summary: Citrix Netscaler Get Statistics for All Load Balancing Virtual Servers description: >- Retrieves performance statistics for all load balancing virtual servers including connection counts, traffic metrics, health status, and error rates. tags: - Statistics parameters: - name: sortby in: query description: Sort statistics by a specific metric. schema: type: string enum: - Hits - CPU-PM example: Hits - name: sortorder in: query description: Sort order for the statistics results. schema: type: string enum: - ascending - descending default: descending example: ascending - name: clearstats in: query description: >- Clear statistics after retrieval. Use basic for counters or full for all stats. schema: type: string enum: - basic - full example: basic responses: '200': description: Successful retrieval of LB virtual server statistics. content: application/json: schema: type: object properties: lbvserver: type: array items: $ref: '#/components/schemas/LbVserverStats' examples: Listlbvserverstats200Example: summary: Default listLbVserverStats 200 response x-microcks-default: true value: lbvserver: - name: Example Title primaryipaddress: example_value primaryport: 10 type: example_value state: UP curclntconnections: 42.5 cursrvrconnections: 42.5 establishedconn: 42.5 curpersistencesessions: 42.5 vslbhealth: 42.5 actsvcs: 42.5 inactsvcs: 42.5 tothits: 42.5 hitsrate: 42.5 totalrequests: 42.5 requestsrate: 42.5 totalresponses: 42.5 responsesrate: 42.5 totalrequestbytes: 42.5 requestbytesrate: 42.5 totalresponsebytes: 42.5 responsebytesrate: 42.5 totalpktsrecvd: 42.5 pktsrecvdrate: 42.5 totalpktssent: 42.5 pktssentrate: 42.5 totalsvrbusyerr: 42.5 svrbusyerrrate: 42.5 surgecount: 42.5 totspillovers: 42.5 totvserverdownbackuphits: 42.5 avgcltttlb: 42.5 cltresponsetimeapdex: 42.5 cpuusagepm: 42.5 totalh2requests: 42.5 h2requestsrate: 42.5 totalh2responses: 42.5 h2responsesrate: 42.5 invalidrequestresponse: 42.5 invalidrequestresponsedropped: 42.5 sothreshold: 42.5 reqretrycount: 42.5 reqretrycountexceeded: 42.5 deferredreq: 42.5 deferredreqrate: 42.5 '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /stat/lbvserver/{name}: get: operationId: getLbVserverStats summary: Citrix Netscaler Get Statistics for a Specific Load Balancing Virtual Server description: >- Retrieves detailed performance statistics for a specific load balancing virtual server including connections, throughput, health, and APDEX scores. tags: - Statistics parameters: - name: name in: path required: true description: >- Name of the load balancing virtual server. schema: type: string minLength: 1 example: Example Title - name: statbindings in: query description: >- Include statistics for bound services when set to yes. schema: type: string enum: - 'yes' - 'no' example: 'yes' responses: '200': description: Successful retrieval of virtual server statistics. content: application/json: schema: type: object properties: lbvserver: type: array items: $ref: '#/components/schemas/LbVserverStats' minItems: 1 maxItems: 1 examples: Getlbvserverstats200Example: summary: Default getLbVserverStats 200 response x-microcks-default: true value: lbvserver: - name: Example Title primaryipaddress: example_value primaryport: 10 type: example_value state: UP curclntconnections: 42.5 cursrvrconnections: 42.5 establishedconn: 42.5 curpersistencesessions: 42.5 vslbhealth: 42.5 actsvcs: 42.5 inactsvcs: 42.5 tothits: 42.5 hitsrate: 42.5 totalrequests: 42.5 requestsrate: 42.5 totalresponses: 42.5 responsesrate: 42.5 totalrequestbytes: 42.5 requestbytesrate: 42.5 totalresponsebytes: 42.5 responsebytesrate: 42.5 totalpktsrecvd: 42.5 pktsrecvdrate: 42.5 totalpktssent: 42.5 pktssentrate: 42.5 totalsvrbusyerr: 42.5 svrbusyerrrate: 42.5 surgecount: 42.5 totspillovers: 42.5 totvserverdownbackuphits: 42.5 avgcltttlb: 42.5 cltresponsetimeapdex: 42.5 cpuusagepm: 42.5 totalh2requests: 42.5 h2requestsrate: 42.5 totalh2responses: 42.5 h2responsesrate: 42.5 invalidrequestresponse: 42.5 invalidrequestresponsedropped: 42.5 sothreshold: 42.5 reqretrycount: 42.5 reqretrycountexceeded: 42.5 deferredreq: 42.5 deferredreqrate: 42.5 '401': $ref: '#/components/responses/Unauthorized' '404': description: Virtual server not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK /stat/csvserver: get: operationId: listCsVserverStats summary: Citrix Netscaler Get Statistics for All Content Switching Virtual Servers description: >- Retrieves performance statistics for all content switching virtual servers. tags: - Statistics responses: '200': description: >- Successful retrieval of content switching virtual server statistics. content: application/json: schema: type: object properties: csvserver: type: array items: $ref: '#/components/schemas/CsVserverStats' examples: Listcsvserverstats200Example: summary: Default listCsVserverStats 200 response x-microcks-default: true value: csvserver: - name: Example Title primaryipaddress: example_value primaryport: 10 state: UP curclntconnections: 42.5 cursrvrconnections: 42.5 establishedconn: 42.5 tothits: 42.5 hitsrate: 42.5 totalrequests: 42.5 requestsrate: 42.5 totalresponses: 42.5 responsesrate: 42.5 totalrequestbytes: 42.5 totalresponsebytes: 42.5 totalpktsrecvd: 42.5 totalpktssent: 42.5 totspillovers: 42.5 labelledconn: 42.5 '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /stat/csvserver/{name}: get: operationId: getCsVserverStats summary: Citrix Netscaler Get Statistics for a Specific Content Switching Virtual Server description: >- Retrieves detailed performance statistics for a specific content switching virtual server. tags: - Statistics parameters: - name: name in: path required: true description: >- Name of the content switching virtual server. schema: type: string minLength: 1 example: Example Title responses: '200': description: Successful retrieval of virtual server statistics. content: application/json: schema: type: object properties: csvserver: type: array items: $ref: '#/components/schemas/CsVserverStats' minItems: 1 maxItems: 1 examples: Getcsvserverstats200Example: summary: Default getCsVserverStats 200 response x-microcks-default: true value: csvserver: - name: Example Title primaryipaddress: example_value primaryport: 10 state: UP curclntconnections: 42.5 cursrvrconnections: 42.5 establishedconn: 42.5 tothits: 42.5 hitsrate: 42.5 totalrequests: 42.5 requestsrate: 42.5 totalresponses: 42.5 responsesrate: 42.5 totalrequestbytes: 42.5 totalresponsebytes: 42.5 totalpktsrecvd: 42.5 totalpktssent: 42.5 totspillovers: 42.5 labelledconn: 42.5 '401': $ref: '#/components/responses/Unauthorized' '404': description: Content switching virtual server not found. x-microcks-operation: delay: 0 dispatcher: FALLBACK components: securitySchemes: nitroAuthToken: type: apiKey in: cookie name: NITRO_AUTH_TOKEN description: >- Session-based authentication token obtained via the /config/login endpoint. Provided as a cookie with each request. nitroBasicAuth: type: apiKey in: header name: X-NITRO-USER description: >- Per-request authentication using X-NITRO-USER and X-NITRO-PASS headers as an alternative to session-based tokens. parameters: Attrs: name: attrs in: query description: >- Comma-separated list of attributes to retrieve. Limits the response to only the specified fields for efficiency. schema: type: string example: name,ipv46,port,servicetype Filter: name: filter in: query description: >- Filter expression in the format property1:value1,property2:value2 to restrict results to matching resources. schema: type: string example: servicetype:HTTP,lbmethod:ROUNDROBIN View: name: view in: query description: >- Controls the level of detail in the response. Summary returns a minimal set of properties; detail returns all properties. schema: type: string enum: - summary - detail Count: name: count in: query description: >- When set to yes, returns only the count of matching resources instead of the full resource details. schema: type: string enum: - 'yes' - 'no' PageSize: name: pagesize in: query description: >- Number of resources to return per page for paginated responses. schema: type: integer minimum: 1 PageNo: name: pageno in: query description: >- Page number to retrieve in paginated responses. schema: type: integer minimum: 1 BulkErrorHandling: name: X-NITRO-ONERROR in: header description: >- Controls error handling for bulk operations. CONTINUE proceeds with remaining items, EXIT stops on first error, ROLLBACK reverts all changes on any error. schema: type: string enum: - CONTINUE - EXIT - ROLLBACK responses: Unauthorized: description: >- Authentication required. Provide a valid NITRO_AUTH_TOKEN cookie or X-NITRO-USER/X-NITRO-PASS headers. content: application/json: schema: $ref: '#/components/schemas/NitroErrorResponse' BadRequest: description: >- Invalid request. Check the request body for missing required fields or invalid values. content: application/json: schema: $ref: '#/components/schemas/NitroErrorResponse' schemas: NitroResponse: type: object description: Standard NITRO API success response. properties: errorcode: type: integer description: >- Error code. 0 indicates success. examples: - 0 message: type: string description: >- Human-readable message describing the result. examples: - Done severity: type: string description: >- Severity level of the response. enum: - NONE - ERROR - WARNING example: NONE NitroErrorResponse: type: object description: NITRO API error response with details about the failure. properties: errorcode: type: integer description: >- Numeric error code identifying the specific error. example: 10 message: type: string description: >- Human-readable error message. example: example_value severity: type: string description: >- Severity level of the error. enum: - ERROR - WARNING example: ERROR NsConfig: type: object description: >- NetScaler appliance configuration including network settings, system parameters, and operational options. properties: ipaddress: type: string description: >- The NetScaler IP (NSIP) address of the appliance. This is the primary management IP address. format: ipv4 example: example_value netmask: type: string description: >- Subnet mask associated with the NSIP address. format: ipv4 example: example_value nsvlan: type: integer description: >- VLAN ID for the NSIP address. Range 2-4094. minimum: 2 maximum: 4094 example: 10 ifnum: type: string description: >- Network interfaces bound to the NSVLAN. Format is slot/port (e.g., 1/1). example: example_value tagged: type: string description: >- Whether the NSVLAN is tagged or untagged. enum: - 'YES' - 'NO' example: 'YES' httpport: type: array description: >- HTTP port(s) on the appliance. Default is 80. items: type: integer example: [] maxconn: type: integer description: >- Maximum number of connections per service. Zero means unlimited. minimum: 0 example: 10 maxreq: type: integer description: >- Maximum number of requests per connection. Zero means unlimited. minimum: 0 example: 10 cip: type: string description: >- Whether to insert the client IP address into the HTTP header of requests forwarded to the service. enum: - ENABLED - DISABLED example: ENABLED cipheader: type: string description: >- Name of the HTTP header used to insert the client IP address when CIP is enabled. example: example_value cookieversion: type: string description: >- Version of the cookie inserted by the NetScaler for persistence. enum: - '0' - '1' example: '0' securecookie: type: string description: >- Whether the secure flag is set on persistence cookies. enum: - ENABLED - DISABLED example: ENABLED pmtumin: type: integer description: >- Minimum path MTU value. Range 168-1500. minimum: 168 maximum: 1500 example: 10 pmtutimeout: type: integer description: >- Timeout in minutes for path MTU discovery. Range 1-1440. minimum: 1 maximum: 1440 example: 10 ftpportrange: type: string description: >- Port range for FTP data connections (e.g., 1024-65535). example: example_value timezone: type: string description: >- Time zone setting for the appliance (e.g., GMT+05:30-IST-Asia/Kolkata). example: example_value grantquotamaxclient: type: integer description: >- Percentage of shared quota to be granted at a time for max client connections. example: 10 grantquotaspillover: type: integer description: >- Percentage of shared quota to be granted at a time for spillover threshold. example: 10 crportrange: type: string description: >- Port range for cache redirection. example: example_value systemtype: type: string description: >- The type of the NetScaler appliance. readOnly: true enum: - Stand-alone - HA-Primary - HA-Secondary example: Stand-alone primaryip: type: string description: >- Primary IP address of the HA pair. readOnly: true format: ipv4 example: example_value primaryip6: type: string description: >- Primary IPv6 address of the HA pair. readOnly: true format: ipv6 example: example_value flags: type: integer description: >- Internal flags for the configuration. readOnly: true example: 10 lastconfigchangedtime: type: string description: >- Timestamp of the last configuration change. readOnly: true example: example_value lastconfigsavetime: type: string description: >- Timestamp of the last configuration save. readOnly: true example: example_value currentsytemtime: type: string description: >- Current system time on the appliance. readOnly: true example: example_value systemtime: type: integer description: >- Current system time as epoch seconds. readOnly: true example: 10 configchanged: type: boolean description: >- Whether the running configuration has unsaved changes. readOnly: true example: true mappedip: type: string description: >- Mapped IP address for the NSIP. format: ipv4 example: example_value range: type: integer description: >- Number of consecutive IP addresses in the range beginning with the mapped IP. minimum: 1 example: 10 LbVserver: type: object description: >- A load balancing virtual server configuration that accepts incoming client traffic and distributes it across bound backend services using a configured load balancing algorithm. required: - name - servicetype properties: name: type: string description: >- Name for the load balancing virtual server. Must be unique and begin with a letter, number, or underscore. Maximum 127 characters. minLength: 1 maxLength: 127 example: Example Title servicetype: type: string description: >- Protocol of the service running on the virtual server. enum: - HTTP - FTP - TCP - UDP - SSL - SSL_BRIDGE - SSL_TCP - DTLS - NNTP - DNS - DHCPRA - ANY - SIP_UDP - SIP_TCP - SIP_SSL - DNS_TCP - RTSP - PUSH - SSL_PUSH - RADIUS - RDP - MYSQL - MSSQL - DIAMETER - SSL_DIAMETER - TFTP - ORACLE - SMPP - SYSLOGTCP - SYSLOGUDP - FIX - SSL_FIX - PROXY - USER_TCP - USER_SSL_TCP - QUIC - IPFIX - LOGSTREAM - MONGO - MONGO_TLS - MQTT - MQTT_TLS - QUIC_BRIDGE - HTTP_QUIC example: HTTP ipv46: type: string description: >- IPv4 or IPv6 address to assign to the virtual server. Usually a VIP address on the NetScaler used as the entry point for client traffic. example: example_value port: type: integer description: >- Port number on which the virtual server listens. minimum: 0 maximum: 65535 example: 10 ipset: type: string description: >- Name of the IP set to bind to the virtual server. Provides multiple IPs for the virtual server. example: example_value range: type: integer description: >- Number of IP addresses that the appliance must generate using the virtual server VIP address and the netmask. Range 2-254. minimum: 2 maximum: 254 example: 10 ippattern: type: string description: >- IP address pattern for identifying packets to be accepted by the virtual server. Used with ipmask. example: example_value ipmask: type: string description: >- IP address mask with the IP pattern to form an IP address range for the virtual server. example: example_value td: type: integer description: >- Traffic domain identifier. Isolates traffic across virtual servers. Range 0-4094. minimum: 0 maximum: 4094 example: 10 lbmethod: type: string description: >- Load balancing method used to select the backend service for each client request. enum: - ROUNDROBIN - LEASTCONNECTION - LEASTRESPONSETIME - URLHASH - DOMAINHASH - DESTINATIONIPHASH - SOURCEIPHASH - SRCIPDESTIPHASH - LEASTBANDWIDTH - LEASTPACKETS - TOKEN - SRCIPSRCPORTHASH - LRTM - CALLIDHASH - CUSTOMLOAD - LEASTREQUEST - AUDITLOGHASH - STATICPROXIMITY default: LEASTCONNECTION example: ROUNDROBIN hashlength: type: integer description: >- Number of bytes to use for the hash value in hash-based load balancing methods. Range 1-4096. minimum: 1 maximum: 4096 default: 80 example: 10 netmask: type: string description: >- IPv4 subnet mask for hashing in SOURCEIPHASH, DESTINATIONIPHASH, and SRCIPDESTIPHASH methods. example: example_value v6netmasklen: type: integer description: >- Number of bits in the IPv6 prefix for hash-based LB methods. Range 1-128. minimum: 1 maximum: 128 default: 128 example: 10 backuplbmethod: type: string description: >- Backup load balancing method used when the primary method fails to select a service. enum: - ROUNDROBIN - LEASTCONNECTION - LEASTRESPONSETIME - SOURCEIPHASH - CUSTOMLOAD default: ROUNDROBIN example: ROUNDROBIN persistencetype: type: string description: >- Type of persistence for the virtual server. Ensures requests from the same client go to the same service. enum: - SOURCEIP - COOKIEINSERT - SSLSESSION - RULE - URLPASSIVE - CUSTOMSERVERID - DESTIP - SRCIPDESTIP - CALLID - RTSPSID - DIAMETER - FIXSESSION - USERSESSION - NONE example: SOURCEIP persistmask: type: string description: >- IPv4 netmask for source IP persistence. Applied to the source IP before matching for persistence. example: example_value v6persistmasklen: type: integer description: >- IPv6 prefix length for source IP persistence. Range 1-128. minimum: 1 maximum: 128 default: 128 example: 10 persistencebackup: type: string description: >- Backup persistence type for the virtual server. enum: - SOURCEIP - NONE example: SOURCEIP timeout: type: integer description: >- Persistence timeout in minutes. The period for which persistence sessions are maintained. Range 0-1440. minimum: 0 maximum: 1440 default: 2 example: 10 persistavpno: type: array description: >- AVP numbers to use for Diameter persistence. items: type: integer example: [] cookiename: type: string description: >- Name of the cookie generated by the NetScaler for cookie insert persistence. example: example_value rule: type: string description: >- Expression or name of a named expression that the virtual server uses to evaluate client requests. Default is true. default: '"none"' example: example_value listenpolicy: type: string description: >- Expression identifying traffic accepted by the virtual server. Default is NONE. default: NONE example: example_value listenpriority: type: integer description: >- Priority of the listen policy. Range 0-100. minimum: 0 maximum: 100 default: 101 example: 10 resrule: type: string description: >- Expression specifying which response to send when the virtual server matches the client request rule. default: '"none"' example: example_value push: type: string description: >- Process traffic with the push virtual server bound to this virtual server. enum: - ENABLED - DISABLED default: DISABLED example: ENABLED pushlabel: type: string description: >- Expression for extracting a label from the request. Used by the push virtual server. example: example_value pushmulticlients: type: string description: >- Allow multiple clients to connect to the push virtual server. enum: - 'YES' - 'NO' default: 'NO' example: 'YES' comment: type: string description: >- Informational description or comments about the virtual server. example: example_value clttimeout: type: integer description: >- Client idle timeout in seconds. Time to wait before closing an idle client connection. Range 0-31536000. minimum: 0 maximum: 31536000 example: 10 somethod: type: string description: >- Spillover method. Defines the condition under which traffic spills over to the backup virtual server. enum: - CONNECTION - DYNAMICCONNECTION - BANDWIDTH - HEALTH - NONE example: CONNECTION sopersistence: type: string description: >- Whether to maintain persistence when spillover occurs. enum: - ENABLED - DISABLED default: DISABLED example: ENABLED sopersistencetimeout: type: integer description: >- Persistence timeout in minutes during spillover. Range 2-1440. minimum: 2 maximum: 1440 default: 2 example: 10 sothreshold: type: integer description: >- Threshold value for the spillover method. Meaning varies based on somethod selected. minimum: 1 example: 10 healththreshold: type: integer description: >- Minimum percentage of UP services required to consider the virtual server as UP. Range 0-100. minimum: 0 maximum: 100 default: 0 example: 10 redirecturl: type: string description: >- URL to which requests are redirected when all services bound to the virtual server are DOWN. example: https://www.example.com downstateflush: type: string description: >- Flush all active transactions on all services bound to the virtual server when the state changes to DOWN. enum: - ENABLED - DISABLED default: ENABLED example: ENABLED disableprimaryondown: type: string description: >- When a virtual server goes DOWN, remain the primary virtual server in the HA pair so clients continue to connect. enum: - ENABLED - DISABLED default: DISABLED example: ENABLED insertvserveripport: type: string description: >- Insert the virtual server IP address and port in the request header. enum: - 'OFF' - VIPADDR - V6TOV4MAPPING example: 'OFF' vipheader: type: string description: >- Name of the HTTP header used to insert the virtual server IP and port. example: example_value authenticationhost: type: string description: >- FQDN of the authentication virtual server to which the user is redirected for authentication. example: example_value authentication: type: string description: >- Whether authentication is enabled for the virtual server. enum: - 'ON' - 'OFF' default: 'OFF' example: 'ON' authn401: type: string description: >- Whether to use HTTP 401-based authentication instead of redirect-based. enum: - 'ON' - 'OFF' default: 'OFF' example: 'ON' authnvsname: type: string description: >- Name of the authentication virtual server for 401-based authentication. example: example_value icmpvsrresponse: type: string description: >- How the NetScaler responds to ICMP ping requests sent to the VIP. enum: - PASSIVE - ACTIVE default: PASSIVE example: PASSIVE rhistate: type: string description: >- Route health injection state. Whether to advertise the route to the VIP via dynamic routing when the server is UP. enum: - PASSIVE - ACTIVE default: PASSIVE example: PASSIVE newservicerequest: type: integer description: >- Number of requests to accept on a new service before distributing traffic to all bound services. Range 0-100. minimum: 0 maximum: 4294967294 default: 0 example: 10 newservicerequestunit: type: string description: >- Unit for the newservicerequest parameter. enum: - PER_SECOND - PERCENT default: PER_SECOND example: PER_SECOND newservicerequestincrementinterval: type: integer description: >- Interval in seconds between successive increments for new service request rate. Range 0-3600. minimum: 0 maximum: 3600 default: 0 example: 10 minautoscalemembers: type: integer description: >- Minimum number of members for autoscale. Range 0-5000. minimum: 0 maximum: 5000 default: 0 example: 10 maxautoscalemembers: type: integer description: >- Maximum number of members for autoscale. Range 0-5000. minimum: 0 maximum: 5000 default: 0 example: 10 skippersistency: type: string description: >- Controls persistence behavior when selecting a service for certain virtual server types. enum: - Bypass - ReLb - None default: None example: Bypass appflowlog: type: string description: >- Whether to log AppFlow records for the virtual server. enum: - ENABLED - DISABLED default: ENABLED example: ENABLED state: type: string description: >- Administrative state of the virtual server. enum: - ENABLED - DISABLED default: ENABLED example: ENABLED connfailover: type: string description: >- Mode of connection failover for the virtual server in HA deployments. enum: - DISABLED - STATEFUL - STATELESS default: DISABLED example: DISABLED redirurl: type: string description: >- Redirect URL string configured on the virtual server. readOnly: true example: https://www.example.com curstate: type: string description: >- Current operational state of the virtual server. readOnly: true enum: - UP - DOWN - UNKNOWN - BUSY - OUT OF SERVICE - GOING OUT OF SERVICE - DOWN WHEN GOING OUT OF SERVICE - NS_EMPTY_STR example: UP effectivestate: type: string description: >- Effective state of the virtual server considering all factors. readOnly: true enum: - UP - DOWN - UNKNOWN - BUSY - OUT OF SERVICE - GOING OUT OF SERVICE - DOWN WHEN GOING OUT OF SERVICE - NS_EMPTY_STR example: UP status: type: integer description: >- Current status of the virtual server. 1 indicates UP. readOnly: true example: 10 lbrrreason: type: integer description: >- Reason for the last load balancing redirection. readOnly: true example: 10 totalservices: type: integer description: >- Total number of services bound to the virtual server. readOnly: true example: 10 activeservices: type: integer description: >- Number of active (UP) services bound to the virtual server. readOnly: true example: 10 statechangetimesec: type: string description: >- Time when the virtual server state last changed, in date-time format. readOnly: true example: example_value tickssincelaststatechange: type: integer description: >- Number of ticks since the last state change. readOnly: true example: 10 health: type: integer description: >- Percentage of UP services to total bound services. readOnly: true example: 10 isgslb: type: boolean description: >- Whether this virtual server is a GSLB virtual server. readOnly: true example: true CsVserver: type: object description: >- A content switching virtual server that directs client requests to different load balancing virtual servers based on content switching policies evaluating request attributes such as URL, HTTP header, or source IP address. required: - name - servicetype properties: name: type: string description: >- Name for the content switching virtual server. Must be unique and begin with a letter, number, or underscore. Maximum 127 characters. minLength: 1 maxLength: 127 example: Example Title td: type: integer description: >- Traffic domain identifier. Range 0-4094. minimum: 0 maximum: 4094 example: 10 servicetype: type: string description: >- Protocol of the service running on the virtual server. enum: - HTTP - SSL - TCP - FTP - RTSP - SSL_TCP - UDP - DNS - SIP_UDP - SIP_TCP - SIP_SSL - ANY - RADIUS - RDP - MYSQL - MSSQL - DIAMETER - SSL_DIAMETER - DNS_TCP - ORACLE - SMPP - PROXY - MONGO - MONGO_TLS - MQTT - MQTT_TLS - HTTP_QUIC example: HTTP ipv46: type: string description: >- IPv4 or IPv6 address of the content switching virtual server. example: example_value port: type: integer description: >- Port number on which the content switching virtual server listens. minimum: 0 maximum: 65535 example: 10 ipset: type: string description: >- Name of the IP set to bind to the virtual server. example: example_value range: type: integer description: >- Number of consecutive IP addresses for the virtual server. Range 2-254. minimum: 2 maximum: 254 example: 10 ippattern: type: string description: >- IP address pattern for matching incoming requests. example: example_value ipmask: type: string description: >- IP mask applied with ippattern to form an address range. example: example_value stateupdate: type: string description: >- Whether the virtual server checks the backend server state for updates. enum: - ENABLED - DISABLED - UPDATEONBACKENDSTATEUP default: DISABLED example: ENABLED precedence: type: string description: >- Type of precedence for content switching policies. RULE means policies are evaluated in priority order. URL means URL-based switching takes precedence. enum: - RULE - URL example: RULE casesensitive: type: string description: >- Whether URL-based content switching is case sensitive. enum: - 'ON' - 'OFF' default: 'ON' example: 'ON' somethod: type: string description: >- Spillover method for the content switching virtual server. enum: - CONNECTION - DYNAMICCONNECTION - BANDWIDTH - HEALTH - NONE example: CONNECTION sopersistence: type: string description: >- Whether to maintain persistence during spillover. enum: - ENABLED - DISABLED default: DISABLED example: ENABLED sopersistencetimeout: type: integer description: >- Persistence timeout in minutes during spillover. Range 2-1440. minimum: 2 maximum: 1440 default: 2 example: 10 sothreshold: type: integer description: >- Threshold value for the spillover method. minimum: 1 example: 10 redirecturl: type: string description: >- URL to redirect requests to when the virtual server is DOWN. example: https://www.example.com clttimeout: type: integer description: >- Client idle timeout in seconds. Range 0-31536000. minimum: 0 maximum: 31536000 example: 10 downstateflush: type: string description: >- Flush all active transactions when the virtual server goes DOWN. enum: - ENABLED - DISABLED default: ENABLED example: ENABLED insertvserveripport: type: string description: >- Insert the virtual server VIP address and port into the HTTP header of the request. enum: - 'OFF' - VIPADDR - V6TOV4MAPPING example: 'OFF' vipheader: type: string description: >- Name of the HTTP header in which the VIP is inserted. example: example_value disableprimaryondown: type: string description: >- Continue to direct traffic to the virtual server even when DOWN in HA mode. enum: - ENABLED - DISABLED default: DISABLED example: ENABLED authentication: type: string description: >- Whether authentication is enabled for the virtual server. enum: - 'ON' - 'OFF' default: 'OFF' example: 'ON' authenticationhost: type: string description: >- FQDN of the authentication virtual server. example: example_value authn401: type: string description: >- Whether HTTP 401-based authentication is enabled. enum: - 'ON' - 'OFF' default: 'OFF' example: 'ON' authnvsname: type: string description: >- Name of the authentication virtual server. example: example_value push: type: string description: >- Whether push functionality is enabled. enum: - ENABLED - DISABLED default: DISABLED example: ENABLED pushlabel: type: string description: >- Expression for extracting a label from the request. example: example_value pushmulticlients: type: string description: >- Allow multiple clients to connect to the push vserver. enum: - 'YES' - 'NO' default: 'NO' example: 'YES' comment: type: string description: >- Description or comments about the content switching virtual server. example: example_value l2conn: type: string description: >- Whether Layer 2 connectivity is enabled between the client and server. enum: - 'ON' - 'OFF' example: 'ON' icmpvsrresponse: type: string description: >- How the appliance responds to ICMP ping requests for the VIP. enum: - PASSIVE - ACTIVE default: PASSIVE example: PASSIVE rhistate: type: string description: >- Route health injection state for the virtual server. enum: - PASSIVE - ACTIVE default: PASSIVE example: PASSIVE appflowlog: type: string description: >- Whether to log AppFlow records for the virtual server. enum: - ENABLED - DISABLED default: ENABLED example: ENABLED state: type: string description: >- Administrative state of the virtual server. enum: - ENABLED - DISABLED default: ENABLED example: ENABLED lbvserver: type: string description: >- Name of the default load balancing virtual server bound to this content switching virtual server. Requests that do not match any policy are sent here. example: example_value targetlbvserver: type: string description: >- Name of the target load balancing virtual server to which content is switched. example: example_value cachetype: type: string description: >- Cache type for integrated caching. enum: - TRANSPARENT - REVERSE - FORWARD example: TRANSPARENT redirect: type: string description: >- Type of cache redirect for the virtual server. enum: - CACHE - POLICY - ORIGIN example: CACHE curstate: type: string description: >- Current operational state of the virtual server. readOnly: true enum: - UP - DOWN - UNKNOWN - BUSY - OUT OF SERVICE - GOING OUT OF SERVICE - DOWN WHEN GOING OUT OF SERVICE - NS_EMPTY_STR example: UP status: type: integer description: >- Current status of the virtual server. 1 indicates UP. readOnly: true example: 10 statechangetimesec: type: string description: >- Time when the virtual server state last changed. readOnly: true example: example_value tickssincelaststatechange: type: integer description: >- Number of ticks since the last state change. readOnly: true example: 10 type: type: string description: >- Virtual server type (e.g., content-based or IP-address based). readOnly: true example: example_value ngname: type: string description: >- Node group name to which the virtual server is bound. readOnly: true example: example_value value: type: string description: >- The value of the IP address, based on the virtual server type. readOnly: true example: example_value LbVserverServiceBinding: type: object description: >- Binding between a load balancing virtual server and a backend service. This allows the virtual server to distribute traffic to the bound service. properties: name: type: string description: >- Name of the load balancing virtual server to which the service is bound. example: Example Title servicename: type: string description: >- Name of the service to bind to the virtual server. example: example_value weight: type: integer description: >- Weight assigned to the service for weighted load balancing. Range 1-100. minimum: 1 maximum: 100 example: 10 servicetype: type: string description: >- Protocol type of the bound service. readOnly: true example: example_value curstate: type: string description: >- Current state of the bound service. readOnly: true example: example_value ipv46: type: string description: >- IP address of the bound service. readOnly: true example: example_value port: type: integer description: >- Port of the bound service. readOnly: true example: 10 dynamicweight: type: integer description: >- Dynamic weight of the service based on server health. readOnly: true example: 10 CsVserverCsPolicyBinding: type: object description: >- Binding between a content switching virtual server and a content switching policy. Defines how requests are evaluated and routed to target load balancing virtual servers. properties: name: type: string description: >- Name of the content switching virtual server. example: Example Title policyname: type: string description: >- Name of the content switching policy to bind. example: example_value targetlbvserver: type: string description: >- Name of the target load balancing virtual server to which matching traffic is directed. example: example_value priority: type: integer description: >- Priority of the policy binding. Lower values indicate higher priority. minimum: 1 example: 10 gotopriorityexpression: type: string description: >- Expression specifying the priority of the next policy to evaluate if the current policy matches. example: example_value bindpoint: type: string description: >- The bind point at which the policy is bound. enum: - REQUEST - RESPONSE - ICA_REQUEST - OTHERTCP_REQUEST example: REQUEST LbVserverStats: type: object description: >- Performance and health statistics for a load balancing virtual server, including connection metrics, throughput, error rates, and APDEX scores. properties: name: type: string description: >- Name of the load balancing virtual server. example: Example Title primaryipaddress: type: string description: >- IP address of the virtual server. example: example_value primaryport: type: integer description: >- Port number of the virtual server. example: 10 type: type: string description: >- Protocol type of the virtual server. example: example_value state: type: string description: >- Current operational state. enum: - UP - DOWN - UNKNOWN - BUSY - OUT OF SERVICE - GOING OUT OF SERVICE - DOWN WHEN GOING OUT OF SERVICE example: UP curclntconnections: type: number description: >- Number of current client connections. example: 42.5 cursrvrconnections: type: number description: >- Number of current server connections. example: 42.5 establishedconn: type: number description: >- Number of connections in ESTABLISHED state. example: 42.5 curpersistencesessions: type: number description: >- Number of active persistence sessions. example: 42.5 vslbhealth: type: number description: >- Percentage of UP services bound to this virtual server. example: 42.5 actsvcs: type: number description: >- Number of active (UP) services. example: 42.5 inactsvcs: type: number description: >- Number of inactive (DOWN) services. example: 42.5 tothits: type: number description: >- Total number of virtual server hits since last restart. example: 42.5 hitsrate: type: number description: >- Rate of hits per second. example: 42.5 totalrequests: type: number description: >- Total number of requests received. example: 42.5 requestsrate: type: number description: >- Rate of requests per second. example: 42.5 totalresponses: type: number description: >- Total number of responses sent. example: 42.5 responsesrate: type: number description: >- Rate of responses per second. example: 42.5 totalrequestbytes: type: number description: >- Total number of request bytes received. example: 42.5 requestbytesrate: type: number description: >- Rate of request bytes per second. example: 42.5 totalresponsebytes: type: number description: >- Total number of response bytes sent. example: 42.5 responsebytesrate: type: number description: >- Rate of response bytes per second. example: 42.5 totalpktsrecvd: type: number description: >- Total packets received. example: 42.5 pktsrecvdrate: type: number description: >- Rate of packets received per second. example: 42.5 totalpktssent: type: number description: >- Total packets sent. example: 42.5 pktssentrate: type: number description: >- Rate of packets sent per second. example: 42.5 totalsvrbusyerr: type: number description: >- Total server busy errors. example: 42.5 svrbusyerrrate: type: number description: >- Rate of server busy errors per second. example: 42.5 surgecount: type: number description: >- Number of requests in the surge queue. example: 42.5 totspillovers: type: number description: >- Total number of spillover events. example: 42.5 totvserverdownbackuphits: type: number description: >- Total diversions to the backup virtual server. example: 42.5 avgcltttlb: type: number description: >- Average client time-to-last-byte in microseconds. example: 42.5 cltresponsetimeapdex: type: number description: >- APDEX score based on client response times (0.0-1.0). example: 42.5 cpuusagepm: type: number description: >- CPU utilization in parts per million. example: 42.5 totalh2requests: type: number description: >- Total HTTP/2 requests received. example: 42.5 h2requestsrate: type: number description: >- Rate of HTTP/2 requests per second. example: 42.5 totalh2responses: type: number description: >- Total HTTP/2 responses sent. example: 42.5 h2responsesrate: type: number description: >- Rate of HTTP/2 responses per second. example: 42.5 invalidrequestresponse: type: number description: >- Total invalid request/response count. example: 42.5 invalidrequestresponsedropped: type: number description: >- Total dropped invalid request/response count. example: 42.5 sothreshold: type: number description: >- Configured spillover threshold. example: 42.5 reqretrycount: type: number description: >- Total request retry count. example: 42.5 reqretrycountexceeded: type: number description: >- Times retry count was exceeded. example: 42.5 deferredreq: type: number description: >- Number of deferred requests. example: 42.5 deferredreqrate: type: number description: >- Rate of deferred requests per second. example: 42.5 CsVserverStats: type: object description: >- Performance statistics for a content switching virtual server. properties: name: type: string description: >- Name of the content switching virtual server. example: Example Title primaryipaddress: type: string description: >- IP address of the virtual server. example: example_value primaryport: type: integer description: >- Port number of the virtual server. example: 10 state: type: string description: >- Current operational state. enum: - UP - DOWN - UNKNOWN - BUSY - OUT OF SERVICE example: UP curclntconnections: type: number description: >- Number of current client connections. example: 42.5 cursrvrconnections: type: number description: >- Number of current server connections. example: 42.5 establishedconn: type: number description: >- Number of connections in ESTABLISHED state. example: 42.5 tothits: type: number description: >- Total number of virtual server hits. example: 42.5 hitsrate: type: number description: >- Rate of hits per second. example: 42.5 totalrequests: type: number description: >- Total number of requests received. example: 42.5 requestsrate: type: number description: >- Rate of requests per second. example: 42.5 totalresponses: type: number description: >- Total number of responses sent. example: 42.5 responsesrate: type: number description: >- Rate of responses per second. example: 42.5 totalrequestbytes: type: number description: >- Total bytes of requests received. example: 42.5 totalresponsebytes: type: number description: >- Total bytes of responses sent. example: 42.5 totalpktsrecvd: type: number description: >- Total packets received. example: 42.5 totalpktssent: type: number description: >- Total packets sent. example: 42.5 totspillovers: type: number description: >- Total spillover events. example: 42.5 labelledconn: type: number description: >- Total labeled connections. example: 42.5 SystemFile: type: object description: >- A system file on the NetScaler appliance. properties: filename: type: string description: >- Name of the file. example: example_value filelocation: type: string description: >- Location of the file on the appliance filesystem (e.g., /nsconfig/ssl). example: example_value filecontent: type: string description: >- Base64-encoded file content. Used when uploading files. example: example_value fileencoding: type: string description: >- Encoding of the file content. enum: - BASE64 example: BASE64 fileaccesstime: type: string description: >- Last access time of the file. readOnly: true example: example_value filemodifiedtime: type: string description: >- Last modification time of the file. readOnly: true example: example_value filemode: type: string description: >- File permissions mode. readOnly: true example: example_value filesize: type: integer description: >- Size of the file in bytes. readOnly: true example: 10