ns

package
v0.0.0-...-011d10c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 8, 2024 License: Apache-2.0 Imports: 0 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Nsacl

type Nsacl struct {
	/**
	* Name for the extended ACL rule. Must begin with an ASCII alphabetic or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.
	 */
	Aclname string `json:"aclname,omitempty"`
	/**
	* Action to perform on incoming IPv4 packets that match the extended ACL rule.
		Available settings function as follows:
		* ALLOW - The Citrix ADC processes the packet.
		* BRIDGE - The Citrix ADC bridges the packet to the destination without processing it.
		* DENY - The Citrix ADC drops the packet.
	*/
	Aclaction string `json:"aclaction,omitempty"`
	/**
	* Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.
	 */
	Td int `json:"td,omitempty"`
	/**
	* IP address or range of IP addresses to match against the source IP address of an incoming IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 10.102.29.30-10.102.29.189.
	 */
	Srcip bool `json:"srcip,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Srcipop string `json:"srcipop,omitempty"`
	/**
	* IP address or range of IP addresses to match against the source IP address of an incoming IPv4 packet. In the command line interface, separate the range with a hyphen. For example:10.102.29.30-10.102.29.189.
	 */
	Srcipval string `json:"srcipval,omitempty"`
	/**
	* Policy dataset which can have multiple IP ranges bound to it.
	 */
	Srcipdataset string `json:"srcipdataset,omitempty"`
	/**
	* Port number or range of port numbers to match against the source port number of an incoming IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
	 */
	Srcport bool `json:"srcport,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Srcportop string `json:"srcportop,omitempty"`
	/**
	* Port number or range of port numbers to match against the source port number of an incoming IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
	 */
	Srcportval string `json:"srcportval,omitempty"`
	/**
	* IP address or range of IP addresses to match against the destination IP address of an incoming IPv4 packet.  In the command line interface, separate the range with a hyphen. For example: 10.102.29.30-10.102.29.189.
	 */
	Destip bool `json:"destip,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Destipop string `json:"destipop,omitempty"`
	/**
	* IP address or range of IP addresses to match against the destination IP address of an incoming IPv4 packet.  In the command line interface, separate the range with a hyphen. For example: 10.102.29.30-10.102.29.189.
	 */
	Destipval string `json:"destipval,omitempty"`
	/**
	* Policy dataset which can have multiple IP ranges bound to it.
	 */
	Destipdataset string `json:"destipdataset,omitempty"`
	/**
	* Port number or range of port numbers to match against the destination port number of an incoming IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Destport bool `json:"destport,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Destportop string `json:"destportop,omitempty"`
	/**
	* Port number or range of port numbers to match against the destination port number of an incoming IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Destportval string `json:"destportval,omitempty"`
	/**
	* Number of seconds, in multiples of four, after which the extended ACL rule expires. If you do not want the extended ACL rule to expire, do not specify a TTL value.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* MAC address to match against the source MAC address of an incoming IPv4 packet.
	 */
	Srcmac string `json:"srcmac,omitempty"`
	/**
	*  Used to define range of Source MAC address. It takes string of 0 and 1, 0s are for exact match and 1s for wildcard. For matching first 3 bytes of MAC address, srcMacMask value "000000111111".
	 */
	Srcmacmask string `json:"srcmacmask,omitempty"`
	/**
	* Protocol to match against the protocol of an incoming IPv4 packet.
	 */
	Protocol string `json:"protocol,omitempty"`
	/**
	* Protocol to match against the protocol of an incoming IPv4 packet.
	 */
	Protocolnumber int `json:"protocolnumber,omitempty"`
	/**
	* ID of the VLAN. The Citrix ADC applies the ACL rule only to the incoming packets of the specified VLAN. If you do not specify a VLAN ID, the appliance applies the ACL rule to the incoming packets on all VLANs.
	 */
	Vlan int `json:"vlan,omitempty"`
	/**
	* ID of the VXLAN. The Citrix ADC applies the ACL rule only to the incoming packets of the specified VXLAN. If you do not specify a VXLAN ID, the appliance applies the ACL rule to the incoming packets on all VXLANs.
	 */
	Vxlan int `json:"vxlan,omitempty"`
	/**
	* ID of an interface. The Citrix ADC applies the ACL rule only to the incoming packets from the specified interface. If you do not specify any value, the appliance applies the ACL rule to the incoming packets of all interfaces.
	 */
	Interface string `json:"Interface,omitempty"`
	/**
	* Allow only incoming TCP packets that have the ACK or RST bit set, if the action set for the ACL rule is ALLOW and these packets match the other conditions in the ACL rule.
	 */
	Established bool `json:"established,omitempty"`
	/**
	* ICMP Message type to match against the message type of an incoming ICMP packet. For example, to block DESTINATION UNREACHABLE messages, you must specify 3 as the ICMP type.
		Note: This parameter can be specified only for the ICMP protocol.
	*/
	Icmptype int `json:"icmptype,omitempty"`
	/**
	* Code of a particular ICMP message type to match against the ICMP code of an incoming ICMP packet.  For example, to block DESTINATION HOST UNREACHABLE messages, specify 3 as the ICMP type and 1 as the ICMP code.
		If you set this parameter, you must set the ICMP Type parameter.
	*/
	Icmpcode int `json:"icmpcode,omitempty"`
	/**
	* Priority for the extended ACL rule that determines the order in which it is evaluated relative to the other extended ACL rules. If you do not specify priorities while creating extended ACL rules, the ACL rules are evaluated in the order in which they are created.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Enable or disable the extended ACL rule. After you apply the extended ACL rules, the Citrix ADC compares incoming packets against the enabled extended ACL rules.
	 */
	State string `json:"state,omitempty"`
	/**
	* Enable or disable logging of events related to the extended ACL rule. The log messages are stored in the configured syslog or auditlog server.
	 */
	Logstate string `json:"logstate,omitempty"`
	/**
	* Maximum number of log messages to be generated per second. If you set this parameter, you must enable the Log State parameter.
	 */
	Ratelimit int `json:"ratelimit,omitempty"`
	/**
	*  Type of the acl ,default will be CLASSIC.
		Available options as follows:
		* CLASSIC - specifies the regular extended acls.
		* DFD - cluster specific acls,specifies hashmethod for steering of the packet in cluster .
	*/
	Type string `json:"type,omitempty"`
	/**
	* Specifies the type hashmethod to be applied, to steer the packet to the FP of the packet.
	 */
	Dfdhash string `json:"dfdhash,omitempty"`
	/**
	* If stateful option is enabled, transparent sessions are created for the traffic hitting this ACL and not hitting any other features like LB, INAT etc.
	 */
	Stateful string `json:"stateful,omitempty"`
	/**
	* New name for the extended ACL rule. Must begin with an ASCII alphabetic or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.
	 */
	Newname string `json:"newname,omitempty"`

	Hits         string `json:"hits,omitempty"`
	Kernelstate  string `json:"kernelstate,omitempty"`
	Aclassociate string `json:"aclassociate,omitempty"`
}

* * Configuration for ACL entry resource.

type Nsacl6

type Nsacl6 struct {
	/**
	* Name for the ACL6 rule. Must begin with an ASCII alphabetic or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.
	 */
	Acl6name string `json:"acl6name,omitempty"`
	/**
	* Action to perform on the incoming IPv6 packets that match the ACL6 rule.
		Available settings function as follows:
		* ALLOW - The Citrix ADC processes the packet.
		* BRIDGE - The Citrix ADC bridges the packet to the destination without processing it.
		* DENY - The Citrix ADC drops the packet.
	*/
	Acl6action string `json:"acl6action,omitempty"`
	/**
	* Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.
	 */
	Td int `json:"td,omitempty"`
	/**
	* IP address or range of IP addresses to match against the source IP address of an incoming IPv6 packet. In the command line interface, separate the range with a hyphen.
	 */
	Srcipv6 bool `json:"srcipv6,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Srcipop string `json:"srcipop,omitempty"`
	/**
	* Source IPv6 address (range).
	 */
	Srcipv6val string `json:"srcipv6val,omitempty"`
	/**
	* Port number or range of port numbers to match against the source port number of an incoming IPv6 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Srcport bool `json:"srcport,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Srcportop string `json:"srcportop,omitempty"`
	/**
	* Source port (range).
	 */
	Srcportval string `json:"srcportval,omitempty"`
	/**
	* IP address or range of IP addresses to match against the destination IP address of an incoming IPv6 packet.  In the command line interface, separate the range with a hyphen.
	 */
	Destipv6 bool `json:"destipv6,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Destipop string `json:"destipop,omitempty"`
	/**
	* Destination IPv6 address (range).
	 */
	Destipv6val string `json:"destipv6val,omitempty"`
	/**
	* Port number or range of port numbers to match against the destination port number of an incoming IPv6 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Destport bool `json:"destport,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Destportop string `json:"destportop,omitempty"`
	/**
	* Destination port (range).
	 */
	Destportval string `json:"destportval,omitempty"`
	/**
	* Time to expire this ACL6 (in seconds).
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* MAC address to match against the source MAC address of an incoming IPv6 packet.
	 */
	Srcmac string `json:"srcmac,omitempty"`
	/**
	*  Used to define range of Source MAC address. It takes string of 0 and 1, 0s are for exact match and 1s for wildcard. For matching first 3 bytes of MAC address, srcMacMask value "000000111111".
	 */
	Srcmacmask string `json:"srcmacmask,omitempty"`
	/**
	* Protocol, identified by protocol name, to match against the protocol of an incoming IPv6 packet.
	 */
	Protocol string `json:"protocol,omitempty"`
	/**
	* Protocol, identified by protocol number, to match against the protocol of an incoming IPv6 packet.
	 */
	Protocolnumber int `json:"protocolnumber,omitempty"`
	/**
	* ID of the VLAN. The Citrix ADC applies the ACL6 rule only to the incoming packets on the specified VLAN. If you do not specify a VLAN ID, the appliance applies the ACL6 rule to the incoming packets on all VLANs.
	 */
	Vlan int `json:"vlan,omitempty"`
	/**
	* ID of the VXLAN. The Citrix ADC applies the ACL6 rule only to the incoming packets on the specified VXLAN. If you do not specify a VXLAN ID, the appliance applies the ACL6 rule to the incoming packets on all VXLANs.
	 */
	Vxlan int `json:"vxlan,omitempty"`
	/**
	* ID of an interface. The Citrix ADC applies the ACL6 rule only to the incoming packets from the specified interface. If you do not specify any value, the appliance applies the ACL6 rule to the incoming packets from all interfaces.
	 */
	Interface string `json:"Interface,omitempty"`
	/**
	* Allow only incoming TCP packets that have the ACK or RST bit set if the action set for the ACL6 rule is ALLOW and these packets match the other conditions in the ACL6 rule.
	 */
	Established bool `json:"established,omitempty"`
	/**
	* ICMP Message type to match against the message type of an incoming IPv6 ICMP packet. For example, to block DESTINATION UNREACHABLE messages, you must specify 3 as the ICMP type.
		Note: This parameter can be specified only for the ICMP protocol.
	*/
	Icmptype int `json:"icmptype,omitempty"`
	/**
	* Code of a particular ICMP message type to match against the ICMP code of an incoming IPv6 ICMP packet.  For example, to block DESTINATION HOST UNREACHABLE messages, specify 3 as the ICMP type and 1 as the ICMP code.
		If you set this parameter, you must set the ICMP Type parameter.
	*/
	Icmpcode int `json:"icmpcode,omitempty"`
	/**
	* Priority for the ACL6 rule, which determines the order in which it is evaluated relative to the other ACL6 rules. If you do not specify priorities while creating ACL6 rules, the ACL6 rules are evaluated in the order in which they are created.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* State of the ACL6.
	 */
	State string `json:"state,omitempty"`
	/**
	*  Type of the acl6 ,default will be CLASSIC.
		Available options as follows:
		* CLASSIC - specifies the regular extended acls.
		* DFD - cluster specific acls,specifies hashmethod for steering of the packet in cluster .
	*/
	Type string `json:"type,omitempty"`
	/**
	* Specifies the type of hashmethod to be applied, to steer the packet to the FP of the packet.
	 */
	Dfdhash string `json:"dfdhash,omitempty"`
	/**
	* hashprefix to be applied to SIP/DIP to generate rsshash FP.eg 128 => hash calculated on the complete IP
	 */
	Dfdprefix int `json:"dfdprefix,omitempty"`
	/**
	* If stateful option is enabled, transparent sessions are created for the traffic hitting this ACL6 and not hitting any other features like LB, INAT etc.
	 */
	Stateful string `json:"stateful,omitempty"`
	/**
	* Enable or disable logging of events related to the ACL6 rule. The log messages are stored in the configured syslog or auditlog server.
	 */
	Logstate string `json:"logstate,omitempty"`
	/**
	* Maximum number of log messages to be generated per second. If you set this parameter, you must enable the Log State parameter.
	 */
	Ratelimit int `json:"ratelimit,omitempty"`
	/**
	* Action associated with the ACL6.
	 */
	Aclaction string `json:"aclaction,omitempty"`
	/**
	* New name for the ACL6 rule. Must begin with an ASCII alphabetic or underscore \(_\) character, and must contain only ASCII alphanumeric, underscore, hash \(\#\), period \(.\), space, colon \(:\), at \(@\), equals \(=\), and hyphen \(-\) characters.
	 */
	Newname string `json:"newname,omitempty"`

	Kernelstate  string `json:"kernelstate,omitempty"`
	Hits         string `json:"hits,omitempty"`
	Aclassociate string `json:"aclassociate,omitempty"`
}

* * Configuration for ACL6 entry resource.

type Nsacls

type Nsacls struct {
	/**
	*  Type of the acl ,default will be CLASSIC.
		Available options as follows:
		* CLASSIC - specifies the regular extended acls.
		* DFD - cluster specific acls,specifies hashmethod for steering of the packet in cluster .
	*/
	Type string `json:"type,omitempty"`
}

* * Configuration for ACL entry resource.

type Nsacls6

type Nsacls6 struct {
	/**
	*  Type of the acl ,default will be CLASSIC.
		Available options as follows:
		* CLASSIC - specifies the regular extended acls.
		* DFD - cluster specific acls,specifies hashmethod for steering of the packet in cluster .
	*/
	Type string `json:"type,omitempty"`
}

* * Configuration for ACL6 entry resource.

type Nsappflowcollector

type Nsappflowcollector struct {
	/**
	* Name of the AppFlow collector.
	 */
	Name string `json:"name,omitempty"`
	/**
	* The IPv4 address of the AppFlow collector.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* The UDP port on which the AppFlow collector is listening.
	 */
	Port int `json:"port,omitempty"`
}

* * Configuration for appflowCollector resource.

type Nsappflowparam

type Nsappflowparam struct {
	/**
	* IPFIX template refresh interval (in seconds).
	 */
	Templaterefresh int `json:"templaterefresh,omitempty"`
	/**
	* MTU to be used for IPFIX UDP packets.
	 */
	Udppmtu int `json:"udppmtu,omitempty"`
	/**
	* Enable AppFlow HTTP URL logging.
	 */
	Httpurl string `json:"httpurl,omitempty"`
	/**
	* Enable AppFlow HTTP cookie logging.
	 */
	Httpcookie string `json:"httpcookie,omitempty"`
	/**
	* Enable AppFlow HTTP referer logging.
	 */
	Httpreferer string `json:"httpreferer,omitempty"`
	/**
	* Enable AppFlow HTTP method logging.
	 */
	Httpmethod string `json:"httpmethod,omitempty"`
	/**
	* Enable AppFlow HTTP host logging.
	 */
	Httphost string `json:"httphost,omitempty"`
	/**
	* Enable AppFlow HTTP user-agent logging.
	 */
	Httpuseragent string `json:"httpuseragent,omitempty"`
	/**
	* Control whether AppFlow records should be generated only for client-side traffic.
	 */
	Clienttrafficonly string `json:"clienttrafficonly,omitempty"`
}

* * Configuration for appflowParam resource.

type Nsaptlicense

type Nsaptlicense struct {
	/**
	* Hardware Serial Number/License Activation Code(LAC)
	 */
	Serialno string `json:"serialno,omitempty"`
	/**
	* Specifies whether to use the licenseproxyserver to reach the internet. Make sure to configure licenseproxyserver to use this option.
	 */
	Useproxy string `json:"useproxy,omitempty"`
	/**
	* License ID
	 */
	Id string `json:"id,omitempty"`
	/**
	* Session ID
	 */
	Sessionid string `json:"sessionid,omitempty"`
	/**
	* Bind type
	 */
	Bindtype string `json:"bindtype,omitempty"`
	/**
	* The user can allocate one or more licenses. Ensure the value is less than (for partial allocation) or equal to the total number of available licenses
	 */
	Countavailable string `json:"countavailable,omitempty"`
	/**
	* License Directory
	 */
	Licensedir string `json:"licensedir,omitempty"`

	Response      string `json:"response,omitempty"`
	Counttotal    string `json:"counttotal,omitempty"`
	Name          string `json:"name,omitempty"`
	Relevance     string `json:"relevance,omitempty"`
	Datepurchased string `json:"datepurchased,omitempty"`
	Datesa        string `json:"datesa,omitempty"`
	Dateexp       string `json:"dateexp,omitempty"`
	Features      string `json:"features,omitempty"`
}

* * Configuration for aptlicense resource.

type Nsassignment

type Nsassignment struct {
	/**
	* Name for the assignment. Must begin with a letter, number, or the underscore character (_), and must contain only letters, numbers, and the hyphen (-), period (.) hash (#), space ( ), at (@), equals (=), colon (:), and underscore characters. Can be changed after the assignment is added.
		The following requirement applies only to the Citrix ADC CLI:
		If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my assignment" or my assignment).
	*/
	Name string `json:"name,omitempty"`
	/**
	* Left hand side of the assigment, of the form $variable-name (for a singleton variabled) or $variable-name[key-expression], where key-expression is an expression that evaluates to a text string and provides the key to select a map entry
	 */
	Variable string `json:"variable,omitempty"`
	/**
	* Right hand side of the assignment. The expression is evaluated and assigned to the left hand variable.
	 */
	Set string `json:"set,omitempty"`
	/**
	* Right hand side of the assignment. The expression is evaluated and added to the left hand variable.
	 */
	Add string `json:"Add,omitempty"`
	/**
	* Right hand side of the assignment. The expression is evaluated and subtracted from the left hand variable.
	 */
	Sub string `json:"sub,omitempty"`
	/**
	* Right hand side of the assignment. The expression is evaluated and appended to the left hand variable.
	 */
	Append string `json:"append,omitempty"`
	/**
	* Clear the variable value. Deallocates a text value, and for a map, the text key.
	 */
	Clear bool `json:"clear,omitempty"`
	/**
	* Comment. Can be used to preserve information about this rewrite action.
	 */
	Comment string `json:"comment,omitempty"`
	/**
	* New name for the assignment.
		Must begin with a letter, number, or the underscore character (_), and must contain only letters, numbers, and the hyphen (-), period (.) hash (#), space ( ), at (@), equals (=), colon (:), and underscore characters. Can be changed after the rewrite policy is added.
		The following requirement applies only to the Citrix ADC CLI:
		If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my assignment" or my assignment).
	*/
	Newname string `json:"newname,omitempty"`

	Hits           string `json:"hits,omitempty"`
	Undefhits      string `json:"undefhits,omitempty"`
	Referencecount string `json:"referencecount,omitempty"`
}

* * Configuration for assignment resource.

type Nscapacity

type Nscapacity struct {
	/**
	* System bandwidth limit.
	 */
	Bandwidth int `json:"bandwidth,omitempty"`
	/**
	* appliance platform type.
	 */
	Platform string `json:"platform,omitempty"`
	/**
	* licensed using vcpu pool.
	 */
	Vcpu bool `json:"vcpu,omitempty"`
	/**
	* Product edition.
	 */
	Edition string `json:"edition,omitempty"`
	/**
	* Bandwidth unit.
	 */
	Unit string `json:"unit,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Actualbandwidth string `json:"actualbandwidth,omitempty"`
	Vcpucount       string `json:"vcpucount,omitempty"`
	Maxvcpucount    string `json:"maxvcpucount,omitempty"`
	Maxbandwidth    string `json:"maxbandwidth,omitempty"`
	Minbandwidth    string `json:"minbandwidth,omitempty"`
	Instancecount   string `json:"instancecount,omitempty"`
}

* * Configuration for capacity resource.

type Nscentralmanagementserver

type Nscentralmanagementserver struct {
	/**
	* Type of the central management server. Must be either CLOUD or ONPREM depending on whether the server is on the cloud or on premise.
	 */
	Type string `json:"type,omitempty"`
	/**
	* Username for access to central management server. Must begin with a letter, number, or the underscore character (_), and must contain only letters, numbers, and the hyphen (-), period (.) pound (#), space ( ), at (@), equals (=), colon (:), and underscore characters.
		The following requirement applies only to the Citrix ADC CLI:
		If the name includes one or more spaces, enclose the name in double or
		single quotation marks (for example, "my ns centralmgmtserver" or "my ns centralmgmtserver").
	*/
	Username string `json:"username,omitempty"`
	/**
	* Password for access to central management server. Required for any user account.
	 */
	Password string `json:"password,omitempty"`
	/**
	* Activation code is used to register to ADM service
	 */
	Activationcode string `json:"activationcode,omitempty"`
	/**
	* Ip Address of central management server.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* Fully qualified domain name of the central management server or service-url to locate ADM service.
	 */
	Servername string `json:"servername,omitempty"`
	/**
	* validate the server certificate for secure SSL connections.
	 */
	Validatecert string `json:"validatecert,omitempty"`
	/**
	* Device profile is created on ADM and contains the user name and password of the instance(s).
	 */
	Deviceprofilename string `json:"deviceprofilename,omitempty"`
	/**
	* ADC username used to create device profile on ADM
	 */
	Adcusername string `json:"adcusername,omitempty"`
	/**
	* ADC password used to create device profile on ADM
	 */
	Adcpassword string `json:"adcpassword,omitempty"`

	Instanceid                 string `json:"instanceid,omitempty"`
	Customerid                 string `json:"customerid,omitempty"`
	Admserviceenvironment      string `json:"admserviceenvironment,omitempty"`
	Admserviceconnectionstatus string `json:"admserviceconnectionstatus,omitempty"`
}

* * Configuration for centralmanagementserver resource.

type Nsconfig

type Nsconfig struct {
	/**
	* Configurations will be cleared without prompting for confirmation.
	 */
	Force bool `json:"force,omitempty"`
	/**
	* Types of configurations to be cleared.
		* basic: Clears all configurations except the following:
		- NSIP, default route (gateway), static routes, MIPs, and SNIPs
		- Network settings (DG, VLAN, RHI and DNS settings)
		- Cluster settings
		- HA node definitions
		- Feature and mode settings
		- nsroot password
		* extended: Clears the same configurations as the 'basic' option. In addition, it clears the feature and mode settings.
		* full: Clears all configurations except NSIP, default route, and interface settings.
		Note: When you clear the configurations through the cluster IP address, by specifying the level as 'full', the cluster is deleted and all cluster nodes become standalone appliances. The 'basic' and 'extended' levels are propagated to the cluster nodes.
	*/
	Level string `json:"level,omitempty"`
	/**
	* RBA configurations and TACACS policies bound to system global will not be cleared if RBA is set to NO.This option is applicable only for BASIC level of clear configuration.Default is YES, which will clear rba configurations.
	 */
	Rbaconfig string `json:"rbaconfig,omitempty"`
	/**
	* IP address of the Citrix ADC. Commonly referred to as NSIP address. This parameter is mandatory to bring up the appliance.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* Netmask corresponding to the IP address. This parameter is mandatory to bring up the appliance.
	 */
	Netmask string `json:"netmask,omitempty"`
	/**
	* VLAN (NSVLAN) for the subnet on which the IP address resides.
	 */
	Nsvlan int `json:"nsvlan,omitempty"`
	/**
	* Interfaces of the appliances that must be bound to the NSVLAN.
	 */
	Ifnum []string `json:"ifnum,omitempty"`
	/**
	* Specifies that the interfaces will be added as 802.1q tagged interfaces. Packets sent on these interface on this VLAN will have an additional 4-byte 802.1q tag which identifies the VLAN.
		To use 802.1q tagging, the switch connected to the appliance's interfaces must also be configured for tagging.
	*/
	Tagged string `json:"tagged,omitempty"`
	/**
	* The HTTP ports on the Web server. This allows the system to perform connection off-load for any client request that has a destination port matching one of these configured ports.
	 */
	Httpport []int `json:"httpport,omitempty"`
	/**
	* The maximum number of connections that will be made from the system to the web server(s) attached to it. The value entered here is applied globally to all attached servers.
	 */
	Maxconn int `json:"maxconn,omitempty"`
	/**
	* The maximum number of requests that the system can pass on a particular connection between the system and a server attached to it. Setting this value to 0 allows an unlimited number of requests to be passed.
	 */
	Maxreq int `json:"maxreq,omitempty"`
	/**
	* The option to control (enable or disable) the insertion of the actual client IP address into the HTTP header request passed from the client to one, some, or all servers attached to the system.
		The passed address can then be accessed through a minor modification to the server.
		l    If cipHeader is specified, it will be used as the client IP header.
		l    If it is not specified, then the value that has been set by the set ns config CLI command will be used as the client IP header.
	*/
	Cip string `json:"cip,omitempty"`
	/**
	* The text that will be used as the client IP header.
	 */
	Cipheader string `json:"cipheader,omitempty"`
	/**
	* The version of the cookie inserted by system.
	 */
	Cookieversion string `json:"cookieversion,omitempty"`
	/**
	* enable/disable secure flag for persistence cookie
	 */
	Securecookie string `json:"securecookie,omitempty"`
	/**
	* The minimum Path MTU.
	 */
	Pmtumin int `json:"pmtumin,omitempty"`
	/**
	* The timeout value in minutes.
	 */
	Pmtutimeout int `json:"pmtutimeout,omitempty"`
	/**
	* Port range configured for FTP services.
	 */
	Ftpportrange string `json:"ftpportrange,omitempty"`
	/**
	* Port range for cache redirection services.
	 */
	Crportrange string `json:"crportrange,omitempty"`
	/**
	* Name of the timezone
	 */
	Timezone string `json:"timezone,omitempty"`
	/**
	* The percentage of shared quota to be granted at a time for maxClient
	 */
	Grantquotamaxclient int `json:"grantquotamaxclient,omitempty"`
	/**
	* The percentage of maxClient to be given to PEs
	 */
	Exclusivequotamaxclient int `json:"exclusivequotamaxclient,omitempty"`
	/**
	* The percentage of shared quota to be granted at a time for spillover
	 */
	Grantquotaspillover int `json:"grantquotaspillover,omitempty"`
	/**
	* The percentage of max limit to be given to PEs
	 */
	Exclusivequotaspillover int `json:"exclusivequotaspillover,omitempty"`
	/**
	* Use this option to do saveconfig for all partitions
	 */
	All bool `json:"all,omitempty"`
	/**
	* Location of the configurations.
	 */
	Config1 string `json:"config1,omitempty"`
	/**
	* Location of the configurations.
	 */
	Config2 string `json:"config2,omitempty"`
	/**
	* Format to display the difference in configurations.
	 */
	Outtype string `json:"outtype,omitempty"`
	/**
	* File that contains the commands to be compared.
	 */
	Template bool `json:"template,omitempty"`
	/**
	* Suppress device specific differences.
	 */
	Ignoredevicespecific bool `json:"ignoredevicespecific,omitempty"`
	/**
	* Option to list all weak passwords (not adhering to strong password requirements). Takes config file as input, if no input specified, running configuration is considered. Command => query ns config -weakpassword  / query ns config -weakpassword /nsconfig/ns.conf
	 */
	Weakpassword bool `json:"weakpassword,omitempty"`
	/**
	* Option to list all passwords changed which would not work when downgraded to older releases. Takes config file as input, if no input specified, running configuration is considered. Command => query ns config -changedpassword / query ns config -changedpassword /nsconfig/ns.conf
	 */
	Changedpassword bool `json:"changedpassword,omitempty"`
	/**
	* configuration File to be used to find weak passwords, if not specified, running config is taken as input.
	 */
	Config string `json:"config,omitempty"`

	Message               string `json:"message,omitempty"`
	Mappedip              string `json:"mappedip,omitempty"`
	Range                 string `json:"range,omitempty"`
	Systemtype            string `json:"systemtype,omitempty"`
	Primaryip             string `json:"primaryip,omitempty"`
	Primaryip6            string `json:"primaryip6,omitempty"`
	Flags                 string `json:"flags,omitempty"`
	Lastconfigchangedtime string `json:"lastconfigchangedtime,omitempty"`
	Lastconfigsavetime    string `json:"lastconfigsavetime,omitempty"`
	Currentsytemtime      string `json:"currentsytemtime,omitempty"`
	Systemtime            string `json:"systemtime,omitempty"`
	Configchanged         string `json:"configchanged,omitempty"`
	Response              string `json:"response,omitempty"`
}

* * Configuration for system config resource.

type Nsconnectiontable

type Nsconnectiontable struct {
	/**
	* The maximum length of filter expression is 255 and it can be of following format:
		<expression> [<relop> <expression>]
		<relop> = ( && | || )
		<expression> =:
		CONNECTION.<qualifier>.<qualifier-method>.(<qualifier-value>)
		<qualifier> = SRCIP
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = A valid IPv4 address
		example = CONNECTION.SRCIP.EQ(127.0.0.1)
		<qualifier> = DSTIP
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = A valid IPv4 address.
		example = CONNECTION.DSTIP.EQ(127.0.0.1)
		<qualifier> = IP
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = A valid IPv4 address.
		example = CONNECTION.IP.EQ(127.0.0.1)
		<qualifier> = SRCIPv6
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = A valid IPv6 address.
		example = CONNECTION.SRCIPv6.EQ(2001:db8:0:0:1::1)
		<qualifier> = DSTIPv6
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = A valid IPv6 address.
		example = CONNECTION.DSTIPv6.EQ(2001:db8:0:0:1::1)
		<qualifier> = IPv6
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = A valid IPv6 address.
		example = CONNECTION.IPv6.EQ(2001:db8:0:0:1::1)
		<qualifier> = SRCPORT
		<qualifier-method> = [ EQ | NE | GT | GE | LT | LE
		| BETWEEN ]
		<qualifier-value>  = A valid port number.
		example = CONNECTION.SRCPORT.EQ(80)
		<qualifier> = DSTPORT
		<qualifier-method> = [ EQ | NE | GT | GE | LT | LE
		| BETWEEN ]
		<qualifier-value>  = A valid port number.
		example = CONNECTION.DSTPORT.EQ(80)
		<qualifier> = PORT
		<qualifier-method> = [ EQ | NE | GT | GE | LT | LE
		| BETWEEN ]
		<qualifier-value>  = A valid port number.
		example = CONNECTION.PORT.EQ(80)
		<qualifier> = SVCNAME
		<qualifier-method> = [ EQ | NE | CONTAINS | STARTSWITH
		| ENDSWITH ]
		<qualifier-value>  = service name.
		example = CONNECTION.SVCNAME.EQ("name")
		<qualifier> = LB_VSERVER.NAME
		<qualifier-method> = [ EQ | NE | CONTAINS | STARTSWITH
		| ENDSWITH ]
		<qualifier-value>  = LB vserver name.
		example = CONNECTION.LB_VSERVER.NAME.EQ("name")
		<qualifier> = CS_VSERVER.NAME
		<qualifier-method> = [ EQ | NE | CONTAINS | STARTSWITH
		| ENDSWITH ]
		<qualifier-value>  = CS vserver name.
		example = CONNECTION.CS_VSERVER.NAME.EQ("name")
		<qualifier> = INTF
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = A valid interface id in the form of
		x/y (n/x/y in case of cluster interface).
		examle = CONNECTION.INTF.EQ("0/1/1")
		<qualifier> = VLANID
		<qualifier-method> = [ EQ | NE | GT | GE | LT | LE
		| BETWEEN ]
		<qualifier-value>  = A valid VLAN ID.
		example = CONNECTION.VLANID.EQ(0)
		<qualifier> = CONNID
		<qualifier-method> = [ EQ | NE | GT | GE | LT | LE
		| BETWEEN ]
		<qualifier-value>  = A valid PCB dev number.
		example = CONNECTION.CONNID.EQ(0)
		<qualifier> = PPEID
		<qualifier-method> = [ EQ | NE | GT | GE | LT | LE
		| BETWEEN ]
		<qualifier-value>  = A valid core ID.
		example = CONNECTION.PPEID.EQ(0)
		<qualifier> = IDLETIME
		<qualifier-method> = [ EQ | NE | GT | GE | LT | LE
		| BETWEEN ]
		<qualifier-value>  = A positive integer indicating the
		idletime.
		example = CONNECTION.IDLETIME.LT(100)
		<qualifier> = TCPSTATE
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = ( CLOSE_WAIT | CLOSED | CLOSING |
		ESTABLISHED | FIN_WAIT_1 | FIN_WAIT_2 | LAST_ACK |
		LISTEN | SYN_RECEIVED | SYN_SENT | TIME_WAIT |
		NOT_APPLICABLE)
		example = CONNECTION.TCPSTATE.EQ(LISTEN)
		<qualifier> = SERVICE_TYPE
		<qualifier-method> = [ EQ | NE ]
		<qualifier-value>  = ( SVC_HTTP | FTP | TCP | UDP | SSL |
		SSL_BRIDGE | SSL_TCP | NNTP | RPCSVR | RPCSVRS |
		RPCCLNT | SVC_DNS | ADNS | SNMP | RTSP | DHCPRA | NAT | ANY |
		MONITOR | MONITOR_UDP | MONITOR_PING | SIP_UDP |
		SVC_MYSQL | SVC_MSSQL | SERVICE_UNKNOWN )
		example = CONNECTION.SERVICE_TYPE.EQ(ANY)
		<qualifier> = TRAFFIC_DOMAIN_ID
		<qualifier-method> = [ EQ | NE | GT | GE | LT | LE
		| BETWEEN ]
		<qualifier-value>  = A valid traffic domain ID.
		example = CONNECTION.TRAFFIC_DOMAIN_ID.EQ(0)
		common usecases:
		Filtering out loopback connections and view present
		connections through netscaler
		show connectiontable "CONNECTION.IP.NE(127.0.0.1) &&
		CONNECTION.TCPSTATE.EQ(ESTABLISHED)" -detail full
		show connections from a particular sourceip and targeted
		to port 80
		show connectiontable "CONNECTION.SRCIP.EQ(10.102.1.91) &&
		CONNECTION.DSTPORT.EQ(80)"
		show connection particular to a service and its linked
		client connections
		show connectiontable CONNECTION.SVCNAME.EQ("S1")
		-detail link
		show connections for a particular servicetype(e.g.http)
		show connectiontable CONNECTION.SERVICE_TYPE.EQ(TCP)
		viewing connections that have been idle for a long time
		show connectiontable CONNECTION.IDLETIME.GT(100)
		show connections particular to a service and idle
		for a long time
		show connectiontable "CONNECTION.SVCNAME.EQ(\\"S1\\") &&
		CONNECTION.IDLETIME.GT(100)"
		show connections for a particular interface
		show connectiontable CONNECTION.INTF.EQ("1/1")
		show connections for a particular interface and vlan
		show connectiontable "CONNECTION.INTF.EQ(\\"1/1\\") &&
		CONNECTION.VLANID.EQ(1)"
	*/
	Filterexpression string `json:"filterexpression,omitempty"`
	/**
	* Display link information if available
	 */
	Link bool `json:"link,omitempty"`
	/**
	* Display name instead of IP for local entities
	 */
	Filtername bool `json:"filtername,omitempty"`
	/**
	* Specify display options for the connection table.
		* LINK - Displays the linked PCB (Protocol Control Block).
		* NAME - Displays along with the service name.
		* CONNFAILOVER - Displays PCB with connection failover.
		* FULL - Displays all available details.
	*/
	Detail []string `json:"detail,omitempty"`
	/**
	* Display listening services only
	 */
	Listen bool `json:"listen,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Sourceip               string `json:"sourceip,omitempty"`
	Sourceport             string `json:"sourceport,omitempty"`
	Destip                 string `json:"destip,omitempty"`
	Destport               string `json:"destport,omitempty"`
	Svctype                string `json:"svctype,omitempty"`
	Idletime               string `json:"idletime,omitempty"`
	State                  string `json:"state,omitempty"`
	Linksourceip           string `json:"linksourceip,omitempty"`
	Linksourceport         string `json:"linksourceport,omitempty"`
	Linkdestip             string `json:"linkdestip,omitempty"`
	Linkdestport           string `json:"linkdestport,omitempty"`
	Linkservicetype        string `json:"linkservicetype,omitempty"`
	Linkidletime           string `json:"linkidletime,omitempty"`
	Linkstate              string `json:"linkstate,omitempty"`
	Entityname             string `json:"entityname,omitempty"`
	Linkentityname         string `json:"linkentityname,omitempty"`
	Connid                 string `json:"connid,omitempty"`
	Linkconnid             string `json:"linkconnid,omitempty"`
	Connproperties         string `json:"connproperties,omitempty"`
	Optionflags            string `json:"optionflags,omitempty"`
	Nswsvalue              string `json:"nswsvalue,omitempty"`
	Peerwsvalue            string `json:"peerwsvalue,omitempty"`
	Mss                    string `json:"mss,omitempty"`
	Retxretrycnt           string `json:"retxretrycnt,omitempty"`
	Rcvwnd                 string `json:"rcvwnd,omitempty"`
	Advwnd                 string `json:"advwnd,omitempty"`
	Sndcwnd                string `json:"sndcwnd,omitempty"`
	Iss                    string `json:"iss,omitempty"`
	Irs                    string `json:"irs,omitempty"`
	Rcvnxt                 string `json:"rcvnxt,omitempty"`
	Maxack                 string `json:"maxack,omitempty"`
	Sndnxt                 string `json:"sndnxt,omitempty"`
	Sndunack               string `json:"sndunack,omitempty"`
	Httpendseq             string `json:"httpendseq,omitempty"`
	Httpstate              string `json:"httpstate,omitempty"`
	Trcount                string `json:"trcount,omitempty"`
	Priority               string `json:"priority,omitempty"`
	Httpreqver             string `json:"httpreqver,omitempty"`
	Httprequest            string `json:"httprequest,omitempty"`
	Httprspcode            string `json:"httprspcode,omitempty"`
	Rttsmoothed            string `json:"rttsmoothed,omitempty"`
	Rttvariance            string `json:"rttvariance,omitempty"`
	Outoforderpkts         string `json:"outoforderpkts,omitempty"`
	Linkoptionflag         string `json:"linkoptionflag,omitempty"`
	Linknswsvalue          string `json:"linknswsvalue,omitempty"`
	Linkpeerwsvalue        string `json:"linkpeerwsvalue,omitempty"`
	Targetnodeidnnm        string `json:"targetnodeidnnm,omitempty"`
	Sourcenodeidnnm        string `json:"sourcenodeidnnm,omitempty"`
	Channelidnnm           string `json:"channelidnnm,omitempty"`
	Msgversionnnm          string `json:"msgversionnnm,omitempty"`
	Td                     string `json:"td,omitempty"`
	Maxrcvbuf              string `json:"maxrcvbuf,omitempty"`
	Linkmaxrcvbuf          string `json:"linkmaxrcvbuf,omitempty"`
	Rxqsize                string `json:"rxqsize,omitempty"`
	Linkrxqsize            string `json:"linkrxqsize,omitempty"`
	Maxsndbuf              string `json:"maxsndbuf,omitempty"`
	Linkmaxsndbuf          string `json:"linkmaxsndbuf,omitempty"`
	Txqsize                string `json:"txqsize,omitempty"`
	Linktxqsize            string `json:"linktxqsize,omitempty"`
	Flavor                 string `json:"flavor,omitempty"`
	Linkflavor             string `json:"linkflavor,omitempty"`
	Bwestimate             string `json:"bwestimate,omitempty"`
	Linkbwestimate         string `json:"linkbwestimate,omitempty"`
	Rttmin                 string `json:"rttmin,omitempty"`
	Linkrttmin             string `json:"linkrttmin,omitempty"`
	Name                   string `json:"name,omitempty"`
	Linkname               string `json:"linkname,omitempty"`
	Tcpmode                string `json:"tcpmode,omitempty"`
	Linktcpmode            string `json:"linktcpmode,omitempty"`
	Realtimertt            string `json:"realtimertt,omitempty"`
	Linkrealtimertt        string `json:"linkrealtimertt,omitempty"`
	Sndbuf                 string `json:"sndbuf,omitempty"`
	Linksndbuf             string `json:"linksndbuf,omitempty"`
	Nsbtcpwaitq            string `json:"nsbtcpwaitq,omitempty"`
	Linknsbtcpwaitq        string `json:"linknsbtcpwaitq,omitempty"`
	Nsbretxq               string `json:"nsbretxq,omitempty"`
	Linknsbretxq           string `json:"linknsbretxq,omitempty"`
	Sackblocks             string `json:"sackblocks,omitempty"`
	Linksackblocks         string `json:"linksackblocks,omitempty"`
	Congstate              string `json:"congstate,omitempty"`
	Linkcongstate          string `json:"linkcongstate,omitempty"`
	Sndrecoverle           string `json:"sndrecoverle,omitempty"`
	Linksndrecoverle       string `json:"linksndrecoverle,omitempty"`
	Creditsinbytes         string `json:"creditsinbytes,omitempty"`
	Linkcredits            string `json:"linkcredits,omitempty"`
	Rateinbytes            string `json:"rateinbytes,omitempty"`
	Linkrateinbytes        string `json:"linkrateinbytes,omitempty"`
	Rateschedulerqueue     string `json:"rateschedulerqueue,omitempty"`
	Linkrateschedulerqueue string `json:"linkrateschedulerqueue,omitempty"`
	Burstratecontrol       string `json:"burstratecontrol,omitempty"`
	Linkburstratecontrol   string `json:"linkburstratecontrol,omitempty"`
	Cqabifavg              string `json:"cqabifavg,omitempty"`
	Cqathruputavg          string `json:"cqathruputavg,omitempty"`
	Cqarcvwndavg           string `json:"cqarcvwndavg,omitempty"`
	Cqaiai1mspct           string `json:"cqaiai1mspct,omitempty"`
	Cqaiai2mspct           string `json:"cqaiai2mspct,omitempty"`
	Cqasamples             string `json:"cqasamples,omitempty"`
	Cqaiaisamples          string `json:"cqaiaisamples,omitempty"`
	Cqanetclass            string `json:"cqanetclass,omitempty"`
	Cqaccl                 string `json:"cqaccl,omitempty"`
	Cqacsq                 string `json:"cqacsq,omitempty"`
	Cqaiaiavg              string `json:"cqaiaiavg,omitempty"`
	Cqaisiavg              string `json:"cqaisiavg,omitempty"`
	Cqarcvwndmin           string `json:"cqarcvwndmin,omitempty"`
	Cqaretxcorr            string `json:"cqaretxcorr,omitempty"`
	Cqaretxcong            string `json:"cqaretxcong,omitempty"`
	Cqaretxpackets         string `json:"cqaretxpackets,omitempty"`
	Cqaloaddelayavg        string `json:"cqaloaddelayavg,omitempty"`
	Cqanoisedelayavg       string `json:"cqanoisedelayavg,omitempty"`
	Cqarttmax              string `json:"cqarttmax,omitempty"`
	Cqarttmin              string `json:"cqarttmin,omitempty"`
	Cqarttavg              string `json:"cqarttavg,omitempty"`
	Adaptivetcpprofname    string `json:"adaptivetcpprofname,omitempty"`
	Outoforderblocks       string `json:"outoforderblocks,omitempty"`
	Outoforderflushedcount string `json:"outoforderflushedcount,omitempty"`
	Outoforderbytes        string `json:"outoforderbytes,omitempty"`
}

* * Configuration for TCP/IP connection table resource.

type Nsconsoleloginprompt

type Nsconsoleloginprompt struct {
	/**
	* Console login prompt string
	 */
	Promptstring string `json:"promptstring,omitempty"`
}

* * Configuration for console prompt resource.

type Nscqaparam

type Nscqaparam struct {
	/**
	* HARQ retransmission delay (in ms).
	 */
	Harqretxdelay int `json:"harqretxdelay,omitempty"`
	/**
	* Name of the network label.
	 */
	Net1label string `json:"net1label,omitempty"`
	/**
	* MIN RTT (in ms) for the first network.
	 */
	Minrttnet1 int `json:"minrttnet1,omitempty"`
	/**
	* coefficients values for Label1.
	 */
	Lr1coeflist string `json:"lr1coeflist,omitempty"`
	/**
	* Probability threshold values for LR model to differentiate between NET1 and reset(NET2 and NET3).
	 */
	Lr1probthresh float64 `json:"lr1probthresh,omitempty"`
	/**
	* Three congestion level scores limits corresponding to None, Low, Medium.
	 */
	Net1cclscale string `json:"net1cclscale,omitempty"`
	/**
	* Three signal quality level scores limits corresponding to Excellent, Good, Fair.
	 */
	Net1csqscale string `json:"net1csqscale,omitempty"`
	/**
	* Connection quality ranking Log coefficients of network 1.
	 */
	Net1logcoef string `json:"net1logcoef,omitempty"`
	/**
	* Name of the network label 2.
	 */
	Net2label string `json:"net2label,omitempty"`
	/**
	* MIN RTT (in ms) for the second network.
	 */
	Minrttnet2 int `json:"minrttnet2,omitempty"`
	/**
	* coefficients values for Label 2.
	 */
	Lr2coeflist string `json:"lr2coeflist,omitempty"`
	/**
	* Probability threshold values for LR model to differentiate between NET2 and NET3.
	 */
	Lr2probthresh float64 `json:"lr2probthresh,omitempty"`
	/**
	* Three congestion level scores limits corresponding to None, Low, Medium.
	 */
	Net2cclscale string `json:"net2cclscale,omitempty"`
	/**
	* Three signal quality level scores limits corresponding to Excellent, Good, Fair.
	 */
	Net2csqscale string `json:"net2csqscale,omitempty"`
	/**
	* Connnection quality ranking Log coefficients of network 2.
	 */
	Net2logcoef string `json:"net2logcoef,omitempty"`
	/**
	* Name of the network label 3.
	 */
	Net3label string `json:"net3label,omitempty"`
	/**
	* MIN RTT (in ms) for the third network.
	 */
	Minrttnet3 int `json:"minrttnet3,omitempty"`
	/**
	* Three congestion level scores limits corresponding to None, Low, Medium.
	 */
	Net3cclscale string `json:"net3cclscale,omitempty"`
	/**
	* Three signal quality level scores limits corresponding to Excellent, Good, Fair.
	 */
	Net3csqscale string `json:"net3csqscale,omitempty"`
	/**
	* Connection quality ranking Log coefficients of network 3.
	 */
	Net3logcoef string `json:"net3logcoef,omitempty"`
}

* * Configuration for cqaparam resource.

type Nsdhcpip

type Nsdhcpip struct {
}

* * Configuration for dhcp IP resource.

type Nsdhcpparams

type Nsdhcpparams struct {
	/**
	* Enables DHCP client to acquire IP address from the DHCP server in the next boot. When set to OFF, disables the DHCP client in the next boot.
	 */
	Dhcpclient string `json:"dhcpclient,omitempty"`
	/**
	* DHCP acquired routes are saved on the Citrix ADC.
	 */
	Saveroute string `json:"saveroute,omitempty"`

	Ipaddress string `json:"ipaddress,omitempty"`
	Netmask   string `json:"netmask,omitempty"`
	Hostrtgw  string `json:"hostrtgw,omitempty"`
	Running   string `json:"running,omitempty"`
}

* * Configuration for DHCP parameters resource.

type Nsdiameter

type Nsdiameter struct {
	/**
	* DiameterIdentity to be used by NS. DiameterIdentity is used to identify a Diameter node uniquely. Before setting up diameter configuration, Citrix ADC (as a Diameter node) MUST be assigned a unique DiameterIdentity.
		example =>
		set ns diameter -identity netscaler.com
		Now whenever Citrix ADC needs to use identity in diameter messages. It will use 'netscaler.com' as Origin-Host AVP as defined in RFC3588
	*/
	Identity string `json:"identity,omitempty"`
	/**
	* Diameter Realm to be used by NS.
		example =>
		set ns diameter -realm com
		Now whenever Citrix ADC system needs to use realm in diameter messages. It will use 'com' as Origin-Realm AVP as defined in RFC3588
	*/
	Realm string `json:"realm,omitempty"`
	/**
	* when a Server connection goes down, whether to close the corresponding client connection if there were requests pending on the server.
	 */
	Serverclosepropagation string `json:"serverclosepropagation,omitempty"`
	/**
	* ID of the cluster node for which the diameter id is set, can be configured only through CLIP
	 */
	Ownernode int `json:"ownernode,omitempty"`
}

* * Configuration for Diameter Parameters resource.

type Nsencryptionkey

type Nsencryptionkey struct {
	/**
	* Key name.  This follows the same syntax rules as other expression entity names:
		It must begin with an alpha character (A-Z or a-z) or an underscore (_).
		The rest of the characters must be alpha, numeric (0-9) or underscores.
		It cannot be re or xp (reserved for regular and XPath expressions).
		It cannot be an expression reserved word (e.g. SYS or HTTP).
		It cannot be used for an existing expression object (HTTP callout, patset, dataset, stringmap, or named expression).
	*/
	Name string `json:"name,omitempty"`
	/**
	* Cipher method to be used to encrypt and decrypt content.
		NONE - no encryption or decryption is performed The output of ENCRYPT() and DECRYPT() is the same as the input.
		RC4  - the RC4 stream cipher with a 128 bit (16 byte) key; RC4 is now considered insecure and should only be used if required by existing applciations.
		DES[-<mode>] - the Data Encryption Standard (DES) block cipher with a 64-bit (8 byte) key, with 56 data bits and 8 parity bits. DES is considered less secure than DES3 or AES so it should only be used if required by an existing applicastion. The optional mode is described below; DES without a mode is equivalent to DES-CBC.
		DES3[-<mode>] - the Triple Data Encryption Standard (DES) block cipher with a 192-bit (24 byte) key. The optional mode is described below; DES3 without a mode is equivalent to DES3-CBC.
		AES<keysize>[-<mode>] - the Advanced Encryption Standard block cipher, available with 128 bit (16 byte), 192 bit (24 byte), and 256 bit (32 byte) keys. The optional mode is described below; AES<keysize> without a mode is equivalent to AES<keysize>-CBC.
		For a block cipher, the <mode> specifies how multiple blocks of plaintext are encrypted and how the Initialization Vector (IV) is used. Choices are
		CBC (Cipher Block Chaining) - Each block of plaintext is XORed with the previous ciphertext block, or IV for the first block, before being encrypted. Padding is required if the plaintext is not a multiple of the cipher block size.
		CFB (Cipher Feedback) - The previous ciphertext block, or the IV for the first block, is encrypted and the output is XORed with the current plaintext block to create the current ciphertext block. The 128-bit version of CFB is provided. Padding is not required.
		OFB (Output Feedback) - A keystream is generated by applying the cipher successfully to the IV and XORing the keystream blocks with the plaintext. Padding is not required.
		ECB (Electronic Codebook) - Each block of plaintext is independently encrypted. An IV is not used. Padding is required. This mode is considered less secure than the other modes because the same plaintext always produces the same encrypted text and should only be used if required by an existing application.
	*/
	Method string `json:"method,omitempty"`
	/**
	* The hex-encoded key value. The length is determined by the cipher method:
		RC4    - 16 bytes
		DES    -  8 bytes (all modes)
		DES3   - 24 bytes (all modes)
		AES128 - 16 bytes (all modes)
		AES192 - 24 bytes (all modes)
		AES256 - 32 bytes (all modes)
		Note that the keyValue will be encrypted when it it is saved.
		There is a special key value AUTO which generates a new random key for the specified method. This kind of key is
		intended for use cases where the NetScaler both encrypts and decrypts the same data, such an HTTP header.
	*/
	Keyvalue string `json:"keyvalue,omitempty"`
	/**
	* Enables or disables the padding of plaintext to meet the block size requirements of block ciphers:
		ON - For encryption, PKCS5/7 padding is used, which appends n bytes of value n on the end of the plaintext to bring it to the cipher block lnegth. If the plaintext length is alraady a multiple of the block length, an additional block with bytes of value block_length will be added. For decryption, ISO 10126 padding is accepted, which expects the last byte of the block to be the number of added pad bytes. Note that this accepts PKCS5/7 padding, as well as ANSI_X923 padding. Padding ON is the default for the ECB and CBD modes.
		OFF - No padding. An Undef error will occur with the ECB or CBC modes if the plaintext length is not a multitple of the cipher block size. This can be used with the CFB and OFB modes, and with the ECB and CBC modes if the plaintext will always be an integral number of blocks, or if custom padding is implemented using a policy extension function. Padding OFf is the default for CFB and OFB modes.
	*/
	Padding string `json:"padding,omitempty"`
	/**
	* The initalization voector (IV) for a block cipher, one block of data used to initialize the encryption. The best practice is to not specify an IV, in which case a new random IV will be generated for each encryption. The format must be iv_data or keyid_iv_data to include the generated IV in the encrypted data. The IV should only be specified if it cannot be included in the encrypted data. The IV length is the cipher block size:
		RC4    - not used (error if IV is specified)
		DES    -  8 bytes (all modes)
		DES3   -  8 bytes (all modes)
		AES128 - 16 bytes (all modes)
		AES192 - 16 bytes (all modes)
		AES256 - 16 bytes (all modes)
	*/
	Iv string `json:"iv,omitempty"`
	/**
	* Comments associated with this encryption key.
	 */
	Comment string `json:"comment,omitempty"`
}

* * Configuration for encryption key resource.

type Nsencryptionparams

type Nsencryptionparams struct {
	/**
	* Cipher method (and key length) to be used to encrypt and decrypt content. The default value is AES256.
	 */
	Method string `json:"method,omitempty"`
	/**
	* The base64-encoded key generation number, method, and key value.
		Note:
		* Do not include this argument if you are changing the encryption method.
		* To generate a new key value for the current encryption method, specify an empty string \(""\) as the value of this parameter. The parameter is passed implicitly, with its automatically generated value, to the Citrix ADC packet engines even when it is not included in the command. Passing the parameter to the packet engines enables the appliance to save the key value to the configuration file and to propagate the key value to the secondary appliance in a high availability setup.
	*/
	Keyvalue string `json:"keyvalue,omitempty"`
}

* * Configuration for default encryption parameters resource.

type Nsevents

type Nsevents struct {
	/**
	* Event number starting from which events must be shown.
	 */
	Eventno int `json:"eventno,omitempty"`

	Time      string `json:"time,omitempty"`
	Eventcode string `json:"eventcode,omitempty"`
	Devid     string `json:"devid,omitempty"`
	Devname   string `json:"devname,omitempty"`
	Text      string `json:"text,omitempty"`
	Data0     string `json:"data0,omitempty"`
	Data1     string `json:"data1,omitempty"`
	Data2     string `json:"data2,omitempty"`
	Data3     string `json:"data3,omitempty"`
}

* * Configuration for events resource.

type Nsextension

type Nsextension struct {
	/**
	* Local path to and name of, or URL (protocol, host, path, and file name) for, the file in which to store the imported extension.
		NOTE: The import fails if the object to be imported is on an HTTPS server that requires client certificate authentication for access.
	*/
	Src string `json:"src,omitempty"`
	/**
	* Name to assign to the extension object on the Citrix ADC.
	 */
	Name string `json:"name,omitempty"`
	/**
	* Any comments to preserve information about the extension object.
	 */
	Comment string `json:"comment,omitempty"`
	/**
	* Overwrites the existing file
	 */
	Overwrite bool `json:"overwrite,omitempty"`
	/**
	* Enables tracing to the NS log file of extension execution:
		off   - turns off tracing (equivalent to unset ns extension <extension-name> -trace)
		calls - traces extension function calls with arguments and function returns with the first return value
		lines - traces the above plus line numbers for executed extension lines
		all   - traces the above plus local variables changed by executed extension lines
		Note that the DEBUG log level must be enabled to see extension tracing.
		This can be done by set audit syslogParams -loglevel ALL or -loglevel DEBUG.
	*/
	Trace string `json:"trace,omitempty"`
	/**
	* Comma-separated list of extension functions to trace. By default, all extension functions are traced.
	 */
	Tracefunctions string `json:"tracefunctions,omitempty"`
	/**
	* Comma-separated list of variables (in traced extension functions) to trace. By default, all variables are traced.
	 */
	Tracevariables string `json:"tracevariables,omitempty"`
	/**
	* Show detail for extension function.
	 */
	Detail string `json:"detail,omitempty"`

	Type              string `json:"type,omitempty"`
	Functionhits      string `json:"functionhits,omitempty"`
	Functionundefhits string `json:"functionundefhits,omitempty"`
	Functionhaltcount string `json:"functionhaltcount,omitempty"`
}

* * Configuration for Extension resource.

type Nsextensionbinding

type Nsextensionbinding struct {
	/**
	* Name of the extension object.<br/>Minimum value =
	 */
	Name string `json:"name,omitempty"`
}

* * Binding object which returns the resources bound to nsextension_binding.

type Nsextensionextensionfunctionbinding

type Nsextensionextensionfunctionbinding struct {
	/**
	* Name of extension function given in the extension.
	 */
	Extensionfunctionname string `json:"extensionfunctionname,omitempty"`
	/**
	* Line number of the function in file.
	 */
	Extensionfunctionlinenumber int `json:"extensionfunctionlinenumber,omitempty"`
	/**
	* Extension function class type.
	 */
	Extensionfunctionclasstype string `json:"extensionfunctionclasstype,omitempty"`
	/**
	* Extension function return type.
	 */
	Extensionfunctionreturntype string `json:"extensionfunctionreturntype,omitempty"`
	/**
	* Extension function is in use or not.
	 */
	Activeextensionfunction int `json:"activeextensionfunction,omitempty"`
	/**
	* List of extension function's arguments types
	 */
	Extensionfunctionargtype []string `json:"extensionfunctionargtype,omitempty"`
	/**
	* Any description to preserve information about the extension function.
	 */
	Extensionfuncdescription string `json:"extensionfuncdescription,omitempty"`
	/**
	* Number of parameters in the extension function
	 */
	Extensionfunctionargcount int `json:"extensionfunctionargcount,omitempty"`
	/**
	* List of classes (including inherited) that the function is present in.
	 */
	Extensionfunctionclasses []string `json:"extensionfunctionclasses,omitempty"`
	/**
	* Number of classes the function is present in.
	 */
	Extensionfunctionclassescount int `json:"extensionfunctionclassescount,omitempty"`
	/**
	* List of parameters (including promotions) that the function can accept.
	 */
	Extensionfunctionallparams []string `json:"extensionfunctionallparams,omitempty"`
	/**
	* Number of parameters (including promotions) that the function can accept.
	 */
	Extensionfunctionallparamscount int `json:"extensionfunctionallparamscount,omitempty"`
	/**
	* Name of the extension object.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the extensionfunction that can be bound to nsextension.

type Nsfeature

type Nsfeature struct {
	/**
	* Feature to be enabled. Multiple features can be specified by providing a blank space between each feature.
	 */
	Feature []string `json:"feature,omitempty"`

	Wl                 string `json:"wl,omitempty"`
	Sp                 string `json:"sp,omitempty"`
	Lb                 string `json:"lb,omitempty"`
	Cs                 string `json:"cs,omitempty"`
	Cr                 string `json:"cr,omitempty"`
	Sc                 string `json:"sc,omitempty"`
	Cmp                string `json:"cmp,omitempty"`
	Pq                 string `json:"pq,omitempty"`
	Ssl                string `json:"ssl,omitempty"`
	Gslb               string `json:"gslb,omitempty"`
	Hdosp              string `json:"hdosp,omitempty"`
	Cf                 string `json:"cf,omitempty"`
	Ic                 string `json:"ic,omitempty"`
	Sslvpn             string `json:"sslvpn,omitempty"`
	Aaa                string `json:"aaa,omitempty"`
	Ospf               string `json:"ospf,omitempty"`
	Rip                string `json:"rip,omitempty"`
	Bgp                string `json:"bgp,omitempty"`
	Rewrite            string `json:"rewrite,omitempty"`
	Ipv6pt             string `json:"ipv6pt,omitempty"`
	Appfw              string `json:"appfw,omitempty"`
	Responder          string `json:"responder,omitempty"`
	Htmlinjection      string `json:"htmlinjection,omitempty"`
	Push               string `json:"push,omitempty"`
	Appflow            string `json:"appflow,omitempty"`
	Cloudbridge        string `json:"cloudbridge,omitempty"`
	Isis               string `json:"isis,omitempty"`
	Ch                 string `json:"ch,omitempty"`
	Appqoe             string `json:"appqoe,omitempty"`
	Contentaccelerator string `json:"contentaccelerator,omitempty"`
	Feo                string `json:"feo,omitempty"`
	Lsn                string `json:"lsn,omitempty"`
	Rdpproxy           string `json:"rdpproxy,omitempty"`
	Rep                string `json:"rep,omitempty"`
	Urlfiltering       string `json:"urlfiltering,omitempty"`
	Videooptimization  string `json:"videooptimization,omitempty"`
	Forwardproxy       string `json:"forwardproxy,omitempty"`
	Sslinterception    string `json:"sslinterception,omitempty"`
	Adaptivetcp        string `json:"adaptivetcp,omitempty"`
	Cqa                string `json:"cqa,omitempty"`
	Ci                 string `json:"ci,omitempty"`
	Bot                string `json:"bot,omitempty"`
	Apigateway         string `json:"apigateway,omitempty"`
}

* * Configuration for feature resource.

type Nshardware

type Nshardware struct {
	Hwdescription    string `json:"hwdescription,omitempty"`
	Sysid            string `json:"sysid,omitempty"`
	Manufactureday   string `json:"manufactureday,omitempty"`
	Manufacturemonth string `json:"manufacturemonth,omitempty"`
	Manufactureyear  string `json:"manufactureyear,omitempty"`
	Cpufrequncy      string `json:"cpufrequncy,omitempty"`
	Hostid           string `json:"hostid,omitempty"`
	Host             string `json:"host,omitempty"`
	Serialno         string `json:"serialno,omitempty"`
	Encodedserialno  string `json:"encodedserialno,omitempty"`
	Netscaleruuid    string `json:"netscaleruuid,omitempty"`
	Bmcrevision      string `json:"bmcrevision,omitempty"`
}

* * Configuration for hardware resource.

type Nshmackey

type Nshmackey struct {
	/**
	* Key name.  This follows the same syntax rules as other expression entity names:
		It must begin with an alpha character (A-Z or a-z) or an underscore (_).
		The rest of the characters must be alpha, numeric (0-9) or underscores.
		It cannot be re or xp (reserved for regular and XPath expressions).
		It cannot be an expression reserved word (e.g. SYS or HTTP).
		It cannot be used for an existing expression object (HTTP callout, patset, dataset, stringmap, or named expression).
	*/
	Name string `json:"name,omitempty"`
	/**
	* Digest (hash) function to be used in the HMAC computation.
	 */
	Digest string `json:"digest,omitempty"`
	/**
	* The hex-encoded key to be used in the HMAC computation. The key can be any length (up to a Citrix ADC-imposed maximum of 255 bytes). If the length is less than the digest block size, it will be zero padded up to the block size. If it is greater than the block size, it will be hashed using the digest function to the block size. The block size for each digest is:
		MD2    - 16 bytes
		MD4    - 16 bytes
		MD5    - 16 bytes
		SHA1   - 20 bytes
		SHA224 - 28 bytes
		SHA256 - 32 bytes
		SHA384 - 48 bytes
		SHA512 - 64 bytes
		Note that the key will be encrypted when it it is saved
		There is a special key value AUTO which generates a new random key for the specified digest. This kind of key is
		intended for use cases where the NetScaler both generates and verifies an HMAC on  the same data.
	*/
	Keyvalue string `json:"keyvalue,omitempty"`
	/**
	* Comments associated with this encryption key.
	 */
	Comment string `json:"comment,omitempty"`
}

* * Configuration for HMAC key resource.

type Nshostname

type Nshostname struct {
	/**
	* Host name for the Citrix ADC.
	 */
	Hostname string `json:"hostname,omitempty"`
	/**
	* ID of the cluster node for which you are setting the hostname. Can be configured only through the cluster IP address.
	 */
	Ownernode int `json:"ownernode,omitempty"`
}

* * Configuration for host name resource.

type Nshttpparam

type Nshttpparam struct {
	/**
	* Drop invalid HTTP requests or responses.
	 */
	Dropinvalreqs string `json:"dropinvalreqs,omitempty"`
	/**
	* Mark HTTP/0.9 requests as invalid.
	 */
	Markhttp09inval string `json:"markhttp09inval,omitempty"`
	/**
	* Mark CONNECT requests as invalid.
	 */
	Markconnreqinval string `json:"markconnreqinval,omitempty"`
	/**
	* Enable or disable Citrix ADC server header insertion for Citrix ADC generated HTTP responses.
	 */
	Insnssrvrhdr string `json:"insnssrvrhdr,omitempty"`
	/**
	* The server header value to be inserted. If no explicit header is specified then NSBUILD.RELEASE is used as default server header.
	 */
	Nssrvrhdr string `json:"nssrvrhdr,omitempty"`
	/**
	* Server header value to be inserted.
	 */
	Logerrresp string `json:"logerrresp,omitempty"`
	/**
	* Reuse server connections for requests from more than one client connections.
	 */
	Conmultiplex string `json:"conmultiplex,omitempty"`
	/**
	* 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.
	 */
	Maxreusepool int `json:"maxreusepool"` // Zero is a valid value
	/**
	* Enable/Disable HTTP/2 on server side
	 */
	Http2serverside string `json:"http2serverside,omitempty"`
	/**
	* Ignore Coding scheme in CONNECT request.
	 */
	Ignoreconnectcodingscheme string `json:"ignoreconnectcodingscheme,omitempty"`

	Builtin string `json:"builtin,omitempty"`
	Feature string `json:"feature,omitempty"`
}

* * Configuration for HTTP parameter resource.

type Nshttpprofile

type Nshttpprofile struct {
	/**
	* 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'\).
	*/
	Name string `json:"name,omitempty"`
	/**
	* Drop invalid HTTP requests or responses.
	 */
	Dropinvalreqs string `json:"dropinvalreqs,omitempty"`
	/**
	* Mark HTTP/0.9 requests as invalid.
	 */
	Markhttp09inval string `json:"markhttp09inval,omitempty"`
	/**
	* Mark CONNECT requests as invalid.
	 */
	Markconnreqinval string `json:"markconnreqinval,omitempty"`
	/**
	* Mark TRACE requests as invalid.
	 */
	Marktracereqinval string `json:"marktracereqinval,omitempty"`
	/**
	* Mark RFC7230 non-compliant transaction as invalid
	 */
	Markrfc7230noncompliantinval string `json:"markrfc7230noncompliantinval,omitempty"`
	/**
	* Mark Http header with extra white space as invalid
	 */
	Markhttpheaderextrawserror string `json:"markhttpheaderextrawserror,omitempty"`
	/**
	* Start data compression on receiving a TCP packet with PUSH flag set.
	 */
	Cmponpush string `json:"cmponpush,omitempty"`
	/**
	* Reuse server connections for requests from more than one client connections.
	 */
	Conmultiplex string `json:"conmultiplex,omitempty"`
	/**
	* 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.
	 */
	Maxreusepool int `json:"maxreusepool,omitempty"`
	/**
	* Drop any extra 'CR' and 'LF' characters present after the header.
	 */
	Dropextracrlf string `json:"dropextracrlf,omitempty"`
	/**
	* 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.
	 */
	Incomphdrdelay int `json:"incomphdrdelay,omitempty"`
	/**
	* HTTP connection to be upgraded to a web socket connection. Once upgraded, Citrix ADC does not process Layer 7 traffic on this connection.
	 */
	Websocket string `json:"websocket,omitempty"`
	/**
	* 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.
	 */
	Rtsptunnel string `json:"rtsptunnel,omitempty"`
	/**
	* 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.
	 */
	Reqtimeout int `json:"reqtimeout,omitempty"`
	/**
	* Adapts the configured request timeout based on flow conditions. The timeout is increased or decreased internally and applied on the flow.
	 */
	Adpttimeout string `json:"adpttimeout,omitempty"`
	/**
	* 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.
	*/
	Reqtimeoutaction string `json:"reqtimeoutaction,omitempty"`
	/**
	* Drop any extra data when server sends more data than the specified content-length.
	 */
	Dropextradata string `json:"dropextradata,omitempty"`
	/**
	* Enable or disable web logging.
	 */
	Weblog string `json:"weblog,omitempty"`
	/**
	* Name of the header that contains the real client IP address.
	 */
	Clientiphdrexpr string `json:"clientiphdrexpr,omitempty"`
	/**
	* Maximum number of requests allowed on a single connection. Zero implies no limit on the number of requests.
	 */
	Maxreq int `json:"maxreq,omitempty"`
	/**
	* Generate the persistent Citrix ADC specific ETag for the HTTP response with ETag header.
	 */
	Persistentetag string `json:"persistentetag,omitempty"`
	/**
	* 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.
	 */
	Spdy string `json:"spdy,omitempty"`
	/**
	* Choose whether to enable support for HTTP/2.
	 */
	Http2 string `json:"http2,omitempty"`
	/**
	* Choose whether to enable support for Direct HTTP/2.
	 */
	Http2direct string `json:"http2direct,omitempty"`
	/**
	* Choose whether to enable strict HTTP/2 cipher selection
	 */
	Http2strictcipher string `json:"http2strictcipher,omitempty"`
	/**
	* Choose whether to enable support for sending HTTP/2 ALTSVC frames. When enabled, the ADC sends HTTP/2 ALTSVC frames to HTTP/2 clients, instead of the Alt-Svc response header field. Not applicable to servers.
	 */
	Http2altsvcframe string `json:"http2altsvcframe,omitempty"`
	/**
	* Choose whether to enable support for Alternative Services.
	 */
	Altsvc string `json:"altsvc,omitempty"`
	/**
	* Configure a custom Alternative Services header value that should be inserted in the response to advertise a HTTP/SSL/HTTP_QUIC vserver.
	 */
	Altsvcvalue string `json:"altsvcvalue,omitempty"`
	/**
	* 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.
	 */
	Reusepooltimeout int `json:"reusepooltimeout,omitempty"`
	/**
	* 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.
	 */
	Maxheaderlen int `json:"maxheaderlen,omitempty"`
	/**
	* 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.
	 */
	Minreusepool int `json:"minreusepool,omitempty"`
	/**
	* 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.
	 */
	Http2maxheaderlistsize int `json:"http2maxheaderlistsize,omitempty"`
	/**
	* Maximum size of the frame payload that the Citrix ADC is willing to receive, in bytes.
	 */
	Http2maxframesize int `json:"http2maxframesize,omitempty"`
	/**
	* Maximum number of concurrent streams that is allowed per connection.
	 */
	Http2maxconcurrentstreams int `json:"http2maxconcurrentstreams,omitempty"`
	/**
	* Initial window size for connection level flow control, in bytes.
	 */
	Http2initialconnwindowsize int `json:"http2initialconnwindowsize,omitempty"`
	/**
	* Initial window size for stream level flow control, in bytes.
	 */
	Http2initialwindowsize int `json:"http2initialwindowsize,omitempty"`
	/**
	* Maximum size of the header compression table used to decode header blocks, in bytes.
	 */
	Http2headertablesize int `json:"http2headertablesize,omitempty"`
	/**
	* 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.
	 */
	Http2minseverconn int `json:"http2minseverconn,omitempty"`
	/**
	* Maximum number of ping frames allowed in HTTP2 connection per minute
	 */
	Http2maxpingframespermin int `json:"http2maxpingframespermin,omitempty"`
	/**
	* Maximum number of settings frames allowed in HTTP2 connection per minute
	 */
	Http2maxsettingsframespermin int `json:"http2maxsettingsframespermin,omitempty"`
	/**
	* Maximum number of reset frames allowed in HTTP/2 connection per minute
	 */
	Http2maxresetframespermin int `json:"http2maxresetframespermin,omitempty"`
	/**
	* Maximum number of empty  frames allowed in HTTP2 connection per minute
	 */
	Http2maxemptyframespermin int `json:"http2maxemptyframespermin,omitempty"`
	/**
	* Maximum size in bytes allowed to buffer gRPC packets till trailer is received
	 */
	Grpcholdlimit int `json:"grpcholdlimit,omitempty"`
	/**
	* Maximum time in milliseconds allowed to buffer gRPC packets till trailer is received. The value should be in multiples of 100
	 */
	Grpcholdtimeout int `json:"grpcholdtimeout,omitempty"`
	/**
	* Set to DISABLED for gRPC without a length delimitation.
	 */
	Grpclengthdelimitation string `json:"grpclengthdelimitation,omitempty"`
	/**
	* 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 4*T is considered tolerable. Any transaction responding in more than 4*T 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.
	 */
	Apdexcltresptimethreshold int `json:"apdexcltresptimethreshold,omitempty"`
	/**
	* Choose whether to enable support for HTTP/3.
	 */
	Http3 string `json:"http3,omitempty"`
	/**
	* Maximum size of the HTTP/3 header field section, in bytes.
	 */
	Http3maxheaderfieldsectionsize int `json:"http3maxheaderfieldsectionsize,omitempty"`
	/**
	* Maximum size of the HTTP/3 QPACK dynamic header table, in bytes.
	 */
	Http3maxheadertablesize int `json:"http3maxheadertablesize,omitempty"`
	/**
	* Maximum number of HTTP/3 streams that can be blocked while HTTP/3 headers are being decoded.
	 */
	Http3maxheaderblockedstreams int `json:"http3maxheaderblockedstreams,omitempty"`

	Refcnt                    string `json:"refcnt,omitempty"`
	Builtin                   string `json:"builtin,omitempty"`
	Feature                   string `json:"feature,omitempty"`
	Apdexsvrresptimethreshold string `json:"apdexsvrresptimethreshold,omitempty"`
}

* * Configuration for HTTP profile resource.

type Nsicapprofile

type Nsicapprofile struct {
	/**
	* Name for an ICAP 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 ICAP 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 icap profile" or 'my icap profile'\).
	*/
	Name string `json:"name,omitempty"`
	/**
	* Enable or Disable preview header with ICAP request. This feature allows an ICAP server to see the beginning of a transaction, then decide if it wants to opt-out of the transaction early instead of receiving the remainder of the request message.
	 */
	Preview string `json:"preview,omitempty"`
	/**
	* Value of Preview Header field. Citrix ADC uses the minimum of this set value and the preview size received on OPTIONS response.
	 */
	Previewlength int `json:"previewlength,omitempty"`
	/**
	* URI representing icap service. It is a mandatory argument while creating an icapprofile.
	 */
	Uri string `json:"uri,omitempty"`
	/**
	* ICAP Host Header
	 */
	Hostheader string `json:"hostheader,omitempty"`
	/**
	* ICAP User Agent Header String
	 */
	Useragent string `json:"useragent,omitempty"`
	/**
	* ICAP Mode of operation. It is a mandatory argument while creating an icapprofile.
	 */
	Mode string `json:"mode,omitempty"`
	/**
	* Query parameters to be included with ICAP request URI. Entered values should be in arg=value format. For more than one parameters, add & separated values. e.g.: arg1=val1&arg2=val2.
	 */
	Queryparams string `json:"queryparams,omitempty"`
	/**
	* If enabled, Citrix ADC keeps the ICAP connection alive after a transaction to reuse it to send next ICAP request.
	 */
	Connectionkeepalive string `json:"connectionkeepalive,omitempty"`
	/**
	* Enable or Disable sending Allow: 204 header in ICAP request.
	 */
	Allow204 string `json:"allow204,omitempty"`
	/**
	* Insert custom ICAP headers in the ICAP request to send to ICAP server. The headers can be static or can be dynamically constructed using PI Policy Expression. For example, to send static user agent and Client's IP address, the expression can be specified as "User-Agent: NS-ICAP-Client/V1.0\r\nX-Client-IP: "+CLIENT.IP.SRC+"\r\n".
		The Citrix ADC does not check the validity of the specified header name-value. You must manually validate the specified header syntax.
	*/
	Inserticapheaders string `json:"inserticapheaders,omitempty"`
	/**
	* Exact HTTP request, in the form of an expression, which the Citrix ADC encapsulates and sends to the ICAP server. If you set this parameter, the ICAP request is sent using only this header. This can be used when the HTTP header is not available to send or ICAP server only needs part of the incoming HTTP request. The request expression is constrained by the feature for which it is used.
		The Citrix ADC does not check the validity of this request. You must manually validate the request.
	*/
	Inserthttprequest string `json:"inserthttprequest,omitempty"`
	/**
	* Time, in seconds, within which the remote server should respond to the ICAP-request. If the Netscaler does not receive full response with this time, the specified request timeout action is performed. Zero value disables this timeout functionality.
	 */
	Reqtimeout int `json:"reqtimeout,omitempty"`
	/**
	* Name of the action to perform if the Vserver/Server representing the remote service does not respond with any response within the timeout value configured. The Supported actions are
		* BYPASS - This Ignores the remote server response and sends the request/response to Client/Server.
		* If the ICAP response with Encapsulated headers is not received within the request-timeout value configured, this Ignores the remote ICAP server response and sends the Full request/response to Server/Client.
		* RESET - Reset the client connection by closing it. The client program, such as a browser, will handle this and may inform the user. The client may then resend the request if desired.
		* DROP - Drop the request without sending a response to the user.
	*/
	Reqtimeoutaction string `json:"reqtimeoutaction,omitempty"`
	/**
	* Name of the audit message action which would be evaluated on receiving the ICAP response to emit the logs.
	 */
	Logaction string `json:"logaction,omitempty"`
}

* * Configuration for ICAP profile resource.

type Nsip

type Nsip struct {
	/**
	* IPv4 address to create on the Citrix ADC. Cannot be changed after the IP address is created.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* Subnet mask associated with the IP address.
	 */
	Netmask string `json:"netmask,omitempty"`
	/**
	* Type of the IP address to create on the Citrix ADC. Cannot be changed after the IP address is created. The following are the different types of Citrix ADC owned IP addresses:
		* A Subnet IP (SNIP) address is used by the Citrix ADC to communicate with the servers. The Citrix ADC also uses the subnet IP address when generating its own packets, such as packets related to dynamic routing protocols, or to send monitor probes to check the health of the servers.
		* A Virtual IP (VIP) address is the IP address associated with a virtual server. It is the IP address to which clients connect. An appliance managing a wide range of traffic may have many VIPs configured. Some of the attributes of the VIP address are customized to meet the requirements of the virtual server.
		* A GSLB site IP (GSLBIP) address is associated with a GSLB site. It is not mandatory to specify a GSLBIP address when you initially configure the Citrix ADC. A GSLBIP address is used only when you create a GSLB site.
		* A Cluster IP (CLIP) address is the management address of the cluster. All cluster configurations must be performed by accessing the cluster through this IP address.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Respond to ARP requests for this IP address.
	 */
	Arp string `json:"arp,omitempty"`
	/**
	* Respond to ICMP requests for this IP address.
	 */
	Icmp string `json:"icmp,omitempty"`
	/**
	* Use this option to set (enable or disable) the virtual server attribute for this IP address.
	 */
	Vserver string `json:"vserver,omitempty"`
	/**
	* Allow Telnet access to this IP address.
	 */
	Telnet string `json:"telnet,omitempty"`
	/**
	* Allow File Transfer Protocol (FTP) access to this IP address.
	 */
	Ftp string `json:"ftp,omitempty"`
	/**
	* Allow graphical user interface (GUI) access to this IP address.
	 */
	Gui string `json:"gui,omitempty"`
	/**
	* Allow secure shell (SSH) access to this IP address.
	 */
	Ssh string `json:"ssh,omitempty"`
	/**
	* Allow Simple Network Management Protocol (SNMP) access to this IP address.
	 */
	Snmp string `json:"snmp,omitempty"`
	/**
	* Allow access to management applications on this IP address.
	 */
	Mgmtaccess string `json:"mgmtaccess,omitempty"`
	/**
	* Block access to nonmanagement applications on this IP. This option is applicable for MIPs, SNIPs, and NSIP, and is disabled by default. Nonmanagement applications can run on the underlying Citrix ADC Free BSD operating system.
	 */
	Restrictaccess string `json:"restrictaccess,omitempty"`
	/**
	* Allow dynamic routing on this IP address. Specific to Subnet IP (SNIP) address.
	 */
	Dynamicrouting string `json:"dynamicrouting,omitempty"`
	/**
	* Decrement TTL by 1 when ENABLED.This setting is applicable only for UDP traffic.
	 */
	Decrementttl string `json:"decrementttl,omitempty"`
	/**
	* Use this option to enable or disable OSPF on this IP address for the entity.
	 */
	Ospf string `json:"ospf,omitempty"`
	/**
	* Use this option to enable or disable BGP on this IP address for the entity.
	 */
	Bgp string `json:"bgp,omitempty"`
	/**
	* Use this option to enable or disable RIP on this IP address for the entity.
	 */
	Rip string `json:"rip,omitempty"`
	/**
	* Option to push the VIP to ZebOS routing table for Kernel route redistribution through dynamic routing protocols
	 */
	Hostroute string `json:"hostroute,omitempty"`
	/**
	* Advertise VIPs from Shared VLAN on Default Partition.
	 */
	Advertiseondefaultpartition string `json:"advertiseondefaultpartition,omitempty"`
	/**
	* Option to push the SNIP subnet to ZebOS routing table for Kernel route redistribution through dynamic routing protocol.
	 */
	Networkroute string `json:"networkroute,omitempty"`
	/**
	* Tag value for the network/host route associated with this IP.
	 */
	Tag int `json:"tag,omitempty"`
	/**
	* IP address of the gateway of the route for this VIP address.
	 */
	Hostrtgw string `json:"hostrtgw,omitempty"`
	/**
	* Integer value to add to or subtract from the cost of the route advertised for the VIP address.
	 */
	Metric int `json:"metric,omitempty"`
	/**
	* Advertise the route for the Virtual IP (VIP) address on the basis of the state of the virtual servers associated with that VIP.
		* NONE - Advertise the route for the VIP address, regardless of the state of the virtual servers associated with the address.
		* ONE VSERVER - Advertise the route for the VIP address if at least one of the associated virtual servers is in UP state.
		* ALL VSERVER - Advertise the route for the VIP address if all of the associated virtual servers are in UP state.
		* VSVR_CNTRLD - Advertise the route for the VIP address according to the  RHIstate (RHI STATE) parameter setting on all the associated virtual servers of the VIP address along with their states.
		When Vserver RHI Level (RHI) parameter is set to VSVR_CNTRLD, the following are different RHI behaviors for the VIP address on the basis of RHIstate (RHI STATE) settings on the virtual servers associated with the VIP address:
		* If you set RHI STATE to PASSIVE on all virtual servers, the Citrix ADC always advertises the route for the VIP address.
		* If you set RHI STATE to ACTIVE on all virtual servers, the Citrix ADC advertises the route for the VIP address if at least one of the associated virtual servers is in UP state.
		*If you set RHI STATE to ACTIVE on some and PASSIVE on others, the Citrix ADC advertises the route for the VIP address if at least one of the associated virtual servers, whose RHI STATE set to ACTIVE, is in UP state.
	*/
	Vserverrhilevel string `json:"vserverrhilevel,omitempty"`
	/**
	* Type of LSAs to be used by the OSPF protocol, running on the Citrix ADC, for advertising the route for this VIP address.
	 */
	Ospflsatype string `json:"ospflsatype,omitempty"`
	/**
	* ID of the area in which the type1 link-state advertisements (LSAs) are to be advertised for this virtual IP (VIP)  address by the OSPF protocol running on the Citrix ADC.  When this parameter is not set, the VIP is advertised on all areas.
	 */
	Ospfarea int `json:"ospfarea,omitempty"`
	/**
	* Enable or disable the IP address.
	 */
	State string `json:"state,omitempty"`
	/**
	* A positive integer that uniquely identifies a VMAC address for binding to this VIP address. This binding is used to set up Citrix ADCs in an active-active configuration using VRRP.
	 */
	Vrid int `json:"vrid,omitempty"`
	/**
	* Respond to ICMP requests for a Virtual IP (VIP) address on the basis of the states of the virtual servers associated with that VIP. Available settings function as follows:
		* NONE - The Citrix ADC responds to any ICMP request for the VIP address, irrespective of the states of the virtual servers associated with the address.
		* ONE VSERVER - The Citrix ADC responds to any ICMP request for the VIP address if at least one of the associated virtual servers is in UP state.
		* ALL VSERVER - The Citrix ADC responds to any ICMP request for the VIP address if all of the associated virtual servers are in UP state.
		* VSVR_CNTRLD - The behavior depends on the ICMP VSERVER RESPONSE setting on all the associated virtual servers.
		The following settings can be made for the ICMP VSERVER RESPONSE parameter on a virtual server:
		* If you set ICMP VSERVER RESPONSE to PASSIVE on all virtual servers, Citrix ADC always responds.
		* If you set ICMP VSERVER RESPONSE to ACTIVE on all virtual servers, Citrix ADC responds if even one virtual server is UP.
		* When you set ICMP VSERVER RESPONSE to ACTIVE on some and PASSIVE on others, Citrix ADC responds if even one virtual server set to ACTIVE is UP.
	*/
	Icmpresponse string `json:"icmpresponse,omitempty"`
	/**
	* The owner node in a Cluster for this IP address. Owner node can vary from 0 to 31. If ownernode is not specified then the IP is treated as Striped IP.
	 */
	Ownernode int `json:"ownernode,omitempty"`
	/**
	* Respond to ARP requests for a Virtual IP (VIP) address on the basis of the states of the virtual servers associated with that VIP. Available settings function as follows:
		* NONE - The Citrix ADC responds to any ARP request for the VIP address, irrespective of the states of the virtual servers associated with the address.
		* ONE VSERVER - The Citrix ADC responds to any ARP request for the VIP address if at least one of the associated virtual servers is in UP state.
		* ALL VSERVER - The Citrix ADC responds to any ARP request for the VIP address if all of the associated virtual servers are in UP state.
	*/
	Arpresponse string `json:"arpresponse,omitempty"`
	/**
	* in cluster system, if the owner node is down, whether should it respond to icmp/arp
	 */
	Ownerdownresponse string `json:"ownerdownresponse,omitempty"`
	/**
	* Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0. TD id 4095 is used reserved for  LSN use
	 */
	Td int `json:"td,omitempty"`
	/**
	* The arp owner in a Cluster for this IP address. It can vary from 0 to 31.
	 */
	Arpowner int `json:"arpowner,omitempty"`
	/**
	* If enabled, this IP will be advertised by Citrix ADC to MPTCP enabled clients as part of ADD_ADDR option.
	 */
	Mptcpadvertise string `json:"mptcpadvertise,omitempty"`

	Flags                    string `json:"flags,omitempty"`
	Hostrtgwact              string `json:"hostrtgwact,omitempty"`
	Ospfareaval              string `json:"ospfareaval,omitempty"`
	Viprtadv2bsd             string `json:"viprtadv2bsd,omitempty"`
	Vipvsercount             string `json:"vipvsercount,omitempty"`
	Vipvserdowncount         string `json:"vipvserdowncount,omitempty"`
	Vipvsrvrrhiactivecount   string `json:"vipvsrvrrhiactivecount,omitempty"`
	Vipvsrvrrhiactiveupcount string `json:"vipvsrvrrhiactiveupcount,omitempty"`
	Freeports                string `json:"freeports,omitempty"`
	Iptype                   string `json:"iptype,omitempty"`
	Operationalarpowner      string `json:"operationalarpowner,omitempty"`
}

* * Configuration for ip resource.

type Nsip6

type Nsip6 struct {
	/**
	* IPv6 address to create on the Citrix ADC.
	 */
	Ipv6address string `json:"ipv6address,omitempty"`
	/**
	* Scope of the IPv6 address to be created. Cannot be changed after the IP address is created.
	 */
	Scope string `json:"scope,omitempty"`
	/**
	* Type of IP address to be created on the Citrix ADC. Cannot be changed after the IP address is created.
	 */
	Type string `json:"type,omitempty"`
	/**
	* The VLAN number.
	 */
	Vlan int `json:"vlan,omitempty"`
	/**
	* Respond to Neighbor Discovery (ND) requests for this IP address.
	 */
	Nd string `json:"nd,omitempty"`
	/**
	* Respond to ICMP requests for this IP address.
	 */
	Icmp string `json:"icmp,omitempty"`
	/**
	* Enable or disable the state of all the virtual servers associated with this VIP6 address.
	 */
	Vserver string `json:"vserver,omitempty"`
	/**
	* Allow Telnet access to this IP address.
	 */
	Telnet string `json:"telnet,omitempty"`
	/**
	* Allow File Transfer Protocol (FTP) access to this IP address.
	 */
	Ftp string `json:"ftp,omitempty"`
	/**
	* Allow graphical user interface (GUI) access to this IP address.
	 */
	Gui string `json:"gui,omitempty"`
	/**
	* Allow secure Shell (SSH) access to this IP address.
	 */
	Ssh string `json:"ssh,omitempty"`
	/**
	* Allow Simple Network Management Protocol (SNMP) access to this IP address.
	 */
	Snmp string `json:"snmp,omitempty"`
	/**
	* Allow access to management applications on this IP address.
	 */
	Mgmtaccess string `json:"mgmtaccess,omitempty"`
	/**
	* Block access to nonmanagement applications on this IP address. This option is applicable forMIP6s, SNIP6s, and NSIP6s, and is disabled by default. Nonmanagement applications can run on the underlying Citrix ADC Free BSD operating system.
	 */
	Restrictaccess string `json:"restrictaccess,omitempty"`
	/**
	* Allow dynamic routing on this IP address. Specific to Subnet IPv6 (SNIP6) address.
	 */
	Dynamicrouting string `json:"dynamicrouting,omitempty"`
	/**
	* Decrement Hop Limit by 1 when ENABLED.This setting is applicable only for UDP traffic.
	 */
	Decrementhoplimit string `json:"decrementhoplimit,omitempty"`
	/**
	* Option to push the VIP6 to ZebOS routing table for Kernel route redistribution through dynamic routing protocols.
	 */
	Hostroute string `json:"hostroute,omitempty"`
	/**
	* Advertise VIPs from Shared VLAN on Default Partition
	 */
	Advertiseondefaultpartition string `json:"advertiseondefaultpartition,omitempty"`
	/**
	* Option to push the SNIP6 subnet to ZebOS routing table for Kernel route redistribution through dynamic routing protocol.
	 */
	Networkroute string `json:"networkroute,omitempty"`
	/**
	* Tag value for the network/host route associated with this IP.
	 */
	Tag int `json:"tag,omitempty"`
	/**
	* IPv6 address of the gateway for the route. If Gateway is not set, VIP uses :: as the gateway.
	 */
	Ip6hostrtgw string `json:"ip6hostrtgw,omitempty"`
	/**
	* Integer value to add to or subtract from the cost of the route advertised for the VIP6 address.
	 */
	Metric int `json:"metric,omitempty"`
	/**
	* Advertise or do not advertise the route for the Virtual IP (VIP6) address on the basis of the state of the virtual servers associated with that VIP6.
		* NONE - Advertise the route for the VIP6 address, irrespective of the state of the virtual servers associated with the address.
		* ONE VSERVER - Advertise the route for the VIP6 address if at least one of the associated virtual servers is in UP state.
		* ALL VSERVER - Advertise the route for the VIP6 address if all of the associated virtual servers are in UP state.
		* VSVR_CNTRLD.   Advertise the route for the VIP address according to the  RHIstate (RHI STATE) parameter setting on all the associated virtual servers of the VIP address along with their states.
		When Vserver RHI Level (RHI) parameter is set to VSVR_CNTRLD, the following are different RHI behaviors for the VIP address on the basis of RHIstate (RHI STATE) settings on the virtual servers associated with the VIP address:
		* If you set RHI STATE to PASSIVE on all virtual servers, the Citrix ADC always advertises the route for the VIP address.
		* If you set RHI STATE to ACTIVE on all virtual servers, the Citrix ADC advertises the route for the VIP address if at least one of the associated virtual servers is in UP state.
		*If you set RHI STATE to ACTIVE on some and PASSIVE on others, the Citrix ADC advertises the route for the VIP address if at least one of the associated virtual servers, whose RHI STATE set to ACTIVE, is in UP state.
	*/
	Vserverrhilevel string `json:"vserverrhilevel,omitempty"`
	/**
	* Type of LSAs to be used by the IPv6 OSPF protocol, running on the Citrix ADC, for advertising the route for the VIP6 address.
	 */
	Ospf6lsatype string `json:"ospf6lsatype,omitempty"`
	/**
	* ID of the area in which the Intra-Area-Prefix LSAs are to be advertised for the VIP6 address by the IPv6 OSPF protocol running on the Citrix ADC. When ospfArea is not set, VIP6 is advertised on all areas.
	 */
	Ospfarea int `json:"ospfarea,omitempty"`
	/**
	* Enable or disable the IP address.
	 */
	State string `json:"state,omitempty"`
	/**
	* Mapped IPV4 address for the IPV6 address.
	 */
	Map string `json:"map,omitempty"`
	/**
	* A positive integer that uniquely identifies a VMAC address for binding to this VIP address. This binding is used to set up Citrix ADCs in an active-active configuration using VRRP.
	 */
	Vrid6 int `json:"vrid6,omitempty"`
	/**
	* ID of the cluster node for which you are adding the IP address. Must be used if you want the IP address to be active only on the specific node. Can be configured only through the cluster IP address. Cannot be changed after the IP address is created.
	 */
	Ownernode int `json:"ownernode,omitempty"`
	/**
	* in cluster system, if the owner node is down, whether should it respond to icmp/arp
	 */
	Ownerdownresponse string `json:"ownerdownresponse,omitempty"`
	/**
	* Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.
	 */
	Td int `json:"td,omitempty"`
	/**
	* NdOwner in Cluster for VIPS and Striped SNIPS
	 */
	Ndowner int `json:"ndowner,omitempty"`
	/**
	* If enabled, this IP will be advertised by Citrix ADC to MPTCP enabled clients as part of ADD_ADDR option.
	 */
	Mptcpadvertise string `json:"mptcpadvertise,omitempty"`

	Iptype             string `json:"iptype,omitempty"`
	Curstate           string `json:"curstate,omitempty"`
	Viprtadv2bsd       string `json:"viprtadv2bsd,omitempty"`
	Vipvsercount       string `json:"vipvsercount,omitempty"`
	Vipvserdowncount   string `json:"vipvserdowncount,omitempty"`
	Systemtype         string `json:"systemtype,omitempty"`
	Operationalndowner string `json:"operationalndowner,omitempty"`
}

* * Configuration for ip6 resource.

type Nslicense

type Nslicense struct {
	Wl                      string `json:"wl,omitempty"`
	Sp                      string `json:"sp,omitempty"`
	Lb                      string `json:"lb,omitempty"`
	Cs                      string `json:"cs,omitempty"`
	Cr                      string `json:"cr,omitempty"`
	Sc                      string `json:"sc,omitempty"`
	Cmp                     string `json:"cmp,omitempty"`
	Delta                   string `json:"delta,omitempty"`
	Pq                      string `json:"pq,omitempty"`
	Ssl                     string `json:"ssl,omitempty"`
	Gslb                    string `json:"gslb,omitempty"`
	Gslbp                   string `json:"gslbp,omitempty"`
	Hdosp                   string `json:"hdosp,omitempty"`
	Routing                 string `json:"routing,omitempty"`
	Cf                      string `json:"cf,omitempty"`
	Contentaccelerator      string `json:"contentaccelerator,omitempty"`
	Ic                      string `json:"ic,omitempty"`
	Sslvpn                  string `json:"sslvpn,omitempty"`
	Fsslvpnusers            string `json:"f_sslvpn_users,omitempty"`
	Ficausers               string `json:"f_ica_users,omitempty"`
	Aaa                     string `json:"aaa,omitempty"`
	Ospf                    string `json:"ospf,omitempty"`
	Rip                     string `json:"rip,omitempty"`
	Bgp                     string `json:"bgp,omitempty"`
	Rewrite                 string `json:"rewrite,omitempty"`
	Ipv6pt                  string `json:"ipv6pt,omitempty"`
	Appfw                   string `json:"appfw,omitempty"`
	Responder               string `json:"responder,omitempty"`
	Agee                    string `json:"agee,omitempty"`
	Nsxn                    string `json:"nsxn,omitempty"`
	Htmlinjection           string `json:"htmlinjection,omitempty"`
	Modelid                 string `json:"modelid,omitempty"`
	Push                    string `json:"push,omitempty"`
	Wionns                  string `json:"wionns,omitempty"`
	Appflow                 string `json:"appflow,omitempty"`
	Cloudbridge             string `json:"cloudbridge,omitempty"`
	Cloudbridgeappliance    string `json:"cloudbridgeappliance,omitempty"`
	Cloudextenderappliance  string `json:"cloudextenderappliance,omitempty"`
	Isis                    string `json:"isis,omitempty"`
	Cluster                 string `json:"cluster,omitempty"`
	Ch                      string `json:"ch,omitempty"`
	Appqoe                  string `json:"appqoe,omitempty"`
	Appflowica              string `json:"appflowica,omitempty"`
	Isstandardlic           string `json:"isstandardlic,omitempty"`
	Isenterpriselic         string `json:"isenterpriselic,omitempty"`
	Isplatinumlic           string `json:"isplatinumlic,omitempty"`
	Issgwylic               string `json:"issgwylic,omitempty"`
	Isswglic                string `json:"isswglic,omitempty"`
	Feo                     string `json:"feo,omitempty"`
	Lsn                     string `json:"lsn,omitempty"`
	Licensingmode           string `json:"licensingmode,omitempty"`
	Cloudsubscriptionimage  string `json:"cloudsubscriptionimage,omitempty"`
	Daystoexpiration        string `json:"daystoexpiration,omitempty"`
	Rdpproxy                string `json:"rdpproxy,omitempty"`
	Rep                     string `json:"rep,omitempty"`
	Urlfiltering            string `json:"urlfiltering,omitempty"`
	Videooptimization       string `json:"videooptimization,omitempty"`
	Forwardproxy            string `json:"forwardproxy,omitempty"`
	Sslinterception         string `json:"sslinterception,omitempty"`
	Remotecontentinspection string `json:"remotecontentinspection,omitempty"`
	Adaptivetcp             string `json:"adaptivetcp,omitempty"`
	Cqa                     string `json:"cqa,omitempty"`
	Bot                     string `json:"bot,omitempty"`
	Apigateway              string `json:"apigateway,omitempty"`
}

* * Configuration for license resource.

type Nslicenseparameters

type Nslicenseparameters struct {
	/**
	* If ADC remains in grace for the configured hours then first grace alert will be raised
	 */
	Alert1gracetimeout int `json:"alert1gracetimeout"` // Zero is a valid value
	/**
	* If ADC remains in grace for the configured hours then major grace alert will be raised
	 */
	Alert2gracetimeout int `json:"alert2gracetimeout,omitempty"`
}

* * Configuration for licenseparameters resource.

type Nslicenseproxyserver

type Nslicenseproxyserver struct {
	/**
	* IP address of the License proxy server.
	 */
	Serverip string `json:"serverip,omitempty"`
	/**
	* Fully qualified domain name of the License proxy server.
	 */
	Servername string `json:"servername,omitempty"`
	/**
	* License proxy server port.
	 */
	Port int `json:"port,omitempty"`
}

* * Configuration for licenseproxyserver resource.

type Nslicenseserver

type Nslicenseserver struct {
	/**
	* IP address of the License server.
	 */
	Licenseserverip string `json:"licenseserverip,omitempty"`
	/**
	* Fully qualified domain name of the License server.
	 */
	Servername string `json:"servername,omitempty"`
	/**
	* License server port.
	 */
	Port int `json:"port,omitempty"`
	/**
	* If this flag is used while adding the licenseserver, existing config will be overwritten. Use this flag only if you are sure that the new licenseserver has the required capacity.
	 */
	Forceupdateip bool `json:"forceupdateip,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Status     string `json:"status,omitempty"`
	Grace      string `json:"grace,omitempty"`
	Gptimeleft string `json:"gptimeleft,omitempty"`
}

* * Configuration for licenseserver resource.

type Nslicenseserverpool

type Nslicenseserverpool struct {
	Instancetotal                string `json:"instancetotal,omitempty"`
	Instanceavailable            string `json:"instanceavailable,omitempty"`
	Standardbandwidthtotal       string `json:"standardbandwidthtotal,omitempty"`
	Standardbandwidthavailable   string `json:"standardbandwidthavailable,omitempty"`
	Enterprisebandwidthtotal     string `json:"enterprisebandwidthtotal,omitempty"`
	Enterprisebandwidthavailable string `json:"enterprisebandwidthavailable,omitempty"`
	Platinumbandwidthtotal       string `json:"platinumbandwidthtotal,omitempty"`
	Platinumbandwidthavailable   string `json:"platinumbandwidthavailable,omitempty"`
	Standardcputotal             string `json:"standardcputotal,omitempty"`
	Standardcpuavailable         string `json:"standardcpuavailable,omitempty"`
	Enterprisecputotal           string `json:"enterprisecputotal,omitempty"`
	Enterprisecpuavailable       string `json:"enterprisecpuavailable,omitempty"`
	Platinumcputotal             string `json:"platinumcputotal,omitempty"`
	Platinumcpuavailable         string `json:"platinumcpuavailable,omitempty"`
	Cpxinstancetotal             string `json:"cpxinstancetotal,omitempty"`
	Cpxinstanceavailable         string `json:"cpxinstanceavailable,omitempty"`
	Vpx1stotal                   string `json:"vpx1stotal,omitempty"`
	Vpx1savailable               string `json:"vpx1savailable,omitempty"`
	Vpx1ptotal                   string `json:"vpx1ptotal,omitempty"`
	Vpx1pavailable               string `json:"vpx1pavailable,omitempty"`
	Vpx5stotal                   string `json:"vpx5stotal,omitempty"`
	Vpx5savailable               string `json:"vpx5savailable,omitempty"`
	Vpx5ptotal                   string `json:"vpx5ptotal,omitempty"`
	Vpx5pavailable               string `json:"vpx5pavailable,omitempty"`
	Vpx10stotal                  string `json:"vpx10stotal,omitempty"`
	Vpx10savailable              string `json:"vpx10savailable,omitempty"`
	Vpx10etotal                  string `json:"vpx10etotal,omitempty"`
	Vpx10eavailable              string `json:"vpx10eavailable,omitempty"`
	Vpx10ptotal                  string `json:"vpx10ptotal,omitempty"`
	Vpx10pavailable              string `json:"vpx10pavailable,omitempty"`
	Vpx25stotal                  string `json:"vpx25stotal,omitempty"`
	Vpx25savailable              string `json:"vpx25savailable,omitempty"`
	Vpx25etotal                  string `json:"vpx25etotal,omitempty"`
	Vpx25eavailable              string `json:"vpx25eavailable,omitempty"`
	Vpx25ptotal                  string `json:"vpx25ptotal,omitempty"`
	Vpx25pavailable              string `json:"vpx25pavailable,omitempty"`
	Vpx50stotal                  string `json:"vpx50stotal,omitempty"`
	Vpx50savailable              string `json:"vpx50savailable,omitempty"`
	Vpx50etotal                  string `json:"vpx50etotal,omitempty"`
	Vpx50eavailable              string `json:"vpx50eavailable,omitempty"`
	Vpx50ptotal                  string `json:"vpx50ptotal,omitempty"`
	Vpx50pavailable              string `json:"vpx50pavailable,omitempty"`
	Vpx100stotal                 string `json:"vpx100stotal,omitempty"`
	Vpx100savailable             string `json:"vpx100savailable,omitempty"`
	Vpx100etotal                 string `json:"vpx100etotal,omitempty"`
	Vpx100eavailable             string `json:"vpx100eavailable,omitempty"`
	Vpx100ptotal                 string `json:"vpx100ptotal,omitempty"`
	Vpx100pavailable             string `json:"vpx100pavailable,omitempty"`
	Vpx200stotal                 string `json:"vpx200stotal,omitempty"`
	Vpx200savailable             string `json:"vpx200savailable,omitempty"`
	Vpx200etotal                 string `json:"vpx200etotal,omitempty"`
	Vpx200eavailable             string `json:"vpx200eavailable,omitempty"`
	Vpx200ptotal                 string `json:"vpx200ptotal,omitempty"`
	Vpx200pavailable             string `json:"vpx200pavailable,omitempty"`
	Vpx500stotal                 string `json:"vpx500stotal,omitempty"`
	Vpx500savailable             string `json:"vpx500savailable,omitempty"`
	Vpx500etotal                 string `json:"vpx500etotal,omitempty"`
	Vpx500eavailable             string `json:"vpx500eavailable,omitempty"`
	Vpx500ptotal                 string `json:"vpx500ptotal,omitempty"`
	Vpx500pavailable             string `json:"vpx500pavailable,omitempty"`
	Vpx1000stotal                string `json:"vpx1000stotal,omitempty"`
	Vpx1000savailable            string `json:"vpx1000savailable,omitempty"`
	Vpx1000etotal                string `json:"vpx1000etotal,omitempty"`
	Vpx1000eavailable            string `json:"vpx1000eavailable,omitempty"`
	Vpx1000ptotal                string `json:"vpx1000ptotal,omitempty"`
	Vpx1000pavailable            string `json:"vpx1000pavailable,omitempty"`
	Vpx2000ptotal                string `json:"vpx2000ptotal,omitempty"`
	Vpx2000pavailable            string `json:"vpx2000pavailable,omitempty"`
	Vpx3000stotal                string `json:"vpx3000stotal,omitempty"`
	Vpx3000savailable            string `json:"vpx3000savailable,omitempty"`
	Vpx3000etotal                string `json:"vpx3000etotal,omitempty"`
	Vpx3000eavailable            string `json:"vpx3000eavailable,omitempty"`
	Vpx3000ptotal                string `json:"vpx3000ptotal,omitempty"`
	Vpx3000pavailable            string `json:"vpx3000pavailable,omitempty"`
	Vpx4000ptotal                string `json:"vpx4000ptotal,omitempty"`
	Vpx4000pavailable            string `json:"vpx4000pavailable,omitempty"`
	Vpx5000stotal                string `json:"vpx5000stotal,omitempty"`
	Vpx5000savailable            string `json:"vpx5000savailable,omitempty"`
	Vpx5000etotal                string `json:"vpx5000etotal,omitempty"`
	Vpx5000eavailable            string `json:"vpx5000eavailable,omitempty"`
	Vpx5000ptotal                string `json:"vpx5000ptotal,omitempty"`
	Vpx5000pavailable            string `json:"vpx5000pavailable,omitempty"`
	Vpx8000stotal                string `json:"vpx8000stotal,omitempty"`
	Vpx8000savailable            string `json:"vpx8000savailable,omitempty"`
	Vpx8000etotal                string `json:"vpx8000etotal,omitempty"`
	Vpx8000eavailable            string `json:"vpx8000eavailable,omitempty"`
	Vpx8000ptotal                string `json:"vpx8000ptotal,omitempty"`
	Vpx8000pavailable            string `json:"vpx8000pavailable,omitempty"`
	Vpx10000stotal               string `json:"vpx10000stotal,omitempty"`
	Vpx10000savailable           string `json:"vpx10000savailable,omitempty"`
	Vpx10000etotal               string `json:"vpx10000etotal,omitempty"`
	Vpx10000eavailable           string `json:"vpx10000eavailable,omitempty"`
	Vpx10000ptotal               string `json:"vpx10000ptotal,omitempty"`
	Vpx10000pavailable           string `json:"vpx10000pavailable,omitempty"`
	Vpx15000stotal               string `json:"vpx15000stotal,omitempty"`
	Vpx15000savailable           string `json:"vpx15000savailable,omitempty"`
	Vpx15000etotal               string `json:"vpx15000etotal,omitempty"`
	Vpx15000eavailable           string `json:"vpx15000eavailable,omitempty"`
	Vpx15000ptotal               string `json:"vpx15000ptotal,omitempty"`
	Vpx15000pavailable           string `json:"vpx15000pavailable,omitempty"`
	Vpx25000stotal               string `json:"vpx25000stotal,omitempty"`
	Vpx25000savailable           string `json:"vpx25000savailable,omitempty"`
	Vpx25000etotal               string `json:"vpx25000etotal,omitempty"`
	Vpx25000eavailable           string `json:"vpx25000eavailable,omitempty"`
	Vpx25000ptotal               string `json:"vpx25000ptotal,omitempty"`
	Vpx25000pavailable           string `json:"vpx25000pavailable,omitempty"`
	Vpx40000stotal               string `json:"vpx40000stotal,omitempty"`
	Vpx40000savailable           string `json:"vpx40000savailable,omitempty"`
	Vpx40000etotal               string `json:"vpx40000etotal,omitempty"`
	Vpx40000eavailable           string `json:"vpx40000eavailable,omitempty"`
	Vpx40000ptotal               string `json:"vpx40000ptotal,omitempty"`
	Vpx40000pavailable           string `json:"vpx40000pavailable,omitempty"`
	Vpx100000stotal              string `json:"vpx100000stotal,omitempty"`
	Vpx100000savailable          string `json:"vpx100000savailable,omitempty"`
	Vpx100000etotal              string `json:"vpx100000etotal,omitempty"`
	Vpx100000eavailable          string `json:"vpx100000eavailable,omitempty"`
	Vpx100000ptotal              string `json:"vpx100000ptotal,omitempty"`
	Vpx100000pavailable          string `json:"vpx100000pavailable,omitempty"`
}

* * Configuration for licenseserver resource.

type Nslimitidentifier

type Nslimitidentifier struct {
	/**
	* Name for a rate limit identifier. Must begin with an ASCII letter or underscore (_) character, and must consist only of ASCII alphanumeric or underscore characters. Reserved words must not be used.
	 */
	Limitidentifier string `json:"limitidentifier,omitempty"`
	/**
	* Maximum number of requests that are allowed in the given timeslice when requests (mode is set as REQUEST_RATE) are tracked per timeslice.
		When connections (mode is set as CONNECTION) are tracked, it is the total number of connections that would be let through.
	*/
	Threshold int `json:"threshold,omitempty"`
	/**
	* Time interval, in milliseconds, specified in multiples of 10, during which requests are tracked to check if they cross the threshold. This argument is needed only when the mode is set to REQUEST_RATE.
	 */
	Timeslice int `json:"timeslice,omitempty"`
	/**
	* Defines the type of traffic to be tracked.
		* REQUEST_RATE - Tracks requests/timeslice.
		* CONNECTION - Tracks active transactions.
		Examples
		1. To permit 20 requests in 10 ms and 2 traps in 10 ms:
		add limitidentifier limit_req -mode request_rate -limitType smooth -timeslice 1000 -Threshold 2000 -trapsInTimeSlice 200
		2. To permit 50 requests in 10 ms:
		set  limitidentifier limit_req -mode request_rate -timeslice 1000 -Threshold 5000 -limitType smooth
		3. To permit 1 request in 40 ms:
		set limitidentifier limit_req -mode request_rate -timeslice 2000 -Threshold 50 -limitType smooth
		4. To permit 1 request in 200 ms and 1 trap in 130 ms:
		set limitidentifier limit_req -mode request_rate -timeslice 1000 -Threshold 5 -limitType smooth -trapsInTimeSlice 8
		5. To permit 5000 requests in 1000 ms and 200 traps in 1000 ms:
		set limitidentifier limit_req  -mode request_rate -timeslice 1000 -Threshold 5000 -limitType BURSTY
	*/
	Mode string `json:"mode,omitempty"`
	/**
	* Smooth or bursty request type.
		* SMOOTH - When you want the permitted number of requests in a given interval of time to be spread evenly across the timeslice
		* BURSTY - When you want the permitted number of requests to exhaust the quota anytime within the timeslice.
		This argument is needed only when the mode is set to REQUEST_RATE.
	*/
	Limittype string `json:"limittype,omitempty"`
	/**
	* Name of the rate limit selector. If this argument is NULL, rate limiting will be applied on all traffic received by the virtual server or the Citrix ADC (depending on whether the limit identifier is bound to a virtual server or globally) without any filtering.
	 */
	Selectorname string `json:"selectorname,omitempty"`
	/**
	* Maximum bandwidth permitted, in kbps.
	 */
	Maxbandwidth int `json:"maxbandwidth,omitempty"`
	/**
	* Number of traps to be sent in the timeslice configured. A value of 0 indicates that traps are disabled.
	 */
	Trapsintimeslice int `json:"trapsintimeslice,omitempty"`

	Ngname                   string `json:"ngname,omitempty"`
	Hits                     string `json:"hits,omitempty"`
	Drop                     string `json:"drop,omitempty"`
	Rule                     string `json:"rule,omitempty"`
	Time                     string `json:"time,omitempty"`
	Total                    string `json:"total,omitempty"`
	Trapscomputedintimeslice string `json:"trapscomputedintimeslice,omitempty"`
	Computedtraptimeslice    string `json:"computedtraptimeslice,omitempty"`
	Referencecount           string `json:"referencecount,omitempty"`
}

* * Configuration for limit Indetifier resource.

type Nslimitidentifierbinding

type Nslimitidentifierbinding struct {
	/**
	* Name of the rate limit identifier about which to display information. If a name is not provided, information about all rate limit identifiers is shown.
	 */
	Limitidentifier string `json:"limitidentifier,omitempty"`
}

* * Binding object which returns the resources bound to nslimitidentifier_binding.

type Nslimitidentifierlimitsessionsbinding

type Nslimitidentifierlimitsessionsbinding struct {
	/**
	* Name of the rate limit identifier about which to display information. If a name is not provided, information about all rate limit identifiers is shown.
	 */
	Limitidentifier string `json:"limitidentifier,omitempty"`
}

* * Binding class showing the limitsessions that can be bound to nslimitidentifier.

type Nslimitidentifiernslimitsessionsbinding

type Nslimitidentifiernslimitsessionsbinding struct {
	/**
	* Name of the rate limit identifier about which to display information. If a name is not provided, information about all rate limit identifiers is shown.
	 */
	Limitidentifier string `json:"limitidentifier,omitempty"`
}

* * Binding class showing the nslimitsessions that can be bound to nslimitidentifier.

type Nslimitselector

type Nslimitselector struct {
	Selectorname string   `json:"selectorname,omitempty"`
	Rule         []string `json:"rule,omitempty"`
}

* * Configuration for limit selector resource.

type Nslimitsessions

type Nslimitsessions struct {
	/**
	* Name of the rate limit identifier for which to display the sessions.
	 */
	Limitidentifier string `json:"limitidentifier,omitempty"`
	/**
	* Show the individual hash values.
	 */
	Detail bool `json:"detail,omitempty"`

	Timeout        string `json:"timeout,omitempty"`
	Hits           string `json:"hits,omitempty"`
	Drop           string `json:"drop,omitempty"`
	Number         string `json:"number,omitempty"`
	Name           string `json:"name,omitempty"`
	Unit           string `json:"unit,omitempty"`
	Flags          string `json:"flags,omitempty"`
	Referencecount string `json:"referencecount,omitempty"`
	Maxbandwidth   string `json:"maxbandwidth,omitempty"`
	Selectoripv61  string `json:"selectoripv61,omitempty"`
	Selectoripv62  string `json:"selectoripv62,omitempty"`
	Flag           string `json:"flag,omitempty"`
}

* * Configuration for limit sessions resource.

type Nsmigration

type Nsmigration struct {
	Migrationstatus            string `json:"migrationstatus,omitempty"`
	Migrationstarttime         string `json:"migrationstarttime,omitempty"`
	Migrationendtime           string `json:"migrationendtime,omitempty"`
	Migrationrollbackstarttime string `json:"migrationrollbackstarttime,omitempty"`
}

* * Configuration for Migration operation resource.

type Nsmode

type Nsmode struct {
	/**
	* Mode to be enabled. Multiple modes can be specified by providing a blank space between each mode.
	 */
	Mode []string `json:"mode,omitempty"`

	Fr                  string `json:"fr,omitempty"`
	L2                  string `json:"l2,omitempty"`
	Usip                string `json:"usip,omitempty"`
	Cka                 string `json:"cka,omitempty"`
	Tcpb                string `json:"tcpb,omitempty"`
	Mbf                 string `json:"mbf,omitempty"`
	Edge                string `json:"edge,omitempty"`
	Usnip               string `json:"usnip,omitempty"`
	L3                  string `json:"l3,omitempty"`
	Pmtud               string `json:"pmtud,omitempty"`
	Mediaclassification string `json:"mediaclassification,omitempty"`
	Sradv               string `json:"sradv,omitempty"`
	Dradv               string `json:"dradv,omitempty"`
	Iradv               string `json:"iradv,omitempty"`
	Sradv6              string `json:"sradv6,omitempty"`
	Dradv6              string `json:"dradv6,omitempty"`
	Bridgebpdus         string `json:"bridgebpdus,omitempty"`
	Ulfd                string `json:"ulfd,omitempty"`
}

* * Configuration for ns mode resource.

type Nsparam

type Nsparam struct {
	/**
	* HTTP ports on the web server. This allows the system to perform connection off-load for any client request that has a destination port matching one of these configured ports.
	 */
	Httpport []int `json:"httpport,omitempty"`
	/**
	* Maximum number of connections that will be made from the appliance to the web server(s) attached to it. The value entered here is applied globally to all attached servers.
	 */
	Maxconn int `json:"maxconn"` // Zero is a valid value
	/**
	* Maximum number of requests that the system can pass on a particular connection between the appliance and a server attached to it. Setting this value to 0 allows an unlimited number of requests to be passed. This value is overridden by the maximum number of requests configured on the individual service.
	 */
	Maxreq int `json:"maxreq"` // Zero is a valid value
	/**
	* Enable or disable the insertion of the actual client IP address into the HTTP header request passed from the client to one, some, or all servers attached to the system. The passed address can then be accessed through a minor modification to the server.
		* If the CIP header is specified, it will be used as the client IP header.
		* If the CIP header is not specified, the value that has been set will be used as the client IP header.
	*/
	Cip string `json:"cip,omitempty"`
	/**
	* Text that will be used as the client IP address header.
	 */
	Cipheader string `json:"cipheader,omitempty"`
	/**
	* Version of the cookie inserted by the system.
	 */
	Cookieversion string `json:"cookieversion"` // Zero is a valid value
	/**
	* Enable or disable secure flag for persistence cookie.
	 */
	Securecookie string `json:"securecookie,omitempty"`
	/**
	* Minimum path MTU value that Citrix ADC will process in the ICMP fragmentation needed message. If the ICMP message contains a value less than this value, then this value is used instead.
	 */
	Pmtumin int `json:"pmtumin,omitempty"`
	/**
	* Interval, in minutes, for flushing the PMTU entries.
	 */
	Pmtutimeout int `json:"pmtutimeout,omitempty"`
	/**
	* Minimum and maximum port (port range) that FTP services are allowed to use.
	 */
	Ftpportrange string `json:"ftpportrange,omitempty"`
	/**
	* Port range for cache redirection services.
	 */
	Crportrange string `json:"crportrange,omitempty"`
	/**
	* Time zone for the Citrix ADC. Name of the time zone should be specified as argument.
	 */
	Timezone string `json:"timezone,omitempty"`
	/**
	* Percentage of shared quota to be granted at a time for maxClient.
	 */
	Grantquotamaxclient int `json:"grantquotamaxclient"` // Zero is a valid value
	/**
	* Percentage of maxClient to be given to PEs.
	 */
	Exclusivequotamaxclient int `json:"exclusivequotamaxclient"` // Zero is a valid value
	/**
	* Percentage of shared quota to be granted at a time for spillover.
	 */
	Grantquotaspillover int `json:"grantquotaspillover,omitempty"`
	/**
	* Percentage of maximum limit to be given to PEs.
	 */
	Exclusivequotaspillover int `json:"exclusivequotaspillover"` // Zero is a valid value
	/**
	* Enable/Disable use_proxy_port setting
	 */
	Useproxyport string `json:"useproxyport,omitempty"`
	/**
	* Enables/disables the internal user from logging in to the appliance. Before disabling internal user login, you must have key-based authentication set up on the appliance. The file name for the key pair must be "ns_comm_key".
	 */
	Internaluserlogin string `json:"internaluserlogin,omitempty"`
	/**
	* Allow the FTP server to come from a random source port for active FTP data connections
	 */
	Aftpallowrandomsourceport string `json:"aftpallowrandomsourceport,omitempty"`
	/**
	* The ICA ports on the Web server. This allows the system to perform connection off-load for any
		client request that has a destination port matching one of these configured ports.
	*/
	Icaports []int `json:"icaports,omitempty"`
	/**
	* Enable or disable the insertion of the client TCP/IP header in TCP payload passed from the client to one, some, or all servers attached to the system. The passed address can then be accessed through a minor modification to the server.
	 */
	Tcpcip string `json:"tcpcip,omitempty"`
	/**
	* VLAN on which the subscriber traffic arrives on the appliance.
	 */
	Servicepathingressvlan int `json:"servicepathingressvlan,omitempty"`
	/**
	* The Secure ICA ports on the Web server. This allows the system to perform connection off-load for any
		client request that has a destination port matching one of these configured ports.
	*/
	Secureicaports []int `json:"secureicaports,omitempty"`
	/**
	* This allow the configuration of management HTTP port.
	 */
	Mgmthttpport int `json:"mgmthttpport,omitempty"`
	/**
	* This allows the configuration of management HTTPS port.
	 */
	Mgmthttpsport int `json:"mgmthttpsport,omitempty"`
	/**
	* Disable/Enable v1 or v2 proxy protocol header for client info insertion
	 */
	Proxyprotocol string `json:"proxyprotocol,omitempty"`
	/**
	* Disable/Enable advanace analytics stats
	 */
	Advancedanalyticsstats string `json:"advancedanalyticsstats,omitempty"`
	/**
	* Set the IP Time to Live (TTL) and Hop Limit value for all outgoing packets from Citrix ADC.
	 */
	Ipttl int `json:"ipttl,omitempty"`

	Autoscaleoption string `json:"autoscaleoption,omitempty"`
}

* * Configuration for Citrix ADC parameters resource.

type Nspartition

type Nspartition struct {
	/**
	* Name of the Partition. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.
	 */
	Partitionname string `json:"partitionname,omitempty"`
	/**
	* Maximum bandwidth, in Kbps, that the partition can consume. A zero value indicates the bandwidth is unrestricted on the partition and it can consume up to the system limits.
	 */
	Maxbandwidth int `json:"maxbandwidth"`
	/**
	* Minimum bandwidth, in Kbps, that the partition can consume. A zero value indicates the bandwidth is unrestricted on the partition and it can consume up to the system limits
	 */
	Minbandwidth int `json:"minbandwidth"`
	/**
	* Maximum number of concurrent connections that can be open in the partition. A zero value indicates no limit on number of open connections.
	 */
	Maxconn int `json:"maxconn"`
	/**
	* Maximum memory, in megabytes, allocated to the partition.  A zero value indicates the memory is unlimited on the partition and it can consume up to the system limits.
	 */
	Maxmemlimit int `json:"maxmemlimit"`
	/**
	* Special MAC address for the partition which is used for communication over shared vlans in this partition. If not specified, the MAC address is auto-generated.
	 */
	Partitionmac string `json:"partitionmac,omitempty"`
	/**
	* Switches to new admin partition without prompt for saving configuration. Configuration will not be saved
	 */
	Force bool `json:"force,omitempty"`
	/**
	* Switches to new admin partition without prompt for saving configuration. Configuration will be saved
	 */
	Save bool `json:"save,omitempty"`

	Partitionid   string `json:"partitionid,omitempty"`
	Partitiontype string `json:"partitiontype,omitempty"`
	Pmacinternal  string `json:"pmacinternal,omitempty"`
}

* * Configuration for admin partition resource.

type Nspartitionbinding

type Nspartitionbinding struct {
	/**
	* Name of partition for which to display parameters.<br/>Minimum value =
	 */
	Partitionname string `json:"partitionname,omitempty"`
}

* * Binding object which returns the resources bound to nspartition_binding.

type Nspartitionbridgegroupbinding

type Nspartitionbridgegroupbinding struct {
	/**
	* Identifier of the bridge group that is assigned to this partition.
	 */
	Bridgegroup int `json:"bridgegroup,omitempty"`
	/**
	* Name of the Partition. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.
	 */
	Partitionname string `json:"partitionname,omitempty"`
}

* * Binding class showing the bridgegroup that can be bound to nspartition.

type Nspartitionmac

type Nspartitionmac struct {
	Partitionmac  string `json:"partitionmac,omitempty"`
	Partitionname string `json:"partitionname,omitempty"`
}

* * Configuration for partition MACs resource.

type Nspartitionvlanbinding

type Nspartitionvlanbinding struct {
	/**
	* Identifier of the vlan that is assigned to this partition.
	 */
	Vlan int `json:"vlan,omitempty"`
	/**
	* Name of the Partition. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.
	 */
	Partitionname string `json:"partitionname,omitempty"`
}

* * Binding class showing the vlan that can be bound to nspartition.

type Nspartitionvxlanbinding

type Nspartitionvxlanbinding struct {
	/**
	* Identifier of the vxlan that is assigned to this partition.
	 */
	Vxlan int `json:"vxlan,omitempty"`
	/**
	* Name of the Partition. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters.
	 */
	Partitionname string `json:"partitionname,omitempty"`
}

* * Binding class showing the vxlan that can be bound to nspartition.

type Nspbr

type Nspbr struct {
	/**
	* Name for the PBR. Must begin with an ASCII alphabetic or underscore \(_\) character, and must contain only ASCII alphanumeric, underscore, hash \(\#\), period \(.\), space, colon \(:\), at \(@\), equals \(=\), and hyphen \(-\) characters. Cannot be changed after the PBR is created.
	 */
	Name string `json:"name,omitempty"`
	/**
	* Action to perform on the outgoing IPv4 packets that match the PBR.
		Available settings function as follows:
		* ALLOW - The Citrix ADC sends the packet to the designated next-hop router.
		* DENY - The Citrix ADC applies the routing table for normal destination-based routing.
	*/
	Action string `json:"action,omitempty"`
	/**
	* Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.
	 */
	Td int `json:"td,omitempty"`
	/**
	* IP address or range of IP addresses to match against the source IP address of an outgoing IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 10.102.29.30-10.102.29.189.
	 */
	Srcip bool `json:"srcip,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Srcipop string `json:"srcipop,omitempty"`
	/**
	* IP address or range of IP addresses to match against the source IP address of an outgoing IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 10.102.29.30-10.102.29.189.
	 */
	Srcipval string `json:"srcipval,omitempty"`
	/**
	* Port number or range of port numbers to match against the source port number of an outgoing IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Srcport bool `json:"srcport,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Srcportop string `json:"srcportop,omitempty"`
	/**
	* Port number or range of port numbers to match against the source port number of an outgoing IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Srcportval string `json:"srcportval,omitempty"`
	/**
	* IP address or range of IP addresses to match against the destination IP address of an outgoing IPv4 packet.  In the command line interface, separate the range with a hyphen. For example: 10.102.29.30-10.102.29.189.
	 */
	Destip bool `json:"destip,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Destipop string `json:"destipop,omitempty"`
	/**
	* IP address or range of IP addresses to match against the destination IP address of an outgoing IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 10.102.29.30-10.102.29.189.
	 */
	Destipval string `json:"destipval,omitempty"`
	/**
	* Port number or range of port numbers to match against the destination port number of an outgoing IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Destport bool `json:"destport,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Destportop string `json:"destportop,omitempty"`
	/**
	* Port number or range of port numbers to match against the destination port number of an outgoing IPv4 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Destportval string `json:"destportval,omitempty"`
	/**
	* IP address of the next hop router or the name of the link load balancing virtual server to which to send matching packets if action is set to ALLOW.
		If you specify a link load balancing (LLB) virtual server, which can provide a backup if a next hop link fails, first make sure that the next hops bound to the LLB virtual server are actually next hops that are directly connected to the Citrix ADC. Otherwise, the Citrix ADC throws an error when you attempt to create the PBR. The next hop can be null to represent null routes
	*/
	Nexthop bool `json:"nexthop,omitempty"`
	/**
	* The Next Hop IP address or gateway name.
	 */
	Nexthopval string `json:"nexthopval,omitempty"`
	/**
	* The Tunnel name.
	 */
	Iptunnel bool `json:"iptunnel,omitempty"`
	/**
	* The iptunnel name where packets need to be forwarded upon.
	 */
	Iptunnelname string `json:"iptunnelname,omitempty"`
	/**
	* The vlan to vxlan mapping to be applied for incoming packets over this pbr tunnel
	 */
	Vxlanvlanmap string `json:"vxlanvlanmap,omitempty"`
	/**
	* MAC address to match against the source MAC address of an outgoing IPv4 packet.
	 */
	Srcmac string `json:"srcmac,omitempty"`
	/**
	*  Used to define range of Source MAC address. It takes string of 0 and 1, 0s are for exact match and 1s for wildcard. For matching first 3 bytes of MAC address, srcMacMask value "000000111111".
	 */
	Srcmacmask string `json:"srcmacmask,omitempty"`
	/**
	* Protocol, identified by protocol name, to match against the protocol of an outgoing IPv4 packet.
	 */
	Protocol string `json:"protocol,omitempty"`
	/**
	* Protocol, identified by protocol number, to match against the protocol of an outgoing IPv4 packet.
	 */
	Protocolnumber int `json:"protocolnumber,omitempty"`
	/**
	* ID of the VLAN. The Citrix ADC compares the PBR only to the outgoing packets on the specified VLAN. If you do not specify any interface ID, the appliance compares the PBR to the outgoing packets on all VLANs.
	 */
	Vlan int `json:"vlan,omitempty"`
	/**
	* ID of the VXLAN. The Citrix ADC compares the PBR only to the outgoing packets on the specified VXLAN. If you do not specify any interface ID, the appliance compares the PBR to the outgoing packets on all VXLANs.
	 */
	Vxlan int `json:"vxlan,omitempty"`
	/**
	* ID of an interface. The Citrix ADC compares the PBR only to the outgoing packets on the specified interface. If you do not specify any value, the appliance compares the PBR to the outgoing packets on all interfaces.
	 */
	Interface string `json:"Interface,omitempty"`
	/**
	* Priority of the PBR, which determines the order in which it is evaluated relative to the other PBRs. If you do not specify priorities while creating PBRs, the PBRs are evaluated in the order in which they are created.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Monitor the route specified byte Next Hop parameter. This parameter is not applicable if you specify a link load balancing (LLB) virtual server name with the Next Hop parameter.
	 */
	Msr string `json:"msr,omitempty"`
	/**
	* The name of the monitor.(Can be only of type ping or ARP )
	 */
	Monitor string `json:"monitor,omitempty"`
	/**
	* Enable or disable the PBR. After you apply the PBRs, the Citrix ADC compares outgoing packets to the enabled PBRs.
	 */
	State string `json:"state,omitempty"`
	/**
	* The owner node group in a Cluster for this pbr rule. If ownernode is not specified then the pbr rule is treated as Striped pbr rule.
	 */
	Ownergroup string `json:"ownergroup,omitempty"`
	/**
	* To get a detailed view.
	 */
	Detail bool `json:"detail,omitempty"`

	Hits              string `json:"hits,omitempty"`
	Kernelstate       string `json:"kernelstate,omitempty"`
	Curstate          string `json:"curstate,omitempty"`
	Totalprobes       string `json:"totalprobes,omitempty"`
	Totalfailedprobes string `json:"totalfailedprobes,omitempty"`
	Failedprobes      string `json:"failedprobes,omitempty"`
	Monstatcode       string `json:"monstatcode,omitempty"`
	Monstatparam1     string `json:"monstatparam1,omitempty"`
	Monstatparam2     string `json:"monstatparam2,omitempty"`
	Monstatparam3     string `json:"monstatparam3,omitempty"`
	Data              string `json:"data,omitempty"`
}

* * Configuration for Policy Based Routing(PBR) entry resource.

type Nspbr6

type Nspbr6 struct {
	/**
	* Name for the PBR6. Must begin with an ASCII alphabetic or underscore \(_\) character, and must contain only ASCII alphanumeric, underscore, hash \(\#\), period \(.\), space, colon \(:\), at \(@\), equals \(=\), and hyphen \(-\) characters. Cannot be changed after the PBR6 is created.
	 */
	Name string `json:"name,omitempty"`
	/**
	* Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.
	 */
	Td int `json:"td,omitempty"`
	/**
	* Action to perform on the outgoing IPv6 packets that match the PBR6.
		Available settings function as follows:
		* ALLOW - The Citrix ADC sends the packet to the designated next-hop router.
		* DENY - The Citrix ADC applies the routing table for normal destination-based routing.
	*/
	Action string `json:"action,omitempty"`
	/**
	* IP address or range of IP addresses to match against the source IP address of an outgoing IPv6 packet. In the command line interface, separate the range with a hyphen.
	 */
	Srcipv6 bool `json:"srcipv6,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Srcipop string `json:"srcipop,omitempty"`
	/**
	* IP address or range of IP addresses to match against the source IP address of an outgoing IPv6 packet. In the command line interface, separate the range with a hyphen.
	 */
	Srcipv6val string `json:"srcipv6val,omitempty"`
	/**
	* Port number or range of port numbers to match against the source port number of an outgoing IPv6 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
	 */
	Srcport bool `json:"srcport,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Srcportop string `json:"srcportop,omitempty"`
	/**
	* Source port (range).
	 */
	Srcportval string `json:"srcportval,omitempty"`
	/**
	* IP address or range of IP addresses to match against the destination IP address of an outgoing IPv6 packet.  In the command line interface, separate the range with a hyphen.
	 */
	Destipv6 bool `json:"destipv6,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Destipop string `json:"destipop,omitempty"`
	/**
	* IP address or range of IP addresses to match against the destination IP address of an outgoing IPv6 packet.  In the command line interface, separate the range with a hyphen.
	 */
	Destipv6val string `json:"destipv6val,omitempty"`
	/**
	* Port number or range of port numbers to match against the destination port number of an outgoing IPv6 packet. In the command line interface, separate the range with a hyphen. For example: 40-90.
		Note: The destination port can be specified only for TCP and UDP protocols.
	*/
	Destport bool `json:"destport,omitempty"`
	/**
	* Either the equals (=) or does not equal (!=) logical operator.
	 */
	Destportop string `json:"destportop,omitempty"`
	/**
	* Destination port (range).
	 */
	Destportval string `json:"destportval,omitempty"`
	/**
	* MAC address to match against the source MAC address of an outgoing IPv6 packet.
	 */
	Srcmac string `json:"srcmac,omitempty"`
	/**
	*  Used to define range of Source MAC address. It takes string of 0 and 1, 0s are for exact match and 1s for wildcard. For matching first 3 bytes of MAC address, srcMacMask value "000000111111".
	 */
	Srcmacmask string `json:"srcmacmask,omitempty"`
	/**
	* Protocol, identified by protocol name, to match against the protocol of an outgoing IPv6 packet.
	 */
	Protocol string `json:"protocol,omitempty"`
	/**
	* Protocol, identified by protocol number, to match against the protocol of an outgoing IPv6 packet.
	 */
	Protocolnumber int `json:"protocolnumber,omitempty"`
	/**
	* ID of the VLAN. The Citrix ADC compares the PBR6 only to the outgoing packets on the specified VLAN. If you do not specify an interface ID, the appliance compares the PBR6 to the outgoing packets on all VLANs.
	 */
	Vlan int `json:"vlan,omitempty"`
	/**
	* ID of the VXLAN. The Citrix ADC compares the PBR6 only to the outgoing packets on the specified VXLAN. If you do not specify an interface ID, the appliance compares the PBR6 to the outgoing packets on all VXLANs.
	 */
	Vxlan int `json:"vxlan,omitempty"`
	/**
	* ID of an interface. The Citrix ADC compares the PBR6 only to the outgoing packets on the specified interface. If you do not specify a value, the appliance compares the PBR6 to the outgoing packets on all interfaces.
	 */
	Interface string `json:"Interface,omitempty"`
	/**
	* Priority of the PBR6, which determines the order in which it is evaluated relative to the other PBR6s. If you do not specify priorities while creating PBR6s, the PBR6s are evaluated in the order in which they are created.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Enable or disable the PBR6. After you apply the PBR6s, the Citrix ADC compares outgoing packets to the enabled PBR6s.
	 */
	State string `json:"state,omitempty"`
	/**
	* Monitor the route specified by the Next Hop parameter.
	 */
	Msr string `json:"msr,omitempty"`
	/**
	* The name of the monitor.(Can be only of type ping or ARP )
	 */
	Monitor string `json:"monitor,omitempty"`
	/**
	* IP address of the next hop router to which to send matching packets if action is set to ALLOW. This next hop should be directly reachable from the appliance.
	 */
	Nexthop bool `json:"nexthop,omitempty"`
	/**
	* The Next Hop IPv6 address.
	 */
	Nexthopval string `json:"nexthopval,omitempty"`
	/**
	* The iptunnel name where packets need to be forwarded upon.
	 */
	Iptunnel string `json:"iptunnel,omitempty"`
	/**
	* The vlan to vxlan mapping to be applied for incoming packets over this pbr tunnel.
	 */
	Vxlanvlanmap string `json:"vxlanvlanmap,omitempty"`
	/**
	* VLAN number to be used for link local nexthop .
	 */
	Nexthopvlan int `json:"nexthopvlan,omitempty"`
	/**
	* The owner node group in a Cluster for this pbr rule. If owner node group is not specified then the pbr rule is treated as Striped pbr rule.
	 */
	Ownergroup string `json:"ownergroup,omitempty"`
	/**
	* To get a detailed view.
	 */
	Detail bool `json:"detail,omitempty"`

	Kernelstate       string `json:"kernelstate,omitempty"`
	Hits              string `json:"hits,omitempty"`
	Curstate          string `json:"curstate,omitempty"`
	Totalprobes       string `json:"totalprobes,omitempty"`
	Totalfailedprobes string `json:"totalfailedprobes,omitempty"`
	Failedprobes      string `json:"failedprobes,omitempty"`
	Monstatcode       string `json:"monstatcode,omitempty"`
	Monstatparam1     string `json:"monstatparam1,omitempty"`
	Monstatparam2     string `json:"monstatparam2,omitempty"`
	Monstatparam3     string `json:"monstatparam3,omitempty"`
	Data              string `json:"data,omitempty"`
}

* * Configuration for PBR6 entry resource.

type Nspbrs

type Nspbrs struct {
}

* * Configuration for Policy based routing resource.

type Nsratecontrol

type Nsratecontrol struct {
	/**
	* Number of SYNs permitted per 10 milliseconds.
	 */
	Tcpthreshold int `json:"tcpthreshold"` // Zero is acceptable value
	/**
	* Number of UDP packets permitted per 10 milliseconds.
	 */
	Udpthreshold int `json:"udpthreshold"` // Zero is acceptable value
	/**
	* Number of ICMP packets permitted per 10 milliseconds.
	 */
	Icmpthreshold int `json:"icmpthreshold"` // Zero is acceptable value
	/**
	* The number of TCP RST packets permitted per 10 milli second. zero means rate control is disabled and 0xffffffff means every thing is rate controlled
	 */
	Tcprstthreshold int `json:"tcprstthreshold"` // Zero is acceptable value

}

* * Configuration for rate control resource.

type Nsrollbackcmd

type Nsrollbackcmd struct {
	/**
	* File that contains the commands for which the rollback commands must be generated. Specify the full path of the file name.
	 */
	Filename string `json:"filename,omitempty"`
	/**
	* Format in which the rollback commands must be generated.
	 */
	Outtype string `json:"outtype,omitempty"`
}

* * Configuration for Generate rollback commands resource.

type Nsrpcnode

type Nsrpcnode struct {
	/**
	* IP address of the node. This has to be in the same subnet as the NSIP address.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* Password to be used in authentication with the peer system node.
	 */
	Password string `json:"password,omitempty"`
	/**
	* Source IP address to be used to communicate with the peer system node. The default value is 0, which means that the appliance uses the NSIP address as the source IP address.
	 */
	Srcip string `json:"srcip,omitempty"`
	/**
	* State of the channel when talking to the node.
	 */
	Secure string `json:"secure,omitempty"`
	/**
	* validate the server certificate for secure SSL connections
	 */
	Validatecert string `json:"validatecert,omitempty"`
}

* * Configuration for rpc node resource.

type Nsrunningconfig

type Nsrunningconfig struct {
	/**
	* Include default values of parameters that have not been explicitly configured. If this argument is disabled, such parameters are not included.
	 */
	Withdefaults bool `json:"withdefaults,omitempty"`

	Response string `json:"response,omitempty"`
}

* * Configuration for running configuration resource.

type Nssavedconfig

type Nssavedconfig struct {
	Textblob string `json:"textblob,omitempty"`
}

* * Configuration for last saved configuration resource.

type Nsservicefunction

type Nsservicefunction struct {
	/**
	* Name of the service function to be created. Leading character must be a number or letter. Other characters allowed, after the first character, are @ _ - . (period) : (colon) # and space ( ).
	 */
	Servicefunctionname string `json:"servicefunctionname,omitempty"`
	/**
	* VLAN ID on which the traffic from service function reaches Citrix ADC.
	 */
	Ingressvlan int `json:"ingressvlan,omitempty"`
}

* * Configuration for service Function resource.

type Nsservicepath

type Nsservicepath struct {
	/**
	* Name for the Service path. Must begin with an ASCII alphanumeric or underscore (_) character, and must
		contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-)
		characters.
	*/
	Servicepathname string `json:"servicepathname,omitempty"`
}

* * Configuration for service Chain resource.

type Nsservicepathbinding

type Nsservicepathbinding struct {
	/**
	* Name for the Service path. Must begin with an ASCII alphanumeric or underscore (_) character, and must
		contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-)
		characters.<br/>Minimum value =
	*/
	Servicepathname string `json:"servicepathname,omitempty"`
}

* * Binding object which returns the resources bound to nsservicepath_binding.

type Nsservicepathnsservicefunctionbinding

type Nsservicepathnsservicefunctionbinding struct {
	/**
	* List of service functions constituting the chain.
	 */
	Servicefunction string `json:"servicefunction,omitempty"`
	/**
	* The serviceindex of each servicefunction in path.
	 */
	Index int `json:"index,omitempty"`
	/**
	* Name for the Service path. Must begin with an ASCII alphanumeric or underscore (_) character, and must
		contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-)
		characters.
	*/
	Servicepathname string `json:"servicepathname,omitempty"`
}

* * Binding class showing the nsservicefunction that can be bound to nsservicepath.

type Nsservicepathservicefunctionbinding

type Nsservicepathservicefunctionbinding struct {
	/**
	* List of service functions constituting the chain.
	 */
	Servicefunction string `json:"servicefunction,omitempty"`
	/**
	* The serviceindex of each servicefunction in path.
	 */
	Index uint32 `json:"index,omitempty"`
	/**
	* Name for the Service path. Must begin with an ASCII alphanumeric or underscore (_) character, and must
		contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-)
		characters.
	*/
	Servicepathname string `json:"servicepathname,omitempty"`
}

* * Binding class showing the servicefunction that can be bound to nsservicepath.

type Nssimpleacl

type Nssimpleacl struct {
	/**
	* Name for the simple ACL rule. Must begin with an ASCII alphabetic or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. Cannot be changed after the simple ACL rule is created.
	 */
	Aclname string `json:"aclname,omitempty"`
	/**
	* Drop incoming IPv4 packets that match the simple ACL rule.
	 */
	Aclaction string `json:"aclaction,omitempty"`
	/**
	* Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.
	 */
	Td int `json:"td,omitempty"`
	/**
	* IP address to match against the source IP address of an incoming IPv4 packet.
	 */
	Srcip string `json:"srcip,omitempty"`
	/**
	* Port number to match against the destination port number of an incoming IPv4 packet.
		DestPort is mandatory while setting Protocol. Omitting the port number and protocol creates an all-ports  and all protocols simple ACL rule, which matches any port and any protocol. In that case, you cannot create another simple ACL rule specifying a specific port and the same source IPv4 address.
	*/
	Destport int `json:"destport,omitempty"`
	/**
	* Protocol to match against the protocol of an incoming IPv4 packet. You must set this parameter if you have set the Destination Port parameter.
	 */
	Protocol string `json:"protocol,omitempty"`
	/**
	* Number of seconds, in multiples of four, after which the simple ACL rule expires. If you do not want the simple ACL rule to expire, do not specify a TTL value.
	 */
	Ttl         int  `json:"ttl,omitempty"`
	Estsessions bool `json:"estsessions,omitempty"`

	Hits string `json:"hits,omitempty"`
}

* * Configuration for simple ACL resource.

type Nssimpleacl6

type Nssimpleacl6 struct {
	/**
	* Name for the simple ACL6 rule. Must begin with an ASCII alphabetic or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. Cannot be changed after the simple ACL6 rule is created.
	 */
	Aclname string `json:"aclname,omitempty"`
	/**
	* Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.
	 */
	Td int `json:"td,omitempty"`
	/**
	* Drop incoming IPv6 packets that match the simple ACL6 rule.
	 */
	Aclaction string `json:"aclaction,omitempty"`
	/**
	* IP address to match against the source IP address of an incoming IPv6 packet.
	 */
	Srcipv6 string `json:"srcipv6,omitempty"`
	/**
	* Port number to match against the destination port number of an incoming IPv6 packet.
		DestPort is mandatory while setting Protocol. Omitting the port number and protocol creates an all-ports  and all protocol simple ACL6 rule, which matches any port and any protocol. In that case, you cannot create another simple ACL6 rule specifying a specific port and the same source IPv6 address.
	*/
	Destport int `json:"destport,omitempty"`
	/**
	* Protocol to match against the protocol of an incoming IPv6 packet. You must set this parameter if you set the Destination Port parameter.
	 */
	Protocol string `json:"protocol,omitempty"`
	/**
	* Number of seconds, in multiples of four, after which the simple ACL6 rule expires. If you do not want the simple ACL6 rule to expire, do not specify a TTL value.
	 */
	Ttl         int  `json:"ttl,omitempty"`
	Estsessions bool `json:"estsessions,omitempty"`

	Hits string `json:"hits,omitempty"`
}

* * Configuration for simple ACL6 resource.

type Nssourceroutecachetable

type Nssourceroutecachetable struct {
	Sourceip  string `json:"sourceip,omitempty"`
	Sourcemac string `json:"sourcemac,omitempty"`
	Vlan      string `json:"vlan,omitempty"`
	Interface string `json:"Interface,omitempty"`
}

* * Configuration for Source IP Mac Cache Table. resource.

type Nsspparams

type Nsspparams struct {
	/**
	* Maximum number of server connections that can be opened before surge protection is activated.
	 */
	Basethreshold int `json:"basethreshold,omitempty"`
	/**
	* Rate at which the system opens connections to the server.
	 */
	Throttle string `json:"throttle,omitempty"`

	Table0  string `json:"table0,omitempty"`
	Builtin string `json:"builtin,omitempty"`
	Feature string `json:"feature,omitempty"`
}

* * Configuration for Surge Protection parameter resource.

type Nsstats

type Nsstats struct {
	/**
	* The level of stats to be cleared. 'global' option will clear global counters only, 'all' option will clear all device counters also along with global counters. For both the cases only 'ever incrementing counters' i.e. total counters will be cleared.
	 */
	Cleanuplevel string `json:"cleanuplevel,omitempty"`
}

* * Configuration for stats resource.

type Nssurgeq

type Nssurgeq struct {
	/**
	* Name of a virtual server, service or service group for which the SurgeQ must be flushed.
	 */
	Name string `json:"name,omitempty"`
	/**
	* Name of a service group member. This argument is needed when you want to flush the SurgeQ of a service group.
	 */
	Servername string `json:"servername,omitempty"`
	/**
	* port on which server is bound to the entity(Servicegroup).
	 */
	Port int `json:"port,omitempty"`
}

* * Configuration for surge queue resource.

type Nstcpbufparam

type Nstcpbufparam struct {
	/**
	* TCP buffering size per connection, in kilobytes.
	 */
	Size int `json:"size,omitempty"`
	/**
	* Maximum memory, in megabytes, that can be used for buffering.
	 */
	Memlimit int `json:"memlimit"` // Zero is a valid value

	Builtin string `json:"builtin,omitempty"`
	Feature string `json:"feature,omitempty"`
}

* * Configuration for tcp buffer parameter resource.

type Nstcpparam

type Nstcpparam struct {
	/**
	* Enable or disable window scaling.
	 */
	Ws string `json:"ws,omitempty"`
	/**
	* Factor used to calculate the new window size.
		This argument is needed only when the window scaling is enabled.
	*/
	Wsval int `json:"wsval"` // Zero is a valid value
	/**
	* Enable or disable Selective ACKnowledgement (SACK).
	 */
	Sack string `json:"sack,omitempty"`
	/**
	* Enable or disable maximum segment size (MSS) learning for virtual servers.
	 */
	Learnvsvrmss string `json:"learnvsvrmss,omitempty"`
	/**
	* Maximum number of TCP segments allowed in a burst.
	 */
	Maxburst int `json:"maxburst,omitempty"`
	/**
	* Initial maximum upper limit on the number of TCP packets that can be outstanding on the TCP link to the server.
	 */
	Initialcwnd int `json:"initialcwnd,omitempty"`
	/**
	* TCP Receive buffer size
	 */
	Recvbuffsize int `json:"recvbuffsize,omitempty"`
	/**
	* Timeout for TCP delayed ACK, in milliseconds.
	 */
	Delayedack int `json:"delayedack,omitempty"`
	/**
	* Flag to switch on RST on down services.
	 */
	Downstaterst string `json:"downstaterst,omitempty"`
	/**
	* Enable or disable the Nagle algorithm on TCP connections.
	 */
	Nagle string `json:"nagle,omitempty"`
	/**
	* Limit the number of persist (zero window) probes.
	 */
	Limitedpersist string `json:"limitedpersist,omitempty"`
	/**
	* Maximum size of out-of-order packets queue. A value of 0 means no limit.
	 */
	Oooqsize int `json:"oooqsize"` // Zero is a valid value
	/**
	* Send immediate positive acknowledgement (ACK) on receipt of TCP packets with PUSH flag.
	 */
	Ackonpush string `json:"ackonpush,omitempty"`
	/**
	* Maximum number of TCP packets allowed per maximum segment size (MSS).
	 */
	Maxpktpermss int `json:"maxpktpermss"` // Zero is a valid value
	/**
	* Maximum limit on the number of packets that should be retransmitted on receiving a partial ACK.
	 */
	Pktperretx int `json:"pktperretx,omitempty"`
	/**
	* Minimum retransmission timeout, in milliseconds, specified in 10-millisecond increments (value must yield a whole number if divided by 10).
	 */
	Minrto int `json:"minrto,omitempty"`
	/**
	* Multiplier that determines the rate at which slow start increases the size of the TCP transmission window after each acknowledgement of successful transmission.
	 */
	Slowstartincr int `json:"slowstartincr,omitempty"`
	/**
	* Maximum number of probes that Citrix ADC can send out in 10 milliseconds, to dynamically learn a service. Citrix ADC probes for the existence of the origin in case of wildcard virtual server or services.
	 */
	Maxdynserverprobes int `json:"maxdynserverprobes,omitempty"`
	/**
	* Maximum threshold. After crossing this threshold number of outstanding probes for origin, the Citrix ADC reduces the number of connection retries for probe connections.
	 */
	Synholdfastgiveup int `json:"synholdfastgiveup,omitempty"`
	/**
	* Limit the number of client connections (SYN) waiting for status of single probe. Any new SYN packets will be dropped.
	 */
	Maxsynholdperprobe int `json:"maxsynholdperprobe,omitempty"`
	/**
	* Limit the number of client connections (SYN) waiting for status of probe system wide. Any new SYN packets will be dropped.
	 */
	Maxsynhold int `json:"maxsynhold,omitempty"`
	/**
	* Duration, in seconds, to sample the Maximum Segment Size (MSS) of the services. The Citrix ADC determines the best MSS to set for the virtual server based on this sampling. The argument to enable maximum segment size (MSS) for virtual servers must be enabled.
	 */
	Msslearninterval int `json:"msslearninterval,omitempty"`
	/**
	* Frequency, in seconds, at which the virtual servers learn the Maximum segment size (MSS) from the services. The argument to enable maximum segment size (MSS) for virtual servers must be enabled.
	 */
	Msslearndelay int `json:"msslearndelay,omitempty"`
	/**
	* Maximum number of connections to hold in the TCP TIME_WAIT state on a packet engine. New connections entering TIME_WAIT state are proactively cleaned up.
	 */
	Maxtimewaitconn int `json:"maxtimewaitconn,omitempty"`
	/**
	* Update last activity for KA probes
	 */
	Kaprobeupdatelastactivity string `json:"kaprobeupdatelastactivity,omitempty"`
	/**
	* When 'syncookie' is disabled in the TCP profile that is bound to the virtual server or service, and the number of TCP SYN+ACK retransmission by Citrix ADC for that virtual server or service crosses this threshold, the Citrix ADC responds by using the TCP SYN-Cookie mechanism.
	 */
	Maxsynackretx int `json:"maxsynackretx,omitempty"`
	/**
	* Detect TCP SYN packet flood and send an SNMP trap.
	 */
	Synattackdetection string `json:"synattackdetection,omitempty"`
	/**
	* Flush an existing connection if no memory can be obtained for new connection.
		HALF_CLOSED_AND_IDLE: Flush a connection that is closed by us but not by peer, or failing that, a connection that is past configured idle time.  New connection fails if no such connection can be found.
		FIFO: If no half-closed or idle connection can be found, flush the oldest non-management connection, even if it is active.  New connection fails if the oldest few connections are management connections.
		Note: If you enable this setting, you should also consider lowering the zombie timeout and half-close timeout, while setting the Citrix ADC timeout.
		See Also: connFlushThres argument below.
	*/
	Connflushifnomem string `json:"connflushifnomem,omitempty"`
	/**
	* Flush an existing connection (as configured through -connFlushIfNoMem FIFO) if the system has more than specified number of connections, and a new connection is to be established.  Note: This value may be rounded down to be a whole multiple of the number of packet engines running.
	 */
	Connflushthres int `json:"connflushthres,omitempty"`
	/**
	* Accept DATA_FIN/FAST_CLOSE on passive subflow
	 */
	Mptcpconcloseonpassivesf string `json:"mptcpconcloseonpassivesf,omitempty"`
	/**
	* Use MPTCP DSS checksum
	 */
	Mptcpchecksum string `json:"mptcpchecksum,omitempty"`
	/**
	* The timeout value in seconds for idle mptcp subflows. If this timeout is not set, idle subflows are cleared after cltTimeout of vserver
	 */
	Mptcpsftimeout int `json:"mptcpsftimeout"` // Zero is a valid value
	/**
	* The minimum idle time value in seconds for idle mptcp subflows after which the sublow is replaced by new incoming subflow if maximum subflow limit is reached. The priority for replacement is given to those subflow without any transaction
	 */
	Mptcpsfreplacetimeout int `json:"mptcpsfreplacetimeout"` // Zero is a valid value
	/**
	* Maximum number of subflow connections supported in established state per mptcp connection.
	 */
	Mptcpmaxsf int `json:"mptcpmaxsf,omitempty"`
	/**
	* Maximum number of subflow connections supported in pending join state per mptcp connection.
	 */
	Mptcpmaxpendingsf int `json:"mptcpmaxpendingsf"` // Zero is a valid value
	/**
	* Maximum system level pending join connections allowed.
	 */
	Mptcppendingjointhreshold int `json:"mptcppendingjointhreshold"` // Zero is a valid value
	/**
	* Number of RTO's at subflow level, after which MPCTP should start using other subflow.
	 */
	Mptcprtostoswitchsf int `json:"mptcprtostoswitchsf,omitempty"`
	/**
	* When enabled, if NS receives a DSS on a backup subflow, NS will start using that subflow to send data. And if disabled, NS will continue to transmit on current chosen subflow. In case there is some error on a subflow (like RTO's/RST etc.) then NS can choose a backup subflow irrespective of this tunable.
	 */
	Mptcpusebackupondss string `json:"mptcpusebackupondss,omitempty"`
	/**
	* Number of RTO's after which a connection should be freed.
	 */
	Tcpmaxretries int `json:"tcpmaxretries,omitempty"`
	/**
	* Allow subflows to close immediately on FIN before the DATA_FIN exchange is completed at mptcp level.
	 */
	Mptcpimmediatesfcloseonfin string `json:"mptcpimmediatesfcloseonfin,omitempty"`
	/**
	* Allow to send DATA FIN or FAST CLOSE on mptcp connection while sending FIN or RST on the last subflow.
	 */
	Mptcpclosemptcpsessiononlastsfclose string `json:"mptcpclosemptcpsessiononlastsfclose,omitempty"`
	/**
	* Allow MPTCP subflows to send TCP RST Reason (MP_TCPRST) Option while sending TCP RST.
	 */
	Mptcpsendsfresetoption string `json:"mptcpsendsfresetoption,omitempty"`
	/**
	* Allow to select option ACK or RESET to force the closure of an MPTCP connection abruptly.
	 */
	Mptcpfastcloseoption string `json:"mptcpfastcloseoption,omitempty"`
	/**
	* Timeout in seconds after which a new TFO Key is computed for generating TFO Cookie. If zero, the same key is used always. If timeout is less than 120seconds, NS defaults to 120seconds timeout.
	 */
	Tcpfastopencookietimeout int `json:"tcpfastopencookietimeout"` // Zero is a valid value
	/**
	* Timeout for the server to function in syncookie mode after the synattack. This is valid if TCP syncookie is disabled on the profile and server acts in non syncookie mode by default.
	 */
	Autosyncookietimeout int `json:"autosyncookietimeout,omitempty"`
	/**
	* The amount of time in seconds, after which a TCP connnection in the TCP TIME-WAIT state is flushed.
	 */
	Tcpfintimeout int `json:"tcpfintimeout,omitempty"`
	/**
	* If enabled, non-negotiated TCP options are removed from the received packet while proxying it. By default, non-negotiated TCP options would be replaced by NOPs in the proxied packets. This option is not applicable for Citrix ADC generated packets.
	 */
	Compacttcpoptionnoop string `json:"compacttcpoptionnoop,omitempty"`

	Builtin string `json:"builtin,omitempty"`
	Feature string `json:"feature,omitempty"`
}

* * Configuration for tcp parameters resource.

type Nstcpprofile

type Nstcpprofile struct {
	/**
	* Name for a TCP 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 TCP 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 tcp profile" or 'my tcp profile'\).
	*/
	Name string `json:"name,omitempty"`
	/**
	* Enable or disable window scaling.
	 */
	Ws string `json:"ws,omitempty"`
	/**
	* Enable or disable Selective ACKnowledgement (SACK).
	 */
	Sack string `json:"sack,omitempty"`
	/**
	* Factor used to calculate the new window size.
		This argument is needed only when window scaling is enabled.
	*/
	Wsval int `json:"wsval,omitempty"`
	/**
	* Enable or disable the Nagle algorithm on TCP connections.
	 */
	Nagle string `json:"nagle,omitempty"`
	/**
	* Send immediate positive acknowledgement (ACK) on receipt of TCP packets with PUSH flag.
	 */
	Ackonpush string `json:"ackonpush,omitempty"`
	/**
	* Maximum number of octets to allow in a TCP data segment.
	 */
	Mss int `json:"mss,omitempty"`
	/**
	* Maximum number of TCP segments allowed in a burst.
	 */
	Maxburst int `json:"maxburst,omitempty"`
	/**
	* Initial maximum upper limit on the number of TCP packets that can be outstanding on the TCP link to the server.
	 */
	Initialcwnd int `json:"initialcwnd,omitempty"`
	/**
	* Timeout for TCP delayed ACK, in milliseconds.
	 */
	Delayedack int `json:"delayedack,omitempty"`
	/**
	* Maximum size of out-of-order packets queue. A value of 0 means no limit.
	 */
	Oooqsize int `json:"oooqsize,omitempty"`
	/**
	* Maximum number of TCP packets allowed per maximum segment size (MSS).
	 */
	Maxpktpermss int `json:"maxpktpermss,omitempty"`
	/**
	* Maximum limit on the number of packets that should be retransmitted on receiving a partial ACK.
	 */
	Pktperretx int `json:"pktperretx,omitempty"`
	/**
	* Minimum retransmission timeout, in milliseconds, specified in 10-millisecond increments (value must yield a whole number if divided by  10).
	 */
	Minrto int `json:"minrto,omitempty"`
	/**
	* Multiplier that determines the rate at which slow start increases the size of the TCP transmission window after each acknowledgement of successful transmission.
	 */
	Slowstartincr int `json:"slowstartincr,omitempty"`
	/**
	* TCP buffering size, in bytes.
	 */
	Buffersize int `json:"buffersize,omitempty"`
	/**
	* Enable or disable the SYNCOOKIE mechanism for TCP handshake with clients. Disabling SYNCOOKIE prevents SYN attack protection on the Citrix ADC.
	 */
	Syncookie string `json:"syncookie,omitempty"`
	/**
	* Update last activity for the connection after receiving keep-alive (KA) probes.
	 */
	Kaprobeupdatelastactivity string `json:"kaprobeupdatelastactivity,omitempty"`
	/**
	* Set TCP congestion control algorithm.
	 */
	Flavor string `json:"flavor,omitempty"`
	/**
	* Enable or disable dynamic receive buffering. When enabled, allows the receive buffer to be adjusted dynamically based on memory and network conditions.
		Note: The buffer size argument must be set for dynamic adjustments to take place.
	*/
	Dynamicreceivebuffering string `json:"dynamicreceivebuffering,omitempty"`
	/**
	* Send periodic TCP keep-alive (KA) probes to check if peer is still up.
	 */
	Ka string `json:"ka,omitempty"`
	/**
	* Duration, in seconds, for the connection to be idle, before sending a keep-alive (KA) probe.
	 */
	Kaconnidletime int `json:"kaconnidletime,omitempty"`
	/**
	* Number of keep-alive (KA) probes to be sent when not acknowledged, before assuming the peer to be down.
	 */
	Kamaxprobes int `json:"kamaxprobes,omitempty"`
	/**
	* Time interval, in seconds, before the next keep-alive (KA) probe, if the peer does not respond.
	 */
	Kaprobeinterval int `json:"kaprobeinterval,omitempty"`
	/**
	* TCP Send Buffer Size
	 */
	Sendbuffsize int `json:"sendbuffsize,omitempty"`
	/**
	* Enable or disable Multipath TCP.
	 */
	Mptcp string `json:"mptcp,omitempty"`
	/**
	* Establishing Client Client connection on First data/ Final-ACK / Automatic
	 */
	Establishclientconn string `json:"establishclientconn,omitempty"`
	/**
	* Offload TCP segmentation to the NIC. If set to AUTOMATIC, TCP segmentation will be offloaded to the NIC, if the NIC supports it.
	 */
	Tcpsegoffload string `json:"tcpsegoffload,omitempty"`
	/**
	* Enable or disable RST window attenuation to protect against spoofing. When enabled, will reply with corrective ACK when a sequence number is invalid.
	 */
	Rstwindowattenuate string `json:"rstwindowattenuate,omitempty"`
	/**
	* Enable or disable acceptance of RST that is out of window yet echoes highest ACK sequence number. Useful only in proxy mode.
	 */
	Rstmaxack string `json:"rstmaxack,omitempty"`
	/**
	* Enable or disable drop of invalid SYN packets to protect against spoofing. When disabled, established connections will be reset when a SYN packet is received.
	 */
	Spoofsyndrop string `json:"spoofsyndrop,omitempty"`
	/**
	* Enable or disable TCP Explicit Congestion Notification.
	 */
	Ecn string `json:"ecn,omitempty"`
	/**
	* Enable or disable silently dropping the data on Pre-Established subflow. When enabled, DSS data packets are dropped silently instead of dropping the connection when data is received on pre established subflow.
	 */
	Mptcpdropdataonpreestsf string `json:"mptcpdropdataonpreestsf,omitempty"`
	/**
	* Enable or disable Multipath TCP fastopen. When enabled, DSS data packets are accepted before receiving the third ack of SYN handshake.
	 */
	Mptcpfastopen string `json:"mptcpfastopen,omitempty"`
	/**
	* MPTCP session timeout in seconds. If this value is not set, idle MPTCP sessions are flushed after vserver's client idle timeout.
	 */
	Mptcpsessiontimeout int `json:"mptcpsessiontimeout,omitempty"`
	/**
	* Enable or Disable TCP Timestamp option (RFC 1323)
	 */
	Timestamp string `json:"timestamp,omitempty"`
	/**
	* Enable or disable DSACK.
	 */
	Dsack string `json:"dsack,omitempty"`
	/**
	* Enable or disable ACK Aggregation.
	 */
	Ackaggregation string `json:"ackaggregation,omitempty"`
	/**
	* Enable or disable FRTO (Forward RTO-Recovery).
	 */
	Frto string `json:"frto,omitempty"`
	/**
	* TCP Maximum Congestion Window.
	 */
	Maxcwnd int `json:"maxcwnd,omitempty"`
	/**
	* Enable or disable FACK (Forward ACK).
	 */
	Fack string `json:"fack,omitempty"`
	/**
	* TCP Optimization modes TRANSPARENT / ENDPOINT.
	 */
	Tcpmode string `json:"tcpmode,omitempty"`
	/**
	* Enable or disable TCP Fastopen. When enabled, NS can receive or send Data in SYN or SYN-ACK packets.
	 */
	Tcpfastopen string `json:"tcpfastopen,omitempty"`
	/**
	* Enable or disable CUBIC Hystart
	 */
	Hystart string `json:"hystart,omitempty"`
	/**
	* TCP dupack threshold.
	 */
	Dupackthresh int `json:"dupackthresh,omitempty"`
	/**
	* TCP Burst Rate Control DISABLED/FIXED/DYNAMIC. FIXED requires a TCP rate to be set.
	 */
	Burstratecontrol string `json:"burstratecontrol,omitempty"`
	/**
	* TCP connection payload send rate in Kb/s
	 */
	Tcprate int `json:"tcprate,omitempty"`
	/**
	* Maximum connection queue size in bytes, when BurstRateControl is used
	 */
	Rateqmax int `json:"rateqmax,omitempty"`
	/**
	* Silently drop tcp half closed connections on idle timeout
	 */
	Drophalfclosedconnontimeout string `json:"drophalfclosedconnontimeout,omitempty"`
	/**
	* Silently drop tcp established connections on idle timeout
	 */
	Dropestconnontimeout string `json:"dropestconnontimeout,omitempty"`
	/**
	* Apply Adaptive TCP optimizations
	 */
	Applyadaptivetcp string `json:"applyadaptivetcp,omitempty"`
	/**
	* TCP FastOpen Cookie size. This accepts only even numbers. Odd number is trimmed down to nearest even number.
	 */
	Tcpfastopencookiesize int `json:"tcpfastopencookiesize,omitempty"`
	/**
	* TCP tail loss probe optimizations
	 */
	Taillossprobe string `json:"taillossprobe,omitempty"`
	/**
	* Client IP in TCP options
	 */
	Clientiptcpoption string `json:"clientiptcpoption,omitempty"`
	/**
	* ClientIP TCP Option number
	 */
	Clientiptcpoptionnumber int `json:"clientiptcpoptionnumber,omitempty"`
	/**
	* Set C bit in MP-CAPABLE Syn-Ack sent by Citrix ADC
	 */
	Mpcapablecbit string `json:"mpcapablecbit,omitempty"`
	/**
	* Send Client Port number along with Client IP in TCP-Options. ClientIpTcpOption must be ENABLED.
	 */
	Sendclientportintcpoption string `json:"sendclientportintcpoption,omitempty"`
	/**
	* TCP Slow Start Threhsold Value.
	 */
	Slowstartthreshold int `json:"slowstartthreshold,omitempty"`

	Refcnt  string `json:"refcnt,omitempty"`
	Builtin string `json:"builtin,omitempty"`
	Feature string `json:"feature,omitempty"`
}

* * Configuration for TCP profile resource.

type Nstestlicense

type Nstestlicense struct {
	Wl                      string `json:"wl,omitempty"`
	Sp                      string `json:"sp,omitempty"`
	Lb                      string `json:"lb,omitempty"`
	Cs                      string `json:"cs,omitempty"`
	Cr                      string `json:"cr,omitempty"`
	Sc                      string `json:"sc,omitempty"`
	Cmp                     string `json:"cmp,omitempty"`
	Delta                   string `json:"delta,omitempty"`
	Pq                      string `json:"pq,omitempty"`
	Ssl                     string `json:"ssl,omitempty"`
	Gslb                    string `json:"gslb,omitempty"`
	Gslbp                   string `json:"gslbp,omitempty"`
	Hdosp                   string `json:"hdosp,omitempty"`
	Routing                 string `json:"routing,omitempty"`
	Cf                      string `json:"cf,omitempty"`
	Contentaccelerator      string `json:"contentaccelerator,omitempty"`
	Ic                      string `json:"ic,omitempty"`
	Sslvpn                  string `json:"sslvpn,omitempty"`
	Fsslvpnusers            string `json:"f_sslvpn_users,omitempty"`
	Ficausers               string `json:"f_ica_users,omitempty"`
	Aaa                     string `json:"aaa,omitempty"`
	Ospf                    string `json:"ospf,omitempty"`
	Rip                     string `json:"rip,omitempty"`
	Bgp                     string `json:"bgp,omitempty"`
	Rewrite                 string `json:"rewrite,omitempty"`
	Ipv6pt                  string `json:"ipv6pt,omitempty"`
	Appfw                   string `json:"appfw,omitempty"`
	Responder               string `json:"responder,omitempty"`
	Agee                    string `json:"agee,omitempty"`
	Nsxn                    string `json:"nsxn,omitempty"`
	Htmlinjection           string `json:"htmlinjection,omitempty"`
	Modelid                 string `json:"modelid,omitempty"`
	Push                    string `json:"push,omitempty"`
	Wionns                  string `json:"wionns,omitempty"`
	Appflow                 string `json:"appflow,omitempty"`
	Cloudbridge             string `json:"cloudbridge,omitempty"`
	Cloudbridgeappliance    string `json:"cloudbridgeappliance,omitempty"`
	Cloudextenderappliance  string `json:"cloudextenderappliance,omitempty"`
	Isis                    string `json:"isis,omitempty"`
	Cluster                 string `json:"cluster,omitempty"`
	Ch                      string `json:"ch,omitempty"`
	Appqoe                  string `json:"appqoe,omitempty"`
	Appflowica              string `json:"appflowica,omitempty"`
	Isstandardlic           string `json:"isstandardlic,omitempty"`
	Isenterpriselic         string `json:"isenterpriselic,omitempty"`
	Isplatinumlic           string `json:"isplatinumlic,omitempty"`
	Issgwylic               string `json:"issgwylic,omitempty"`
	Isswglic                string `json:"isswglic,omitempty"`
	Feo                     string `json:"feo,omitempty"`
	Lsn                     string `json:"lsn,omitempty"`
	Licensingmode           string `json:"licensingmode,omitempty"`
	Daystoexpiration        string `json:"daystoexpiration,omitempty"`
	Rdpproxy                string `json:"rdpproxy,omitempty"`
	Rep                     string `json:"rep,omitempty"`
	Urlfiltering            string `json:"urlfiltering,omitempty"`
	Videooptimization       string `json:"videooptimization,omitempty"`
	Forwardproxy            string `json:"forwardproxy,omitempty"`
	Sslinterception         string `json:"sslinterception,omitempty"`
	Remotecontentinspection string `json:"remotecontentinspection,omitempty"`
	Adaptivetcp             string `json:"adaptivetcp,omitempty"`
	Cqa                     string `json:"cqa,omitempty"`
	Bot                     string `json:"bot,omitempty"`
	Apigateway              string `json:"apigateway,omitempty"`
}

* * Configuration for testlicense resource.

type Nstimeout

type Nstimeout struct {
	/**
	* Interval, in seconds, at which the Citrix ADC zombie cleanup process must run. This process cleans up inactive TCP connections.
	 */
	Zombie int `json:"zombie,omitempty"`
	/**
	* Client idle timeout (in seconds). If zero, the service-type default value is taken when service is created.
	 */
	Client int `json:"client"`
	/**
	* Server idle timeout (in seconds).  If zero, the service-type default value is taken when service is created.
	 */
	Server int `json:"server"`
	/**
	* Global idle timeout, in seconds, for client connections of HTTP service type. This value is over ridden by the client timeout that is configured on individual entities.
	 */
	Httpclient int `json:"httpclient"`
	/**
	* Global idle timeout, in seconds, for server connections of HTTP service type. This value is over ridden by the server timeout that is configured on individual entities.
	 */
	Httpserver int `json:"httpserver"`
	/**
	* Global idle timeout, in seconds, for non-HTTP client connections of TCP service type. This value is over ridden by the client timeout that is configured on individual entities.
	 */
	Tcpclient int `json:"tcpclient"`
	/**
	* Global idle timeout, in seconds, for non-HTTP server connections of TCP service type. This value is over ridden by the server timeout that is configured on entities.
	 */
	Tcpserver int `json:"tcpserver"`
	/**
	* Global idle timeout, in seconds, for non-TCP client connections. This value is over ridden by the client timeout that is configured on individual entities.
	 */
	Anyclient int `json:"anyclient"`
	/**
	* Global idle timeout, in seconds, for non TCP server connections. This value is over ridden by the server timeout that is configured on individual entities.
	 */
	Anyserver int `json:"anyserver"`
	/**
	* Global idle timeout, in seconds, for TCP client connections. This value takes precedence over  entity level timeout settings (vserver/service). This is applicable only to transport protocol TCP.
	 */
	Anytcpclient int `json:"anytcpclient"`
	/**
	* Global idle timeout, in seconds, for TCP server connections. This value takes precedence over entity level timeout settings ( vserver/service). This is applicable only to transport protocol TCP.
	 */
	Anytcpserver int `json:"anytcpserver"`
	/**
	* Idle timeout, in seconds, for connections that are in TCP half-closed state.
	 */
	Halfclose int `json:"halfclose,omitempty"`
	/**
	* Interval at which the zombie clean-up process for non-TCP connections should run. Inactive IP NAT connections will be cleaned up.
	 */
	Nontcpzombie int `json:"nontcpzombie,omitempty"`
	/**
	* Alternative idle timeout, in seconds, for closed TCP NATPCB connections.
	 */
	Reducedfintimeout int `json:"reducedfintimeout,omitempty"`
	/**
	* Timer interval, in seconds, for abruptly terminated TCP NATPCB connections.
	 */
	Reducedrsttimeout int `json:"reducedrsttimeout"`
	/**
	* Timer interval, in seconds, for new TCP NATPCB connections on which no data was received.
	 */
	Newconnidletimeout int `json:"newconnidletimeout,omitempty"`
}

* * Configuration for timeout resource.

type Nstimer

type Nstimer struct {
	/**
	* Timer name.
	 */
	Name string `json:"name,omitempty"`
	/**
	* The frequency at which the policies bound to this timer are invoked. The minimum value is 20 msec. The maximum value is 20940 in seconds and 349 in minutes
	 */
	Interval int `json:"interval,omitempty"`
	/**
	* Timer interval unit
	 */
	Unit string `json:"unit,omitempty"`
	/**
	* Comments associated with this timer.
	 */
	Comment string `json:"comment,omitempty"`
	/**
	* The new name of the timer.
	 */
	Newname string `json:"newname,omitempty"`
}

* * Configuration for Timer resource.

type Nstimerautoscalepolicybinding

type Nstimerautoscalepolicybinding struct {
	/**
	* The timer policy associated with the timer.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Specifies the priority of the timer policy.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Name of the vserver which provides the context for the rule in timer policy. When not specified it is treated as a Global Default context.
	 */
	Vserver string `json:"vserver,omitempty"`
	/**
	* Denotes the sample size. Sample size value of 'x' means that previous '(x - 1)' policy's rule evaluation results and the current evaluation result are present with the binding. For example, sample size of 10 means that there is a state of previous 9 policy evaluation results and also the current policy evaluation result.
	 */
	Samplesize int `json:"samplesize,omitempty"`
	/**
	* Denotes the threshold. If the rule of the policy in the binding relation evaluates 'threshold size' number of times in 'sample size' to true, then the corresponding action is taken. Its value needs to be less than or equal to the sample size value.
	 */
	Threshold int `json:"threshold,omitempty"`
	/**
	* Timer name.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the autoscalepolicy that can be bound to nstimer.

type Nstimerbinding

type Nstimerbinding struct {
	/**
	* Timer name.<br/>Minimum value =
	 */
	Name string `json:"name,omitempty"`
}

* * Binding object which returns the resources bound to nstimer_binding.

type Nstimerpolicybinding

type Nstimerpolicybinding struct {
	/**
	* The timer policy associated with the timer.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Specifies the priority of the timer policy.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Name of the vserver which provides the context for the rule in timer policy. When not specified it is treated as a Global Default context.
	 */
	Vserver string `json:"vserver,omitempty"`
	/**
	* Denotes the sample size. Sample size value of 'x' means that previous '(x - 1)' policy's rule evaluation results and the current evaluation result are present with the binding. For example, sample size of 10 means that there is a state of previous 9 policy evaluation results and also the current policy evaluation result.
	 */
	Samplesize uint32 `json:"samplesize,omitempty"`
	/**
	* Denotes the threshold. If the rule of the policy in the binding relation evaluates 'threshold size' number of times in 'sample size' to true, then the corresponding action is taken. Its value needs to be less than or equal to the sample size value.
	 */
	Threshold uint32 `json:"threshold,omitempty"`
	/**
	* Timer name.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the policy that can be bound to nstimer.

type Nstimezone

type Nstimezone struct {
	Value string `json:"value,omitempty"`
}

type Nstrafficdomain

type Nstrafficdomain struct {
	/**
	* Integer value that uniquely identifies a traffic domain.
	 */
	Td int `json:"td,omitempty"`
	/**
	* Name of traffic domain  being added.
	 */
	Aliasname string `json:"aliasname,omitempty"`
	/**
	* Associate the traffic domain with a VMAC address instead of with VLANs. The Citrix ADC then sends the VMAC address of the traffic domain in all responses to ARP queries for network entities in that domain. As a result, the ADC can segregate subsequent incoming traffic for this traffic domain on the basis of the destination MAC address, because the destination MAC address is the VMAC address of the traffic domain. After creating entities on a traffic domain, you can easily manage and monitor them by performing traffic domain level operations.
	 */
	Vmac string `json:"vmac,omitempty"`

	State string `json:"state,omitempty"`
}

* * Configuration for Traffic Domain resource.

type Nstrafficdomainbinding

type Nstrafficdomainbinding struct {
	/**
	* Integer value that uniquely identifies a traffic domain.<br/>Minimum value =  1<br/>Maximum value =  4094
	 */
	Td int `json:"td,omitempty"`
}

* * Binding object which returns the resources bound to nstrafficdomain_binding.

type Nstrafficdomainbridgegroupbinding

type Nstrafficdomainbridgegroupbinding struct {
	/**
	* ID of the configured bridge to bind to this traffic domain. More than one bridge group can be bound to a traffic domain, but the same bridge group cannot be a part of multiple traffic domains.
	 */
	Bridgegroup int `json:"bridgegroup,omitempty"`
	/**
	* Integer value that uniquely identifies a traffic domain.
	 */
	Td int `json:"td,omitempty"`
}

* * Binding class showing the bridgegroup that can be bound to nstrafficdomain.

type Nstrafficdomainvlanbinding

type Nstrafficdomainvlanbinding struct {
	/**
	* ID of the VLAN to bind to this traffic domain. More than one VLAN can be bound to a traffic domain, but the same VLAN cannot be a part of multiple traffic domains.
	 */
	Vlan int `json:"vlan,omitempty"`
	/**
	* Integer value that uniquely identifies a traffic domain.
	 */
	Td int `json:"td,omitempty"`
}

* * Binding class showing the vlan that can be bound to nstrafficdomain.

type Nstrafficdomainvxlanbinding

type Nstrafficdomainvxlanbinding struct {
	/**
	* ID of the VXLAN to bind to this traffic domain. More than one VXLAN can be bound to a traffic domain, but the same VXLAN cannot be a part of multiple traffic domains.
	 */
	Vxlan int `json:"vxlan,omitempty"`
	/**
	* Integer value that uniquely identifies a traffic domain.
	 */
	Td int `json:"td,omitempty"`
}

* * Binding class showing the vxlan that can be bound to nstrafficdomain.

type Nsvariable

type Nsvariable struct {
	/**
	* Variable name.  This follows the same syntax rules as other expression entity names:
		It must begin with an alpha character (A-Z or a-z) or an underscore (_).
		The rest of the characters must be alpha, numeric (0-9) or underscores.
		It cannot be re or xp (reserved for regular and XPath expressions).
		It cannot be an expression reserved word (e.g. SYS or HTTP).
		It cannot be used for an existing expression object (HTTP callout, patset, dataset, stringmap, or named expression).
	*/
	Name string `json:"name,omitempty"`
	/**
	* Specification of the variable type; one of the following:
		ulong - singleton variable with an unsigned 64-bit value.
		text(value-max-size) - singleton variable with a text string value.
		map(text(key-max-size),ulong,max-entries) - map of text string keys to unsigned 64-bit values.
		map(text(key-max-size),text(value-max-size),max-entries) - map of text string keys to text string values.
		where
		value-max-size is a positive integer that is the maximum number of bytes in a text string value.
		key-max-size is a positive integer that is the maximum number of bytes in a text string key.
		max-entries is a positive integer that is the maximum number of entries in a map variable.
		For a global singleton text variable, value-max-size <= 64000.
		For a global map with ulong values, key-max-size <= 64000.
		For a global map with text values,  key-max-size + value-max-size <= 64000.
		max-entries is a positive integer that is the maximum number of entries in a map variable. This has a theoretical maximum of 2^64-1, but in actual use will be much smaller, considering the memory available for use by the map.
		Example:
		map(text(10),text(20),100) specifies a map of text string keys (max size 10 bytes) to text string values (max size 20 bytes), with 100 max entries.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Scope of the variable:
		global - (default) one set of values visible across all Packet Engines on a standalone Citrix ADC, an HA pair, or all nodes of a cluster
		transaction - one value for each request-response transaction (singleton variables only; no expiration)
	*/
	Scope string `json:"scope,omitempty"`
	/**
	* Action to perform if an assignment to a map exceeds its configured max-entries:
		lru - (default) reuse the least recently used entry in the map.
		undef - force the assignment to return an undefined (Undef) result to the policy executing the assignment.
	*/
	Iffull string `json:"iffull,omitempty"`
	/**
	* Action to perform if an value is assigned to a text variable that exceeds its configured max-size,
		or if a key is used that exceeds its configured max-size:
		truncate - (default) truncate the text string to the first max-size bytes and proceed.
		undef - force the assignment or expression evaluation to return an undefined (Undef) result to the policy executing the assignment or expression.
	*/
	Ifvaluetoobig string `json:"ifvaluetoobig,omitempty"`
	/**
	* Action to perform if on a variable reference in an expression if the variable is single-valued and uninitialized
		or if the variable is a map and there is no value for the specified key:
		init - (default) initialize the single-value variable, or create a map entry for the key and the initial value,
		using the -init value or its default.
		undef - force the expression evaluation to return an undefined (Undef) result to the policy executing the expression.
	*/
	Ifnovalue string `json:"ifnovalue,omitempty"`
	/**
	* Initialization value for this variable, to which a singleton variable or map entry will be set if it is referenced before an assignment action has assigned it a value. If the singleton variable or map entry already has been assigned a value, setting this parameter will have no effect on that variable value. Default: 0 for ulong, NULL for text
	 */
	Init string `json:"init,omitempty"`
	/**
	* Value expiration in seconds. If the value is not referenced within the expiration period it will be deleted. 0 (the default) means no expiration.
	 */
	Expires int `json:"expires,omitempty"`
	/**
	* Comments associated with this variable.
	 */
	Comment string `json:"comment,omitempty"`

	Referencecount string `json:"referencecount,omitempty"`
}

* * Configuration for variable resource.

type Nsversion

type Nsversion struct {
	/**
	* Installed version
	 */
	Installedversion bool `json:"installedversion,omitempty"`

	Version string `json:"version,omitempty"`
	Mode    string `json:"mode,omitempty"`
}

* * Configuration for version resource.

type Nsvpxparam

type Nsvpxparam struct {
	/**
	* This setting applicable in virtual appliances, to move master clock source cpu from management cpu cpu0 to cpu1 ie PE0.
		* There are 2 options for the behavior:
		1. YES - Allow the Virtual Appliance to move clock source to cpu1.
		2. NO - Virtual Appliance will use management cpu ie cpu0 for clock source default option is NO.
	*/
	Masterclockcpu1 string `json:"masterclockcpu1,omitempty"`
	/**
	* This setting applicable in virtual appliances, is to affect the cpu yield(relinquishing the cpu resources) in any hypervised environment.
		* There are 3 options for the behavior:
		1. YES - Allow the Virtual Appliance to yield its vCPUs periodically, if there is no data traffic.
		2. NO - Virtual Appliance will not yield the vCPU.
		3. DEFAULT - Restores the default behaviour, according to the license.
		* Its behavior in different scenarios:
		1. As this setting is node specific only, it will not be propagated to other nodes, when executed on Cluster(CLIP) and HA(Primary).
		2. In cluster setup, use '-ownerNode' to specify ID of the cluster node.
		3. This setting is a system wide implementation and not granular to vCPUs.
		4. No effect on the management PE.
	*/
	Cpuyield string `json:"cpuyield,omitempty"`
	/**
	* ID of the cluster node for which you are setting the cpuyield. It can be configured only through the cluster IP address.
	 */
	Ownernode int `json:"ownernode"` // Zero is a valid value

	Vpxenvironment      string `json:"vpxenvironment,omitempty"`
	Memorystatus        string `json:"memorystatus,omitempty"`
	Cloudproductcode    string `json:"cloudproductcode,omitempty"`
	Vpxoemcode          string `json:"vpxoemcode,omitempty"`
	Technicalsupportpin string `json:"technicalsupportpin,omitempty"`
}

* * Configuration for "VPX" resource.

type Nsweblogparam

type Nsweblogparam struct {
	/**
	* Buffer size, in MB, allocated for log transaction data on the system. The maximum value is limited to the memory available on the system.
	 */
	Buffersizemb int `json:"buffersizemb,omitempty"`
	/**
	* Name(s) of HTTP request headers whose values should be exported by the Web Logging feature.
	 */
	Customreqhdrs []string `json:"customreqhdrs,omitempty"`
	/**
	* Name(s) of HTTP response headers whose values should be exported by the Web Logging feature.
	 */
	Customrsphdrs []string `json:"customrsphdrs,omitempty"`

	Builtin string `json:"builtin,omitempty"`
	Feature string `json:"feature,omitempty"`
}

* * Configuration for Web log parameters resource.

type Nsxmlnamespace

type Nsxmlnamespace struct {
	/**
	* XML prefix.
	 */
	Prefix string `json:"prefix,omitempty"`
	/**
	* Expanded namespace for which the XML prefix is provided.
	 */
	Namespace string `json:"Namespace,omitempty"`
	/**
	* Description for the prefix.
	 */
	Description string `json:"description,omitempty"`
}

* * Configuration for XML namespace resource.

type Reboot

type Reboot struct {
	/**
	* Restarts the Citrix ADC software without rebooting the underlying operating system. The session terminates and you must log on to the appliance after it has restarted.
		Note: This argument is required only for nCore appliances. Classic appliances ignore this argument.
	*/
	Warm bool `json:"warm,omitempty"`
}

type Shutdown

type Shutdown struct {
}

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL