lb

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 Lbaction

type Lbaction struct {
	/**
	* Name for the LB action. 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.

	* 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 lb action" or 'my lb action').
	 */
	Name string `json:"name,omitempty"`
	/**
	* Type of an LB action. Available settings function as follows:
	* NOLBACTION - Does not consider LB action in making LB decision.
	* SELECTIONORDER - services bound to vserver with order specified in value parameter is considerd for lb/gslb decision.
	Possible values = NOLBACTION, SELECTIONORDER
	*/
	Type string `json:"type,omitempty"`
	/**
	* The selection order list used during lb/gslb decision. Preference of services during lb/gslb decision is as follows - services corresponding to first order specified in the sequence is considered first, services corresponding to second order specified in the sequence is considered next and so on.
	* For example, if -value 2 1 3 is specified here and service-1 bound to a vserver with order 1, service-2 bound to a vserver with order 2 and service-3 bound to a vserver with order 3. Then preference of selecting services in LB decision is as follows: service-2, service-1, service-3.
	* Minimum value = 1
	 */
	Value []int `json:"value,omitempty"`
	/**
	* Comment. Any type of information about this LB action.
	 */
	Comment string `json:"comment,omitempty"`
	/**
	* New name for the load balancing virtual server group.
	 */
	Newname string `json:"newname,omitempty"`
}

* * Configuration for lb action resource.

type Lbgroup

type Lbgroup struct {
	/**
	* Name of the load balancing virtual server group.
	 */
	Name string `json:"name,omitempty"`
	/**
	* Type of persistence for the group. Available settings function as follows:
		* SOURCEIP - Create persistence sessions based on the client IP.
		* COOKIEINSERT - Create persistence sessions based on a cookie in client requests. The cookie is inserted by a Set-Cookie directive from the server, in its first response to a client.
		* RULE - Create persistence sessions based on a user defined rule.
		* NONE - Disable persistence for the group.
	*/
	Persistencetype string `json:"persistencetype,omitempty"`
	/**
	* Type of backup persistence for the group.
	 */
	Persistencebackup string `json:"persistencebackup,omitempty"`
	/**
	* Time period, in minutes, for which backup persistence is in effect.
	 */
	Backuppersistencetimeout int `json:"backuppersistencetimeout,omitempty"`
	/**
	* Persistence mask to apply to source IPv4 addresses when creating source IP based persistence sessions.
	 */
	Persistmask string `json:"persistmask,omitempty"`
	/**
	* Use this parameter to specify the cookie name for COOKIE peristence type. It specifies the name of cookie with a maximum of 32 characters. If not specified, cookie name is internally generated.
	 */
	Cookiename string `json:"cookiename,omitempty"`
	/**
	* Persistence mask to apply to source IPv6 addresses when creating source IP based persistence sessions.
	 */
	V6persistmasklen int `json:"v6persistmasklen,omitempty"`
	/**
	* Domain attribute for the HTTP cookie.
	 */
	Cookiedomain string `json:"cookiedomain,omitempty"`
	/**
	* Time period for which a persistence session is in effect.
	 */
	Timeout int `json:"timeout,omitempty"`
	/**
	* Expression, or name of a named expression, against which traffic is evaluated.
		The following requirements apply only to the Citrix ADC CLI:
		* If the expression includes one or more spaces, enclose the entire expression in double quotation marks.
		* If the expression itself includes double quotation marks, escape the quotations by using the \ character.
		* Alternatively, you can use single quotation marks to enclose the rule, in which case you do not have to escape the double quotation marks.
	*/
	Rule string `json:"rule,omitempty"`
	/**
	* Use this parameter to enable vserver level persistence on group members. This allows member vservers to have their own persistence, but need to be compatible with other members persistence rules. When this setting is enabled persistence sessions created by any of the members can be shared by other member vservers.
	 */
	Usevserverpersistency string `json:"usevserverpersistency,omitempty"`
	/**
	* When USE_VSERVER_PERSISTENCE is enabled, one can use this setting to designate a member vserver as master which is responsible to create the persistence sessions
	 */
	Mastervserver string `json:"mastervserver,omitempty"`
	/**
	* New name for the load balancing virtual server group.
	 */
	Newname string `json:"newname,omitempty"`

	Td string `json:"td,omitempty"`
}

* * Configuration for LB group resource.

type Lbgroupbinding

type Lbgroupbinding struct {
	/**
	* Name of the load balancing virtual server group.<br/>Minimum value =
	 */
	Name string `json:"name,omitempty"`
}

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

type Lbgrouplbvserverbinding

type Lbgrouplbvserverbinding struct {
	/**
	* Virtual server name.
	 */
	Vservername string `json:"vservername,omitempty"`
	/**
	* Name for the load balancing virtual server group. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my lbgroup" or 'my lbgroup').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the lbvserver that can be bound to lbgroup.

type Lbgroupvserverbinding

type Lbgroupvserverbinding struct {
	/**
	* Virtual server name.
	 */
	Vservername string `json:"vservername,omitempty"`
	/**
	* Name for the load balancing virtual server group. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my lbgroup" or 'my lbgroup').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the vserver that can be bound to lbgroup.

type Lbmetrictable

type Lbmetrictable struct {
	/**
	* Name for the metric table. 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.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my metrictable" or 'my metrictable').
	*/
	Metrictable string `json:"metrictable,omitempty"`
	/**
	* Name of the metric for which to change the SNMP OID.
	 */
	Metric string `json:"metric,omitempty"`
	/**
	* New SNMP OID of the metric.
	 */
	Snmpoid string `json:"Snmpoid,omitempty"`

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

* * Configuration for metric table resource.

type Lbmetrictablebinding

type Lbmetrictablebinding struct {
	/**
	* Name of the metric table.<br/>Minimum value =
	 */
	Metrictable string `json:"metrictable,omitempty"`
}

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

type Lbmetrictablemetricbinding

type Lbmetrictablemetricbinding struct {
	/**
	* Name of the metric for which to change the SNMP OID.
	 */
	Metric string `json:"metric,omitempty"`
	/**
	* New SNMP OID of the metric.
	 */
	Snmpoid string `json:"Snmpoid,omitempty"`
	/**
	* Indication if it is a configured or internal
	 */
	Metrictype string `json:"metrictype,omitempty"`
	/**
	* Name of the metric table.
	 */
	Metrictable string `json:"metrictable,omitempty"`
}

* * Binding class showing the metric that can be bound to lbmetrictable.

type Lbmonbindings

type Lbmonbindings struct {
	/**
	* The name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`

	Type                      string `json:"type,omitempty"`
	State                     string `json:"state,omitempty"`
	Boundservicegroupsvrstate string `json:"boundservicegroupsvrstate,omitempty"`
}

* * Configuration for monitro bindings resource.

type Lbmonbindingsbinding

type Lbmonbindingsbinding struct {
	/**
	* The name of the monitor.<br/>Minimum value =
	 */
	Monitorname string `json:"monitorname,omitempty"`
}

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

type Lbmonbindingsgslbservicegroupbinding

type Lbmonbindingsgslbservicegroupbinding struct {
	/**
	* The name of the service group.
	 */
	Servicegroupname string `json:"servicegroupname,omitempty"`
	/**
	* The type of service
	 */
	Servicetype string `json:"servicetype,omitempty"`
	/**
	* The state of the servicegroup.
	 */
	Boundservicegroupsvrstate string `json:"boundservicegroupsvrstate,omitempty"`
	/**
	* The configured state (enable/disable) of Monitor on this service.
	 */
	Monstate string `json:"monstate,omitempty"`
	/**
	* The name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`
}

* * Binding class showing the gslbservicegroup that can be bound to lbmonbindings.

type Lbmonbindingsservicebinding

type Lbmonbindingsservicebinding struct {
	/**
	* The name of the service.
	 */
	Servicename string `json:"servicename,omitempty"`
	/**
	* The IPAddress of the service.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* The port of the service.
	 */
	Port int `json:"port,omitempty"`
	/**
	* The type of service
	 */
	Servicetype string `json:"servicetype,omitempty"`
	/**
	* The state of the service
	 */
	Svrstate string `json:"svrstate,omitempty"`
	/**
	* The configured state (enable/disable) of Monitor on this service.
	 */
	Monsvcstate string `json:"monsvcstate,omitempty"`
	/**
	* The name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`
}

* * Binding class showing the service that can be bound to lbmonbindings.

type Lbmonbindingsservicegroupbinding

type Lbmonbindingsservicegroupbinding struct {
	/**
	* The name of the service group.
	 */
	Servicegroupname string `json:"servicegroupname,omitempty"`
	/**
	* The type of service
	 */
	Servicetype string `json:"servicetype,omitempty"`
	/**
	* The state of the servicegroup.
	 */
	Boundservicegroupsvrstate string `json:"boundservicegroupsvrstate,omitempty"`
	/**
	* The configured state (enable/disable) of Monitor on this service.
	 */
	Monstate string `json:"monstate,omitempty"`
	/**
	* The name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`
}

* * Binding class showing the servicegroup that can be bound to lbmonbindings.

type Lbmonitor

type Lbmonitor struct {
	/**
	* Name for the monitor. 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.
		CLI Users:  If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my monitor" or 'my monitor').
	*/
	Monitorname string `json:"monitorname,omitempty"`
	/**
	* Type of monitor that you want to create.
	 */
	Type string `json:"type,omitempty"`
	/**
	* Action to perform when the response to an inline monitor (a monitor of type HTTP-INLINE) indicates that the service is down. A service monitored by an inline monitor is considered DOWN if the response code is not one of the codes that have been specified for the Response Code parameter.
		Available settings function as follows:
		* NONE - Do not take any action. However, the show service command and the show lb monitor command indicate the total number of responses that were checked and the number of consecutive error responses received after the last successful probe.
		* LOG - Log the event in NSLOG or SYSLOG.
		* DOWN - Mark the service as being down, and then do not direct any traffic to the service until the configured down time has expired. Persistent connections to the service are terminated as soon as the service is marked as DOWN. Also, log the event in NSLOG or SYSLOG.
	*/
	Action string `json:"action,omitempty"`
	/**
	* Response codes for which to mark the service as UP. For any other response code, the action performed depends on the monitor type. HTTP monitors and RADIUS monitors mark the service as DOWN, while HTTP-INLINE monitors perform the action indicated by the Action parameter.
	 */
	Respcode []string `json:"respcode,omitempty"`
	/**
	* HTTP request to send to the server (for example, "HEAD /file.html").
	 */
	Httprequest string `json:"httprequest,omitempty"`
	/**
	* RTSP request to send to the server (for example, "OPTIONS *").
	 */
	Rtsprequest string `json:"rtsprequest,omitempty"`
	/**
	* Custom header string to include in the monitoring probes.
	 */
	Customheaders string `json:"customheaders,omitempty"`
	/**
	* Maximum number of hops that the SIP request used for monitoring can traverse to reach the server. Applicable only to monitors of type SIP-UDP.
	 */
	Maxforwards int `json:"maxforwards,omitempty"`
	/**
	* SIP method to use for the query. Applicable only to monitors of type SIP-UDP.
	 */
	Sipmethod string `json:"sipmethod,omitempty"`
	/**
	* SIP URI string to send to the service (for example, sip:sip.test). Applicable only to monitors of type SIP-UDP.
	 */
	Sipuri string `json:"sipuri,omitempty"`
	/**
	* SIP user to be registered. Applicable only if the monitor is of type SIP-UDP and the SIP Method parameter is set to REGISTER.
	 */
	Sipreguri string `json:"sipreguri,omitempty"`
	/**
	* String to send to the service. Applicable to TCP-ECV, HTTP-ECV, and UDP-ECV monitors.
	 */
	Send string `json:"send,omitempty"`
	/**
	* String expected from the server for the service to be marked as UP. Applicable to TCP-ECV, HTTP-ECV, and UDP-ECV monitors.
	 */
	Recv string `json:"recv,omitempty"`
	/**
	* Domain name to resolve as part of monitoring the DNS service (for example, example.com).
	 */
	Query string `json:"query,omitempty"`
	/**
	* Type of DNS record for which to send monitoring queries. Set to Address for querying A records, AAAA for querying AAAA records, and Zone for querying the SOA record.
	 */
	Querytype string `json:"querytype,omitempty"`
	/**
	* Path and name of the script to execute. The script must be available on the Citrix ADC, in the /nsconfig/monitors/ directory.
	 */
	Scriptname string `json:"scriptname,omitempty"`
	/**
	* String of arguments for the script. The string is copied verbatim into the request.
	 */
	Scriptargs string `json:"scriptargs,omitempty"`
	/**
	* IP address of the dispatcher to which to send the probe.
	 */
	Dispatcherip string `json:"dispatcherip,omitempty"`
	/**
	* Port number on which the dispatcher listens for the monitoring probe.
	 */
	Dispatcherport int `json:"dispatcherport,omitempty"`
	/**
	* User name with which to probe the RADIUS, NNTP, FTP, FTP-EXTENDED, MYSQL, MSSQL, POP3, CITRIX-AG, CITRIX-XD-DDC, CITRIX-WI-EXTENDED, CITRIX-XNC or CITRIX-XDM server.
	 */
	Username string `json:"username,omitempty"`
	/**
	* Password that is required for logging on to the RADIUS, NNTP, FTP, FTP-EXTENDED, MYSQL, MSSQL, POP3, CITRIX-AG, CITRIX-XD-DDC, CITRIX-WI-EXTENDED, CITRIX-XNC-ECV or CITRIX-XDM server. Used in conjunction with the user name specified for the User Name parameter.
	 */
	Password string `json:"password,omitempty"`
	/**
	* Secondary password that users might have to provide to log on to the Access Gateway server. Applicable to CITRIX-AG monitors.
	 */
	Secondarypassword string `json:"secondarypassword,omitempty"`
	/**
	* Name of the logon point that is configured for the Citrix Access Gateway Advanced Access Control software. Required if you want to monitor the associated login page or Logon Agent. Applicable to CITRIX-AAC-LAS and CITRIX-AAC-LOGINPAGE monitors.
	 */
	Logonpointname string `json:"logonpointname,omitempty"`
	/**
	* Version number of the Citrix Advanced Access Control Logon Agent. Required by the CITRIX-AAC-LAS monitor.
	 */
	Lasversion string `json:"lasversion,omitempty"`
	/**
	* Authentication key (shared secret text string) for RADIUS clients and servers to exchange. Applicable to monitors of type RADIUS and RADIUS_ACCOUNTING.
	 */
	Radkey string `json:"radkey,omitempty"`
	/**
	* NAS-Identifier to send in the Access-Request packet. Applicable to monitors of type RADIUS.
	 */
	Radnasid string `json:"radnasid,omitempty"`
	/**
	* Network Access Server (NAS) IP address to use as the source IP address when monitoring a RADIUS server. Applicable to monitors of type RADIUS and RADIUS_ACCOUNTING.
	 */
	Radnasip string `json:"radnasip,omitempty"`
	/**
	* Account Type to be used in Account Request Packet. Applicable to monitors of type RADIUS_ACCOUNTING.
	 */
	Radaccounttype int `json:"radaccounttype,omitempty"`
	/**
	* Source ip with which the packet will go out . Applicable to monitors of type RADIUS_ACCOUNTING.
	 */
	Radframedip string `json:"radframedip,omitempty"`
	/**
	* Called Station Id to be used in Account Request Packet. Applicable to monitors of type RADIUS_ACCOUNTING.
	 */
	Radapn string `json:"radapn,omitempty"`
	/**
	* Calling Stations Id to be used in Account Request Packet. Applicable to monitors of type RADIUS_ACCOUNTING.
	 */
	Radmsisdn string `json:"radmsisdn,omitempty"`
	/**
	* Account Session ID to be used in Account Request Packet. Applicable to monitors of type RADIUS_ACCOUNTING.
	 */
	Radaccountsession string `json:"radaccountsession,omitempty"`
	/**
	* Calculate the least response times for bound services. If this parameter is not enabled, the appliance does not learn the response times of the bound services. Also used for LRTM load balancing.
	 */
	Lrtm string `json:"lrtm,omitempty"`
	/**
	* Time value added to the learned average response time in dynamic response time monitoring (DRTM). When a deviation is specified, the appliance learns the average response time of bound services and adds the deviation to the average. The final value is then continually adjusted to accommodate response time variations over time. Specified in milliseconds, seconds, or minutes.
	 */
	Deviation int `json:"deviation"`
	/**
	* Unit of measurement for the Deviation parameter. Cannot be changed after the monitor is created.
	 */
	Units1 string `json:"units1,omitempty"`
	/**
	* Time interval between two successive probes. Must be greater than the value of Response Time-out.
	 */
	Interval int `json:"interval,omitempty"`
	/**
	* monitor interval units
	 */
	Units3 string `json:"units3,omitempty"`
	/**
	* Amount of time for which the appliance must wait before it marks a probe as FAILED.  Must be less than the value specified for the Interval parameter.
		Note: For UDP-ECV monitors for which a receive string is not configured, response timeout does not apply. For UDP-ECV monitors with no receive string, probe failure is indicated by an ICMP port unreachable error received from the service.
	*/
	Resptimeout int `json:"resptimeout,omitempty"`
	/**
	* monitor response timeout units
	 */
	Units4 string `json:"units4,omitempty"`
	/**
	* Response time threshold, specified as a percentage of the Response Time-out parameter. If the response to a monitor probe has not arrived when the threshold is reached, the appliance generates an SNMP trap called monRespTimeoutAboveThresh. After the response time returns to a value below the threshold, the appliance generates a monRespTimeoutBelowThresh SNMP trap. For the traps to be generated, the "MONITOR-RTO-THRESHOLD" alarm must also be enabled.
	 */
	Resptimeoutthresh int `json:"resptimeoutthresh,omitempty"`
	/**
	* Maximum number of probes to send to establish the state of a service for which a monitoring probe failed.
	 */
	Retries int `json:"retries,omitempty"`
	/**
	* Number of retries that must fail, out of the number specified for the Retries parameter, for a service to be marked as DOWN. For example, if the Retries parameter is set to 10 and the Failure Retries parameter is set to 6, out of the ten probes sent, at least six probes must fail if the service is to be marked as DOWN. The default value of 0 means that all the retries must fail if the service is to be marked as DOWN.
	 */
	Failureretries int `json:"failureretries,omitempty"`
	/**
	* Number of consecutive probe failures after which the appliance generates an SNMP trap called monProbeFailed.
	 */
	Alertretries int `json:"alertretries,omitempty"`
	/**
	* Number of consecutive successful probes required to transition a service's state from DOWN to UP.
	 */
	Successretries int `json:"successretries,omitempty"`
	/**
	* Time duration for which to wait before probing a service that has been marked as DOWN. Expressed in milliseconds, seconds, or minutes.
	 */
	Downtime int `json:"downtime,omitempty"`
	/**
	* Unit of measurement for the Down Time parameter. Cannot be changed after the monitor is created.
	 */
	Units2 string `json:"units2,omitempty"`
	/**
	* IP address of the service to which to send probes. If the parameter is set to 0, the IP address of the server to which the monitor is bound is considered the destination IP address.
	 */
	Destip string `json:"destip,omitempty"`
	/**
	* TCP or UDP port to which to send the probe. If the parameter is set to 0, the port number of the service to which the monitor is bound is considered the destination port. For a monitor of type USER, however, the destination port is the port number that is included in the HTTP request sent to the dispatcher. Does not apply to monitors of type PING.
	 */
	Destport int `json:"destport,omitempty"`
	/**
	* State of the monitor. The DISABLED setting disables not only the monitor being configured, but all monitors of the same type, until the parameter is set to ENABLED. If the monitor is bound to a service, the state of the monitor is not taken into account when the state of the service is determined.
	 */
	State string `json:"state,omitempty"`
	/**
	* Mark a service as DOWN, instead of UP, when probe criteria are satisfied, and as UP instead of DOWN when probe criteria are not satisfied.
	 */
	Reverse string `json:"reverse,omitempty"`
	/**
	* The monitor is bound to a transparent device such as a firewall or router. The state of a transparent device depends on the responsiveness of the services behind it. If a transparent device is being monitored, a destination IP address must be specified. The probe is sent to the specified IP address by using the MAC address of the transparent device.
	 */
	Transparent string `json:"transparent,omitempty"`
	/**
	* Send the monitoring probe to the service through an IP tunnel. A destination IP address must be specified.
	 */
	Iptunnel string `json:"iptunnel,omitempty"`
	/**
	* Probe the service by encoding the destination IP address in the IP TOS (6) bits.
	 */
	Tos string `json:"tos,omitempty"`
	/**
	* The TOS ID of the specified destination IP. Applicable only when the TOS parameter is set.
	 */
	Tosid int `json:"tosid,omitempty"`
	/**
	* Use a secure SSL connection when monitoring a service. Applicable only to TCP based monitors. The secure option cannot be used with a CITRIX-AG monitor, because a CITRIX-AG monitor uses a secure connection by default.
	 */
	Secure string `json:"secure,omitempty"`
	/**
	* Validate the credentials of the Xen Desktop DDC server user. Applicable to monitors of type CITRIX-XD-DDC.
	 */
	Validatecred string `json:"validatecred,omitempty"`
	/**
	* Domain in which the XenDesktop Desktop Delivery Controller (DDC) servers or Web Interface servers are present. Required by CITRIX-XD-DDC and CITRIX-WI-EXTENDED monitors for logging on to the DDC servers and Web Interface servers, respectively.
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* Set of IP addresses expected in the monitoring response from the DNS server, if the record type is A or AAAA. Applicable to DNS monitors.
	 */
	Ipaddress []string `json:"ipaddress,omitempty"`
	/**
	* Name of a newsgroup available on the NNTP service that is to be monitored. The appliance periodically generates an NNTP query for the name of the newsgroup and evaluates the response. If the newsgroup is found on the server, the service is marked as UP. If the newsgroup does not exist or if the search fails, the service is marked as DOWN. Applicable to NNTP monitors.
	 */
	Group string `json:"group,omitempty"`
	/**
	* Name of a file on the FTP server. The appliance monitors the FTP service by periodically checking the existence of the file on the server. Applicable to FTP-EXTENDED monitors.
	 */
	Filename string `json:"filename,omitempty"`
	/**
	* The base distinguished name of the LDAP service, from where the LDAP server can begin the search for the attributes in the monitoring query. Required for LDAP service monitoring.
	 */
	Basedn string `json:"basedn,omitempty"`
	/**
	* The distinguished name with which an LDAP monitor can perform the Bind operation on the LDAP server. Optional. Applicable to LDAP monitors.
	 */
	Binddn string `json:"binddn,omitempty"`
	/**
	* Filter criteria for the LDAP query. Optional.
	 */
	Filter string `json:"filter,omitempty"`
	/**
	* Attribute to evaluate when the LDAP server responds to the query. Success or failure of the monitoring probe depends on whether the attribute exists in the response. Optional.
	 */
	Attribute string `json:"attribute,omitempty"`
	/**
	* Name of the database to connect to during authentication.
	 */
	Database string `json:"database,omitempty"`
	/**
	* Name of the service identifier that is used to connect to the Oracle database during authentication.
	 */
	Oraclesid string `json:"oraclesid,omitempty"`
	/**
	* SQL query for a MYSQL-ECV or MSSQL-ECV monitor. Sent to the database server after the server authenticates the connection.
	 */
	Sqlquery string `json:"sqlquery,omitempty"`
	/**
	* Expression that evaluates the database server's response to a MYSQL-ECV or MSSQL-ECV monitoring query. Must produce a Boolean result. The result determines the state of the server. If the expression returns TRUE, the probe succeeds.
		For example, if you want the appliance to evaluate the error message to determine the state of the server, use the rule MYSQL.RES.ROW(10) .TEXT_ELEM(2).EQ("MySQL").
	*/
	Evalrule string `json:"evalrule,omitempty"`
	/**
	* Version of MSSQL server that is to be monitored.
	 */
	Mssqlprotocolversion string `json:"mssqlprotocolversion,omitempty"`
	/**
	* SNMP OID for SNMP monitors.
	 */
	Snmpoid string `json:"Snmpoid,omitempty"`
	/**
	* Community name for SNMP monitors.
	 */
	Snmpcommunity string `json:"snmpcommunity,omitempty"`
	/**
	* Threshold for SNMP monitors.
	 */
	Snmpthreshold string `json:"snmpthreshold,omitempty"`
	/**
	* SNMP version to be used for SNMP monitors.
	 */
	Snmpversion string `json:"snmpversion,omitempty"`
	/**
	* Metric table to which to bind metrics.
	 */
	Metrictable string `json:"metrictable,omitempty"`
	/**
	* Name of the application used to determine the state of the service. Applicable to monitors of type CITRIX-XML-SERVICE.
	 */
	Application string `json:"application,omitempty"`
	/**
	* URL of the logon page. For monitors of type CITRIX-WEB-INTERFACE, to monitor a dynamic page under the site path, terminate the site path with a slash (/). Applicable to CITRIX-WEB-INTERFACE, CITRIX-WI-EXTENDED and CITRIX-XDM monitors.
	 */
	Sitepath string `json:"sitepath,omitempty"`
	/**
	* Store Name. For monitors of type STOREFRONT, STORENAME is an optional argument defining storefront service store name. Applicable to STOREFRONT monitors.
	 */
	Storename string `json:"storename,omitempty"`
	/**
	* Enable/Disable probing for Account Service. Applicable only to Store Front monitors. For multi-tenancy configuration users my skip account service
	 */
	Storefrontacctservice string `json:"storefrontacctservice,omitempty"`
	/**
	* Hostname in the FQDN format (Example: porche.cars.org). Applicable to STOREFRONT monitors.
	 */
	Hostname string `json:"hostname,omitempty"`
	/**
	* Name of the network profile.
	 */
	Netprofile string `json:"netprofile,omitempty"`
	/**
	* Origin-Host value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.
	 */
	Originhost string `json:"originhost,omitempty"`
	/**
	* Origin-Realm value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.
	 */
	Originrealm string `json:"originrealm,omitempty"`
	/**
	* Host-IP-Address value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. If Host-IP-Address is not specified, the appliance inserts the mapped IP (MIP) address or subnet IP (SNIP) address from which the CER request (the monitoring probe) is sent.
	 */
	Hostipaddress string `json:"hostipaddress,omitempty"`
	/**
	* Vendor-Id value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.
	 */
	Vendorid int `json:"vendorid,omitempty"`
	/**
	* Product-Name value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.
	 */
	Productname string `json:"productname,omitempty"`
	/**
	* Firmware-Revision value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.
	 */
	Firmwarerevision int `json:"firmwarerevision,omitempty"`
	/**
	* List of Auth-Application-Id attribute value pairs (AVPs) for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. A maximum of eight of these AVPs are supported in a monitoring CER message.
	 */
	Authapplicationid []int `json:"authapplicationid,omitempty"`
	/**
	* List of Acct-Application-Id attribute value pairs (AVPs) for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. A maximum of eight of these AVPs are supported in a monitoring message.
	 */
	Acctapplicationid []int `json:"acctapplicationid,omitempty"`
	/**
	* Inband-Security-Id for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.
	 */
	Inbandsecurityid string `json:"inbandsecurityid,omitempty"`
	/**
	* List of Supported-Vendor-Id attribute value pairs (AVPs) for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. A maximum eight of these AVPs are supported in a monitoring message.
	 */
	Supportedvendorids []int `json:"supportedvendorids,omitempty"`
	/**
	* Vendor-Id to use in the Vendor-Specific-Application-Id grouped attribute-value pair (AVP) in the monitoring CER message. To specify Auth-Application-Id or Acct-Application-Id in Vendor-Specific-Application-Id, use vendorSpecificAuthApplicationIds or vendorSpecificAcctApplicationIds, respectively. Only one Vendor-Id is supported for all the Vendor-Specific-Application-Id AVPs in a CER monitoring message.
	 */
	Vendorspecificvendorid int `json:"vendorspecificvendorid,omitempty"`
	/**
	* List of Vendor-Specific-Auth-Application-Id attribute value pairs (AVPs) for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. A maximum of eight of these AVPs are supported in a monitoring message. The specified value is combined with the value of vendorSpecificVendorId to obtain the Vendor-Specific-Application-Id AVP in the CER monitoring message.
	 */
	Vendorspecificauthapplicationids []int `json:"vendorspecificauthapplicationids,omitempty"`
	/**
	* List of Vendor-Specific-Acct-Application-Id attribute value pairs (AVPs) to use for monitoring Diameter servers. A maximum of eight of these AVPs are supported in a monitoring message. The specified value is combined with the value of vendorSpecificVendorId to obtain the Vendor-Specific-Application-Id AVP in the CER monitoring message.
	 */
	Vendorspecificacctapplicationids []int `json:"vendorspecificacctapplicationids,omitempty"`
	/**
	* KCD Account used by MSSQL monitor
	 */
	Kcdaccount string `json:"kcdaccount,omitempty"`
	/**
	* Store the database list populated with the responses to monitor probes. Used in database specific load balancing if MSSQL-ECV/MYSQL-ECV  monitor is configured.
	 */
	Storedb string `json:"storedb,omitempty"`
	/**
	* This option will enable monitoring of services running on storefront server. Storefront services are monitored by probing to a Windows service that runs on the Storefront server and exposes details of which storefront services are running.
	 */
	Storefrontcheckbackendservices string `json:"storefrontcheckbackendservices,omitempty"`
	/**
	* Code expected when the server is under maintenance
	 */
	Trofscode int `json:"trofscode,omitempty"`
	/**
	* String expected from the server for the service to be marked as trofs. Applicable to HTTP-ECV/TCP-ECV monitors.
	 */
	Trofsstring string `json:"trofsstring,omitempty"`
	/**
	* SSL Profile associated with the monitor
	 */
	Sslprofile string `json:"sslprofile,omitempty"`
	/**
	* Client id to be used in Connect command
	 */
	Mqttclientidentifier string `json:"mqttclientidentifier,omitempty"`
	/**
	* Version of MQTT protocol used in connect message, default is version 3.1.1 [4]
	 */
	Mqttversion int `json:"mqttversion,omitempty"`
	/**
	* Metric name in the metric table, whose setting is changed. A value zero disables the metric and it will not be used for load calculation
	 */
	Metric string `json:"metric,omitempty"`
	/**
	* Threshold to be used for that metric.
	 */
	Metricthreshold int `json:"metricthreshold,omitempty"`
	/**
	* The weight for the specified service metric with respect to others.
	 */
	Metricweight int `json:"metricweight,omitempty"`
	/**
	* The name of the service to which the monitor is bound.
	 */
	Servicename string `json:"servicename,omitempty"`
	/**
	* The name of the service group to which the monitor is to be bound.
	 */
	Servicegroupname string `json:"servicegroupname,omitempty"`

	Lrtmconf               string `json:"lrtmconf,omitempty"`
	Lrtmconfstr            string `json:"lrtmconfstr,omitempty"`
	Dynamicresponsetimeout string `json:"dynamicresponsetimeout,omitempty"`
	Dynamicinterval        string `json:"dynamicinterval,omitempty"`
	Multimetrictable       string `json:"multimetrictable,omitempty"`
	Dupstate               string `json:"dup_state,omitempty"`
	Dupweight              string `json:"dup_weight,omitempty"`
	Weight                 string `json:"weight,omitempty"`
}

* * Configuration for monitor resource.

type Lbmonitorbinding

type Lbmonitorbinding struct {
	/**
	* Name of the monitor.<br/>Minimum value =
	 */
	Monitorname string `json:"monitorname,omitempty"`
}

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

type Lbmonitorcertkeybinding

type Lbmonitorcertkeybinding struct {
	/**
	* The name of the certificate bound to the monitor.
	 */
	Certkeyname string `json:"certkeyname,omitempty"`
	/**
	* The rule for use of CRL corresponding to this CA certificate during client authentication. If crlCheck is set to Mandatory, the system will deny all SSL clients if the CRL is missing, expired - NextUpdate date is in the past, or is incomplete with remote CRL refresh enabled. If crlCheck is set to optional, the system will allow SSL clients in the above error cases.However, in any case if the client certificate is revoked in the CRL, the SSL client will be denied access.
	 */
	Ca bool `json:"ca,omitempty"`
	/**
	* The state of the CRL check parameter. (Mandatory/Optional)
	 */
	Crlcheck string `json:"crlcheck,omitempty"`
	/**
	* The state of the OCSP check parameter. (Mandatory/Optional)
	 */
	Ocspcheck string `json:"ocspcheck,omitempty"`
	/**
	* Name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`
}

* * Binding class showing the certkey that can be bound to lbmonitor.

type Lbmonitormetricbinding

type Lbmonitormetricbinding struct {
	/**
	* Metric name in the metric table, whose setting is changed. A value zero disables the metric and it will not be used for load calculation
	 */
	Metric string `json:"metric,omitempty"`
	/**
	* Metric table to which to bind metrics.
	 */
	Metrictable string `json:"metrictable,omitempty"`
	/**
	* Giving the unit of the metric
	 */
	Metricunit string `json:"metric_unit,omitempty"`
	/**
	* The weight for the specified service metric with respect to others.
	 */
	Metricweight int `json:"metricweight,omitempty"`
	/**
	* Threshold to be used for that metric.
	 */
	Metricthreshold int `json:"metricthreshold,omitempty"`
	/**
	* Name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`
}

* * Binding class showing the metric that can be bound to lbmonitor.

type Lbmonitorservicebinding

type Lbmonitorservicebinding struct {
	/**
	* Name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`
	/**
	* Name of the service or service group.
	 */
	Servicename string `json:"servicename,omitempty"`
	/**
	* State of the monitor. The state setting for a monitor of a given type affects all monitors of that type. For example, if an HTTP monitor is enabled, all HTTP monitors on the appliance are (or remain) enabled. If an HTTP monitor is disabled, all HTTP monitors on the appliance are disabled.
	 */
	Dupstate string `json:"dup_state,omitempty"`
	/**
	* Weight to assign to the binding between the monitor and service.
	 */
	Dupweight int `json:"dup_weight,omitempty"`
	/**
	* Name of the service group.
	 */
	Servicegroupname string `json:"servicegroupname,omitempty"`
	/**
	* State of the monitor. The state setting for a monitor of a given type affects all monitors of that type. For example, if an HTTP monitor is enabled, all HTTP monitors on the appliance are (or remain) enabled. If an HTTP monitor is disabled, all HTTP monitors on the appliance are disabled.
	 */
	State string `json:"state,omitempty"`
	/**
	* Weight to assign to the binding between the monitor and service.
	 */
	Weight int `json:"weight,omitempty"`
}

* * Binding class showing the service that can be bound to lbmonitor.

type Lbmonitorservicegroupbinding

type Lbmonitorservicegroupbinding struct {
	/**
	* Name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`
	/**
	* Name of the service or service group.
	 */
	Servicename string `json:"servicename,omitempty"`
	/**
	* State of the monitor. The state setting for a monitor of a given type affects all monitors of that type. For example, if an HTTP monitor is enabled, all HTTP monitors on the appliance are (or remain) enabled. If an HTTP monitor is disabled, all HTTP monitors on the appliance are disabled.
	 */
	Dupstate string `json:"dup_state,omitempty"`
	/**
	* Weight to assign to the binding between the monitor and service.
	 */
	Dupweight int `json:"dup_weight,omitempty"`
	/**
	* Name of the service group.
	 */
	Servicegroupname string `json:"servicegroupname,omitempty"`
	/**
	* State of the monitor. The state setting for a monitor of a given type affects all monitors of that type. For example, if an HTTP monitor is enabled, all HTTP monitors on the appliance are (or remain) enabled. If an HTTP monitor is disabled, all HTTP monitors on the appliance are disabled.
	 */
	State string `json:"state,omitempty"`
	/**
	* Weight to assign to the binding between the monitor and service.
	 */
	Weight int `json:"weight,omitempty"`
}

* * Binding class showing the servicegroup that can be bound to lbmonitor.

type Lbmonitorsslcertkeybinding

type Lbmonitorsslcertkeybinding struct {
	/**
	* The name of the certificate bound to the monitor.
	 */
	Certkeyname string `json:"certkeyname,omitempty"`
	/**
	* The rule for use of CRL corresponding to this CA certificate during client authentication. If crlCheck is set to Mandatory, the system will deny all SSL clients if the CRL is missing, expired - NextUpdate date is in the past, or is incomplete with remote CRL refresh enabled. If crlCheck is set to optional, the system will allow SSL clients in the above error cases.However, in any case if the client certificate is revoked in the CRL, the SSL client will be denied access.
	 */
	Ca bool `json:"ca,omitempty"`
	/**
	* The state of the CRL check parameter. (Mandatory/Optional)
	 */
	Crlcheck string `json:"crlcheck,omitempty"`
	/**
	* The state of the OCSP check parameter. (Mandatory/Optional)
	 */
	Ocspcheck string `json:"ocspcheck,omitempty"`
	/**
	* Name of the monitor.
	 */
	Monitorname string `json:"monitorname,omitempty"`
}

* * Binding class showing the sslcertkey that can be bound to lbmonitor.

type Lbparameter

type Lbparameter struct {
	/**
	* Include the HttpOnly attribute in persistence cookies. The HttpOnly attribute limits the scope of a cookie to HTTP requests and helps mitigate the risk of cross-site scripting attacks.
	 */
	Httponlycookieflag string `json:"httponlycookieflag,omitempty"`
	/**
	* Encode persistence cookie values using SHA2 hash.
	 */
	Usesecuredpersistencecookie string `json:"usesecuredpersistencecookie,omitempty"`
	/**
	* Encode persistence cookie values using SHA2 hash.
	 */
	Useencryptedpersistencecookie string `json:"useencryptedpersistencecookie,omitempty"`
	/**
	* Use this parameter to specify the passphrase used to generate secured persistence cookie value. It specifies the passphrase with a maximum of 31 characters.
	 */
	Cookiepassphrase string `json:"cookiepassphrase,omitempty"`
	/**
	* To find the service with the fewest connections, the virtual server uses the consolidated connection statistics from all the packet engines. The NO setting allows consideration of only the number of connections on the packet engine that received the new connection.
	 */
	Consolidatedlconn string `json:"consolidatedlconn,omitempty"`
	/**
	* Include the port number of the service when creating a hash for hash based load balancing methods. With the NO setting, only the IP address of the service is considered when creating a hash.
	 */
	Useportforhashlb string `json:"useportforhashlb,omitempty"`
	/**
	* Perform route lookup for traffic received by the Citrix ADC, and forward the traffic according to configured routes. Do not set this parameter if you want a wildcard virtual server to direct packets received by the appliance to an intermediary device, such as a firewall, even if their destination is directly connected to the appliance. Route lookup is performed after the packets have been processed and returned by the intermediary device.
	 */
	Preferdirectroute string `json:"preferdirectroute,omitempty"`
	/**
	* Number of requests, per service, for which to apply the round robin load balancing method before switching to the configured load balancing method, thus allowing services to ramp up gradually to full load. Until the specified number of requests is distributed, the Citrix ADC is said to be implementing the slow start mode (or startup round robin). Implemented for a virtual server when one of the following is true:
		* The virtual server is newly created.
		* One or more services are newly bound to the virtual server.
		* One or more services bound to the virtual server are enabled.
		* The load balancing method is changed.
		This parameter applies to all the load balancing virtual servers configured on the Citrix ADC, except for those virtual servers for which the virtual server-level slow start parameters (New Service Startup Request Rate and Increment Interval) are configured. If the global slow start parameter and the slow start parameters for a given virtual server are not set, the appliance implements a default slow start for the virtual server, as follows:
		* For a newly configured virtual server, the appliance implements slow start for the first 100 requests received by the virtual server.
		* For an existing virtual server, if one or more services are newly bound or newly enabled, or if the load balancing method is changed, the appliance dynamically computes the number of requests for which to implement startup round robin. It obtains this number by multiplying the request rate by the number of bound services (it includes services that are marked as DOWN). For example, if the current request rate is 20 requests/s and ten services are bound to the virtual server, the appliance performs startup round robin for 200 requests.
		Not applicable to a virtual server for which a hash based load balancing method is configured.
	*/
	Startuprrfactor int `json:"startuprrfactor,omitempty"`
	/**
	* When a monitor initiates a connection to a service, do not check to determine whether the number of connections to the service has reached the limit specified by the service's Max Clients setting. Enables monitoring to continue even if the service has reached its connection limit.
	 */
	Monitorskipmaxclient string `json:"monitorskipmaxclient,omitempty"`
	/**
	* Close monitoring connections by sending the service a connection termination message with the specified bit set.
	 */
	Monitorconnectionclose string `json:"monitorconnectionclose,omitempty"`
	/**
	* Allow a MAC-mode virtual server to accept traffic returned by an intermediary device, such as a firewall, to which the traffic was previously forwarded by another MAC-mode virtual server. The second virtual server can then distribute that traffic across the destination server farm. Also useful when load balancing Branch Repeater appliances.
		Note: The second virtual server can also send the traffic to another set of intermediary devices, such as another set of firewalls. If necessary, you can configure multiple MAC-mode virtual servers to pass traffic successively through multiple sets of intermediary devices.
	*/
	Vserverspecificmac string `json:"vserverspecificmac,omitempty"`
	/**
	* This is used, to enable/disable the option of svc/svcgroup removal, if it is bound to one or more vserver. If it is enabled, the svc/svcgroup can be removed, even if it bound to vservers. If disabled, an error will be thrown, when the user tries to remove a svc/svcgroup without unbinding from its vservers.
	 */
	Allowboundsvcremoval string `json:"allowboundsvcremoval,omitempty"`
	/**
	* This option is used to retain the original state of service or servicegroup member when an enable server command is issued.
	 */
	Retainservicestate string `json:"retainservicestate,omitempty"`
	/**
	* Specify the TTL for DNS record for domain based service. The default value of ttl is 0 which indicates to use the TTL received in DNS response for monitors
	 */
	Dbsttl int `json:"dbsttl,omitempty"`
	/**
	* Maximum number of concurrent requests to allow on a single client connection, which is identified by the <clientip:port>-<vserver ip:port> tuple. This parameter is applicable to ANY service type and all UDP service types (except DNS) and only when "svrTimeout" is set to zero. A value of 0 (zero) applies no limit to the number of concurrent requests allowed on a single client connection
	 */
	Maxpipelinenat int `json:"maxpipelinenat,omitempty"`
	/**
	* String configured as LiteralADCCookieAttribute will be appended as attribute for Citrix ADC cookie (for example: LB cookie persistence , GSLB site persistence, CS cookie persistence, LB group cookie persistence).
		Sample usage -
		set lb parameter -LiteralADCCookieAttribute ";SameSite=None"
	*/
	Literaladccookieattribute string `json:"literaladccookieattribute,omitempty"`
	/**
	* ComputedADCCookieAttribute accepts ns variable as input in form of string starting with $ (to understand how to configure ns variable, please check man add ns variable). policies can be configured to modify this variable for every transaction and the final value of the variable after policy evaluation will be appended as attribute to Citrix ADC cookie (for example: LB cookie persistence , GSLB sitepersistence, CS cookie persistence, LB group cookie persistence). Only one of ComputedADCCookieAttribute, LiteralADCCookieAttribute can be set.
		Sample usage -
		add ns variable lbvar -type TEXT(100) -scope Transaction
		add ns assignment lbassign -variable $lbvar -set "\\";SameSite=Strict\\""
		add rewrite policy lbpol <valid policy expression> lbassign
		bind rewrite global lbpol 100 next -type RES_OVERRIDE
		set lb param -ComputedADCCookieAttribute "$lbvar"
		For incoming client request, if above policy evaluates TRUE, then SameSite=Strict will be appended to ADC generated cookie
	*/
	Computedadccookieattribute string `json:"computedadccookieattribute,omitempty"`
	/**
	* This option allows to store the MQTT clientid and username in transactional logs
	 */
	Storemqttclientidandusername string `json:"storemqttclientidandusername,omitempty"`
	/**
	* When this option is enabled, MQTT messages of length greater than 64k will be dropped and the client/server connections will be reset.
	 */
	Dropmqttjumbomessage string `json:"dropmqttjumbomessage,omitempty"`
	/**
	* This option dictates the hashing algorithm used for hash based LB methods (URLHASH, DOMAINHASH, SOURCEIPHASH, DESTINATIONIPHASH, SRCIPDESTIPHASH, SRCIPSRCPORTHASH, TOKEN, USER_TOKEN, CALLIDHASH).
	 */
	Lbhashalgorithm string `json:"lbhashalgorithm,omitempty"`
	/**
	* This option is used to specify the number of fingers to be used in PRAC and JARH algorithms for hash based LB methods. Increasing the number of fingers might give better distribution of traffic at the expense of additional memory
	 */
	Lbhashfingers int `json:"lbhashfingers,omitempty"`

	Sessionsthreshold            string `json:"sessionsthreshold,omitempty"`
	Builtin                      string `json:"builtin,omitempty"`
	Feature                      string `json:"feature,omitempty"`
	Adccookieattributewarningmsg string `json:"adccookieattributewarningmsg,omitempty"`
	Lbhashalgowinsize            string `json:"lbhashalgowinsize,omitempty"`
}

* * Configuration for LB parameter resource.

type Lbpersistentsessions

type Lbpersistentsessions struct {
	/**
	* The name of the virtual server.
	 */
	Vserver string `json:"vserver,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`
	/**
	* The persistence parameter whose persistence sessions are to be flushed.
	 */
	Persistenceparameter string `json:"persistenceparameter,omitempty"`

	Type             string `json:"type,omitempty"`
	Typestring       string `json:"typestring,omitempty"`
	Srcip            string `json:"srcip,omitempty"`
	Srcipv6          string `json:"srcipv6,omitempty"`
	Destip           string `json:"destip,omitempty"`
	Destipv6         string `json:"destipv6,omitempty"`
	Flags            string `json:"flags,omitempty"`
	Destport         string `json:"destport,omitempty"`
	Vservername      string `json:"vservername,omitempty"`
	Timeout          string `json:"timeout,omitempty"`
	Referencecount   string `json:"referencecount,omitempty"`
	Persistenceparam string `json:"persistenceparam,omitempty"`
	Cnamepersparam   string `json:"cnamepersparam,omitempty"`
}

* * Configuration for persistence session resource.

type Lbpolicy

type Lbpolicy struct {
	/**
	* Name of the LB policy.
	* 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. Can be changed after the LB 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 lb policy" or 'my lb policy').
	 */
	Name string `json:"name,omitempty"`
	/**
	* Expression against which traffic is evaluated.
	 */
	Rule string `json:"rule,omitempty"`
	/**
	* Name of action to use if the request matches this LB policy.
	 */
	Action string `json:"action,omitempty"`
	/**
	* Action to perform if the result of policy evaluation is undefined (UNDEF). An UNDEF event indicates an internal error condition. Available settings function as follows:
	* NOLBACTION - Does not consider LB actions in making LB decision.
	* RESET - Reset the request and notify the user, so that the user can resend the request.
	* DROP - Drop the request without sending a response to the user.
	 */
	Undefaction string `json:"undefaction,omitempty"`
	/**
	* Name of the messagelog action to use for requests that match this policy.
	 */
	Logaction string `json:"logaction,omitempty"`
	/**
	* Any type of information about this LB policy.
	 */
	Comment string `json:"comment,omitempty"`
	/**
	* New name for the LB policy. 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.
	* 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 lb policy" or 'my lb policy').
	* Minimum length = 1
	 */
	Newname string `json:"newname,omitempty"`
}

* * Configuration for lb policy resource.

type Lbprofile

type Lbprofile struct {
	/**
	* Name of the LB profile.
	 */
	Lbprofilename string `json:"lbprofilename,omitempty"`
	/**
	* Enable database specific load balancing for MySQL and MSSQL service types.
	 */
	Dbslb string `json:"dbslb,omitempty"`
	/**
	* By turning on this option packets destined to a vserver in a cluster will not under go any steering. Turn this option for single pa
		cket request response mode or when the upstream device is performing a proper RSS for connection based distribution.
	*/
	Processlocal string `json:"processlocal,omitempty"`
	/**
	* Include the HttpOnly attribute in persistence cookies. The HttpOnly attribute limits the scope of a cookie to HTTP requests and helps mitigate the risk of cross-site scripting attacks.
	 */
	Httponlycookieflag string `json:"httponlycookieflag,omitempty"`
	/**
	* Use this parameter to specify the passphrase used to generate secured persistence cookie value. It specifies the passphrase with a maximum of 31 characters.
	 */
	Cookiepassphrase string `json:"cookiepassphrase,omitempty"`
	/**
	* Encode persistence cookie values using SHA2 hash.
	 */
	Usesecuredpersistencecookie string `json:"usesecuredpersistencecookie,omitempty"`
	/**
	* Encode persistence cookie values using SHA2 hash.
	 */
	Useencryptedpersistencecookie string `json:"useencryptedpersistencecookie,omitempty"`
	/**
	* String configured as LiteralADCCookieAttribute will be appended as attribute for Citrix ADC cookie (for example: LB cookie persistence , GSLB site persistence, CS cookie persistence, LB group cookie persistence).
		Sample usage -
		add lb profile lbprof -LiteralADCCookieAttribute ";SameSite=None"
	*/
	Literaladccookieattribute string `json:"literaladccookieattribute,omitempty"`
	/**
	* ComputedADCCookieAttribute accepts ns variable as input in form of string starting with $ (to understand how to configure ns variable, please check man add ns variable). policies can be configured to modify this variable for every transaction and the final value of the variable after policy evaluation will be appended as attribute to Citrix ADC cookie (for example: LB cookie persistence , GSLB sitepersistence, CS cookie persistence, LB group cookie persistence). Only one of ComputedADCCookieAttribute, LiteralADCCookieAttribute can be set.
		Sample usage -
		add ns variable lbvar -type TEXT(100) -scope Transaction
		add ns assignment lbassign -variable $lbvar -set "\\";SameSite=Strict\\""
		add rewrite policy lbpol <valid policy expression> lbassign
		bind rewrite global lbpol 100 next -type RES_OVERRIDE
		add lb profile lbprof -ComputedADCCookieAttribute "$lbvar"
		For incoming client request, if above policy evaluates TRUE, then SameSite=Strict will be appended to ADC generated cookie
	*/
	Computedadccookieattribute string `json:"computedadccookieattribute,omitempty"`
	/**
	* This option allows to store the MQTT clientid and username in transactional logs
	 */
	Storemqttclientidandusername string `json:"storemqttclientidandusername,omitempty"`
	/**
	* This option dictates the hashing algorithm used for hash based LB methods (URLHASH, DOMAINHASH, SOURCEIPHASH, DESTINATIONIPHASH, SRCIPDESTIPHASH, SRCIPSRCPORTHASH, TOKEN, USER_TOKEN, CALLIDHASH).
	 */
	Lbhashalgorithm string `json:"lbhashalgorithm,omitempty"`
	/**
	* This option is used to specify the number of fingers to be used in PRAC and JARH algorithms for hash based LB methods. Increasing the number of fingers might give better distribution of traffic at the expense of additional memory.
	 */
	Lbhashfingers int `json:"lbhashfingers,omitempty"`

	Vsvrcount                    string `json:"vsvrcount,omitempty"`
	Adccookieattributewarningmsg string `json:"adccookieattributewarningmsg,omitempty"`
	Lbhashalgowinsize            string `json:"lbhashalgowinsize,omitempty"`
}

* * Configuration for LB profile resource.

type Lbroute

type Lbroute struct {
	/**
	* The IP address of the network to which the route belongs.
	 */
	Network string `json:"network,omitempty"`
	/**
	* The netmask to which the route belongs.
	 */
	Netmask string `json:"netmask,omitempty"`
	/**
	* The name of the route.
	 */
	Gatewayname string `json:"gatewayname,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"`

	Flags string `json:"flags,omitempty"`
}

* * Configuration for LB route resource.

type Lbroute6

type Lbroute6 struct {
	/**
	* The destination network.
	 */
	Network string `json:"network,omitempty"`
	/**
	* The name of the route.
	 */
	Gatewayname string `json:"gatewayname,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"`

	Flags string `json:"flags,omitempty"`
}

* * Configuration for LB route6 resource.

type Lbsipparameters

type Lbsipparameters struct {
	/**
	* Port number with which to match the source port in server-initiated SIP traffic. The rport parameter is added, without a value, to SIP packets that have a matching source port number, and CALL-ID based persistence is implemented for the responses received by the virtual server.
	 */
	Rnatsrcport int `json:"rnatsrcport,omitempty"`
	/**
	* Port number with which to match the destination port in server-initiated SIP traffic. The rport parameter is added, without a value, to SIP packets that have a matching destination port number, and CALL-ID based persistence is implemented for the responses received by the virtual server.
	 */
	Rnatdstport int `json:"rnatdstport,omitempty"`
	/**
	* Time, in seconds, for which a client must wait before initiating a connection after receiving a 503 Service Unavailable response from the SIP server. The time value is sent in the "Retry-After" header in the 503 response.
	 */
	Retrydur int `json:"retrydur,omitempty"`
	/**
	* Add the rport parameter to the VIA headers of SIP requests that virtual servers receive from clients or servers.
	 */
	Addrportvip string `json:"addrportvip,omitempty"`
	/**
	* Maximum number of 503 Service Unavailable responses to generate, once every 10 milliseconds, when a SIP virtual server becomes unavailable.
	 */
	Sip503ratethreshold int `json:"sip503ratethreshold,omitempty"`
	/**
	* Port number with which to match the source port in server-initiated SIP over SSL traffic. The rport parameter is added, without a value, to SIP packets that have a matching source port number, and CALL-ID based persistence is implemented for the responses received by the virtual server.
	 */
	Rnatsecuresrcport int `json:"rnatsecuresrcport,omitempty"`
	/**
	* Port number with which to match the destination port in server-initiated SIP over SSL traffic. The rport parameter is added, without a value, to SIP packets that have a matching destination port number, and CALL-ID based persistence is implemented for the responses received by the virtual server.
	 */
	Rnatsecuredstport int `json:"rnatsecuredstport,omitempty"`

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

* * Configuration for SIP parameters resource.

type Lbvserver

type Lbvserver struct {
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Protocol used by the service (also called the service type).
	 */
	Servicetype string `json:"servicetype,omitempty"`
	/**
	* IPv4 or IPv6 address to assign to the virtual server.
	 */
	Ipv46 string `json:"ipv46,omitempty"`
	/**
	* IP address pattern, in dotted decimal notation, for identifying packets to be accepted by the virtual server. The IP Mask parameter specifies which part of the destination IP address is matched against the pattern.  Mutually exclusive with the IP Address parameter.
		For example, if the IP pattern assigned to the virtual server is 198.51.100.0 and the IP mask is 255.255.240.0 (a forward mask), the first 20 bits in the destination IP addresses are matched with the first 20 bits in the pattern. The virtual server accepts requests with IP addresses that range from 198.51.96.1 to 198.51.111.254.  You can also use a pattern such as 0.0.2.2 and a mask such as 0.0.255.255 (a reverse mask).
		If a destination IP address matches more than one IP pattern, the pattern with the longest match is selected, and the associated virtual server processes the request. For example, if virtual servers vs1 and vs2 have the same IP pattern, 0.0.100.128, but different IP masks of 0.0.255.255 and 0.0.224.255, a destination IP address of 198.51.100.128 has the longest match with the IP pattern of vs1. If a destination IP address matches two or more virtual servers to the same extent, the request is processed by the virtual server whose port number matches the port number in the request.
	*/
	Ippattern string `json:"ippattern,omitempty"`
	/**
	* IP mask, in dotted decimal notation, for the IP Pattern parameter. Can have leading or trailing non-zero octets (for example, 255.255.240.0 or 0.0.255.255). Accordingly, the mask specifies whether the first n bits or the last n bits of the destination IP address in a client request are to be matched with the corresponding bits in the IP pattern. The former is called a forward mask. The latter is called a reverse mask.
	 */
	Ipmask string `json:"ipmask,omitempty"`
	/**
	* Port number for the virtual server.
	 */
	Port int `json:"port,omitempty"`
	/**
	* The list of IPv4/IPv6 addresses bound to ipset would form a part of listening service on the current lb vserver
	 */
	Ipset string `json:"ipset,omitempty"`
	/**
	* Number of IP addresses that the appliance must generate and assign to the virtual server. The virtual server then functions as a network virtual server, accepting traffic on any of the generated IP addresses. The IP addresses are generated automatically, as follows:
		* For a range of n, the last octet of the address specified by the IP Address parameter increments n-1 times.
		* If the last octet exceeds 255, it rolls over to 0 and the third octet increments by 1.
		Note: The Range parameter assigns multiple IP addresses to one virtual server. To generate an array of virtual servers, each of which owns only one IP address, use brackets in the IP Address and Name parameters to specify the range. For example:
		add lb vserver my_vserver[1-3] HTTP 192.0.2.[1-3] 80
	*/
	Range int `json:"range,omitempty"`
	/**
	* Type of persistence for the virtual server. Available settings function as follows:
		* SOURCEIP - Connections from the same client IP address belong to the same persistence session.
		* COOKIEINSERT - Connections that have the same HTTP Cookie, inserted by a Set-Cookie directive from a server, belong to the same persistence session.
		* SSLSESSION - Connections that have the same SSL Session ID belong to the same persistence session.
		* CUSTOMSERVERID - Connections with the same server ID form part of the same session. For this persistence type, set the Server ID (CustomServerID) parameter for each service and configure the Rule parameter to identify the server ID in a request.
		* RULE - All connections that match a user defined rule belong to the same persistence session.
		* URLPASSIVE - Requests that have the same server ID in the URL query belong to the same persistence session. The server ID is the hexadecimal representation of the IP address and port of the service to which the request must be forwarded. This persistence type requires a rule to identify the server ID in the request.
		* DESTIP - Connections to the same destination IP address belong to the same persistence session.
		* SRCIPDESTIP - Connections that have the same source IP address and destination IP address belong to the same persistence session.
		* CALLID - Connections that have the same CALL-ID SIP header belong to the same persistence session.
		* RTSPSID - Connections that have the same RTSP Session ID belong to the same persistence session.
		* FIXSESSION - Connections that have the same SenderCompID and TargetCompID values belong to the same persistence session.
		* USERSESSION - Persistence session is created based on the persistence parameter value provided from an extension.
	*/
	Persistencetype string `json:"persistencetype,omitempty"`
	/**
	* Time period for which a persistence session is in effect.
	 */
	Timeout int `json:"timeout,omitempty"`
	/**
	* Backup persistence type for the virtual server. Becomes operational if the primary persistence mechanism fails.
	 */
	Persistencebackup string `json:"persistencebackup,omitempty"`
	/**
	* Time period for which backup persistence is in effect.
	 */
	Backuppersistencetimeout int `json:"backuppersistencetimeout,omitempty"`
	/**
	* Load balancing method.  The available settings function as follows:
		* ROUNDROBIN - Distribute requests in rotation, regardless of the load. Weights can be assigned to services to enforce weighted round robin distribution.
		* LEASTCONNECTION (default) - Select the service with the fewest connections.
		* LEASTRESPONSETIME - Select the service with the lowest average response time.
		* LEASTBANDWIDTH - Select the service currently handling the least traffic.
		* LEASTPACKETS - Select the service currently serving the lowest number of packets per second.
		* CUSTOMLOAD - Base service selection on the SNMP metrics obtained by custom load monitors.
		* LRTM - Select the service with the lowest response time. Response times are learned through monitoring probes. This method also takes the number of active connections into account.
		Also available are a number of hashing methods, in which the appliance extracts a predetermined portion of the request, creates a hash of the portion, and then checks whether any previous requests had the same hash value. If it finds a match, it forwards the request to the service that served those previous requests. Following are the hashing methods:
		* URLHASH - Create a hash of the request URL (or part of the URL).
		* DOMAINHASH - Create a hash of the domain name in the request (or part of the domain name). The domain name is taken from either the URL or the Host header. If the domain name appears in both locations, the URL is preferred. If the request does not contain a domain name, the load balancing method defaults to LEASTCONNECTION.
		* DESTINATIONIPHASH - Create a hash of the destination IP address in the IP header.
		* SOURCEIPHASH - Create a hash of the source IP address in the IP header.
		* TOKEN - Extract a token from the request, create a hash of the token, and then select the service to which any previous requests with the same token hash value were sent.
		* SRCIPDESTIPHASH - Create a hash of the string obtained by concatenating the source IP address and destination IP address in the IP header.
		* SRCIPSRCPORTHASH - Create a hash of the source IP address and source port in the IP header.
		* CALLIDHASH - Create a hash of the SIP Call-ID header.
		* USER_TOKEN - Same as TOKEN LB method but token needs to be provided from an extension.
	*/
	Lbmethod string `json:"lbmethod,omitempty"`
	/**
	* Number of bytes to consider for the hash value used in the URLHASH and DOMAINHASH load balancing methods.
	 */
	Hashlength int `json:"hashlength,omitempty"`
	/**
	* IPv4 subnet mask to apply to the destination IP address or source IP address when the load balancing method is DESTINATIONIPHASH or SOURCEIPHASH.
	 */
	Netmask string `json:"netmask,omitempty"`
	/**
	* Number of bits to consider in an IPv6 destination or source IP address, for creating the hash that is required by the DESTINATIONIPHASH and SOURCEIPHASH load balancing methods.
	 */
	V6netmasklen int `json:"v6netmasklen,omitempty"`
	/**
	* Backup load balancing method. Becomes operational if the primary load balancing me
		thod fails or cannot be used.
		Valid only if the primary method is based on static proximity.
	*/
	Backuplbmethod string `json:"backuplbmethod,omitempty"`
	/**
	* Use this parameter to specify the cookie name for COOKIE peristence type. It specifies the name of cookie with a maximum of 32 characters. If not specified, cookie name is internally generated.
	 */
	Cookiename string `json:"cookiename,omitempty"`
	/**
	* Expression, or name of a named expression, against which traffic is evaluated.
		The following requirements apply only to the Citrix ADC CLI:
		* If the expression includes one or more spaces, enclose the entire expression in double quotation marks.
		* If the expression itself includes double quotation marks, escape the quotations by using the \ character.
		* Alternatively, you can use single quotation marks to enclose the rule, in which case you do not have to escape the double quotation marks.
	*/
	Rule string `json:"rule,omitempty"`
	/**
	* Expression identifying traffic accepted by the virtual server. Can be either an expression (for example, CLIENT.IP.DST.IN_SUBNET(192.0.2.0/24) or the name of a named expression. In the above example, the virtual server accepts all requests whose destination IP address is in the 192.0.2.0/24 subnet.
	 */
	Listenpolicy string `json:"listenpolicy,omitempty"`
	/**
	* Integer specifying the priority of the listen policy. A higher number specifies a lower priority. If a request matches the listen policies of more than one virtual server the virtual server whose listen policy has the highest priority (the lowest priority number) accepts the request.
	 */
	Listenpriority int `json:"listenpriority,omitempty"`
	/**
	* Expression specifying which part of a server's response to use for creating rule based persistence sessions (persistence type RULE). Can be either an expression or the name of a named expression.
		Example:
		HTTP.RES.HEADER("setcookie").VALUE(0).TYPECAST_NVLIST_T('=',';').VALUE("server1").
	*/
	Resrule string `json:"resrule,omitempty"`
	/**
	* Persistence mask for IP based persistence types, for IPv4 virtual servers.
	 */
	Persistmask string `json:"persistmask,omitempty"`
	/**
	* Persistence mask for IP based persistence types, for IPv6 virtual servers.
	 */
	V6persistmasklen int `json:"v6persistmasklen,omitempty"`
	/**
	* Use priority queuing on the virtual server. based persistence types, for IPv6 virtual servers.
	 */
	Pq string `json:"pq,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,omitempty"`
	/**
	* Use network address translation (NAT) for RTSP data connections.
	 */
	Rtspnat string `json:"rtspnat,omitempty"`
	/**
	* Redirection mode for load balancing. Available settings function as follows:
		* IP - Before forwarding a request to a server, change the destination IP address to the server's IP address.
		* MAC - Before forwarding a request to a server, change the destination MAC address to the server's MAC address.  The destination IP address is not changed. MAC-based redirection mode is used mostly in firewall load balancing deployments.
		* IPTUNNEL - Perform IP-in-IP encapsulation for client IP packets. In the outer IP headers, set the destination IP address to the IP address of the server and the source IP address to the subnet IP (SNIP). The client IP packets are not modified. Applicable to both IPv4 and IPv6 packets.
		* TOS - Encode the virtual server's TOS ID in the TOS field of the IP header.
		You can use either the IPTUNNEL or the TOS option to implement Direct Server Return (DSR).
	*/
	M string `json:"m,omitempty"`
	/**
	* TOS ID of the virtual server. Applicable only when the load balancing redirection mode is set to TOS.
	 */
	Tosid int `json:"tosid,omitempty"`
	/**
	* Length of the token to be extracted from the data segment of an incoming packet, for use in the token method of load balancing. The length of the token, specified in bytes, must not be greater than 24 KB. Applicable to virtual servers of type TCP.
	 */
	Datalength int `json:"datalength,omitempty"`
	/**
	* Offset to be considered when extracting a token from the TCP payload. Applicable to virtual servers, of type TCP, using the token method of load balancing. Must be within the first 24 KB of the TCP payload.
	 */
	Dataoffset int `json:"dataoffset,omitempty"`
	/**
	* Perform load balancing on a per-packet basis, without establishing sessions. Recommended for load balancing of intrusion detection system (IDS) servers and scenarios involving direct server return (DSR), where session information is unnecessary.
	 */
	Sessionless string `json:"sessionless,omitempty"`
	/**
	* When value is ENABLED, Trofs persistence is honored. When value is DISABLED, Trofs persistence is not honored.
	 */
	Trofspersistence string `json:"trofspersistence,omitempty"`
	/**
	* State of the load balancing virtual server.
	 */
	State string `json:"state,omitempty"`
	/**
	* Mode in which the connection failover feature must operate for the virtual server. After a failover, established TCP connections and UDP packet flows are kept active and resumed on the secondary appliance. Clients remain connected to the same servers. Available settings function as follows:
		* STATEFUL - The primary appliance shares state information with the secondary appliance, in real time, resulting in some runtime processing overhead.
		* STATELESS - State information is not shared, and the new primary appliance tries to re-create the packet flow on the basis of the information contained in the packets it receives.
		* DISABLED - Connection failover does not occur.
	*/
	Connfailover string `json:"connfailover,omitempty"`
	/**
	* URL to which to redirect traffic if the virtual server becomes unavailable.
		WARNING! Make sure that the domain in the URL does not match the domain specified for a content switching policy. If it does, requests are continuously redirected to the unavailable virtual server.
	*/
	Redirurl string `json:"redirurl,omitempty"`
	/**
	* Route cacheable requests to a cache redirection virtual server. The load balancing virtual server can forward requests only to a transparent cache redirection virtual server that has an IP address and port combination of *:80, so such a cache redirection virtual server must be configured on the appliance.
	 */
	Cacheable string `json:"cacheable,omitempty"`
	/**
	* Idle time, in seconds, after which a client connection is terminated.
	 */
	Clttimeout int `json:"clttimeout,omitempty"`
	/**
	* Type of threshold that, when exceeded, triggers spillover. Available settings function as follows:
		* CONNECTION - Spillover occurs when the number of client connections exceeds the threshold.
		* DYNAMICCONNECTION - Spillover occurs when the number of client connections at the virtual server exceeds the sum of the maximum client (Max Clients) settings for bound services. Do not specify a spillover threshold for this setting, because the threshold is implied by the Max Clients settings of bound services.
		* BANDWIDTH - Spillover occurs when the bandwidth consumed by the virtual server's incoming and outgoing traffic exceeds the threshold.
		* HEALTH - Spillover occurs when the percentage of weights of the services that are UP drops below the threshold. For example, if services svc1, svc2, and svc3 are bound to a virtual server, with weights 1, 2, and 3, and the spillover threshold is 50%, spillover occurs if svc1 and svc3 or svc2 and svc3 transition to DOWN.
		* NONE - Spillover does not occur.
	*/
	Somethod string `json:"somethod,omitempty"`
	/**
	* If spillover occurs, maintain source IP address based persistence for both primary and backup virtual servers.
	 */
	Sopersistence string `json:"sopersistence,omitempty"`
	/**
	* Timeout for spillover persistence, in minutes.
	 */
	Sopersistencetimeout int `json:"sopersistencetimeout,omitempty"`
	/**
	* Threshold in percent of active services below which vserver state is made down. If this threshold is 0, vserver state will be up even if one bound service is up.
	 */
	Healththreshold int `json:"healththreshold,omitempty"`
	/**
	* Threshold at which spillover occurs. Specify an integer for the CONNECTION spillover method, a bandwidth value in kilobits per second for the BANDWIDTH method (do not enter the units), or a percentage for the HEALTH method (do not enter the percentage symbol).
	 */
	Sothreshold int `json:"sothreshold,omitempty"`
	/**
	* Action to be performed if spillover is to take effect, but no backup chain to spillover is usable or exists
	 */
	Sobackupaction string `json:"sobackupaction,omitempty"`
	/**
	* Rewrite the port and change the protocol to ensure successful HTTP redirects from services.
	 */
	Redirectportrewrite string `json:"redirectportrewrite,omitempty"`
	/**
	* Flush all active transactions associated with a virtual server whose state transitions from UP to DOWN. Do not enable this option for applications that must complete their transactions.
	 */
	Downstateflush string `json:"downstateflush,omitempty"`
	/**
	* Name of the backup virtual server to which to forward requests if the primary virtual server goes DOWN or reaches its spillover threshold.
	 */
	Backupvserver string `json:"backupvserver,omitempty"`
	/**
	* If the primary virtual server goes down, do not allow it to return to primary status until manually enabled.
	 */
	Disableprimaryondown string `json:"disableprimaryondown,omitempty"`
	/**
	* Insert an HTTP header, whose value is the IP address and port number of the virtual server, before forwarding a request to the server. The format of the header is <vipHeader>: <virtual server IP address>_<port number >, where vipHeader is the name that you specify for the header. If the virtual server has an IPv6 address, the address in the header is enclosed in brackets ([ and ]) to separate it from the port number. If you have mapped an IPv4 address to a virtual server's IPv6 address, the value of this parameter determines which IP address is inserted in the header, as follows:
		* VIPADDR - Insert the IP address of the virtual server in the HTTP header regardless of whether the virtual server has an IPv4 address or an IPv6 address. A mapped IPv4 address, if configured, is ignored.
		* V6TOV4MAPPING - Insert the IPv4 address that is mapped to the virtual server's IPv6 address. If a mapped IPv4 address is not configured, insert the IPv6 address.
		* OFF - Disable header insertion.
	*/
	Insertvserveripport string `json:"insertvserveripport,omitempty"`
	/**
	* Name for the inserted header. The default name is vip-header.
	 */
	Vipheader string `json:"vipheader,omitempty"`
	/**
	* Fully qualified domain name (FQDN) of the authentication virtual server to which the user must be redirected for authentication. Make sure that the Authentication parameter is set to ENABLED.
	 */
	Authenticationhost string `json:"authenticationhost,omitempty"`
	/**
	* Enable or disable user authentication.
	 */
	Authentication string `json:"authentication,omitempty"`
	/**
	* Enable or disable user authentication with HTTP 401 responses.
	 */
	Authn401 string `json:"authn401,omitempty"`
	/**
	* Name of an authentication virtual server with which to authenticate users.
	 */
	Authnvsname string `json:"authnvsname,omitempty"`
	/**
	* Process traffic with the push virtual server that is bound to this load balancing virtual server.
	 */
	Push string `json:"push,omitempty"`
	/**
	* Name of the load balancing virtual server, of type PUSH or SSL_PUSH, to which the server pushes updates received on the load balancing virtual server that you are configuring.
	 */
	Pushvserver string `json:"pushvserver,omitempty"`
	/**
	* Expression for extracting a label from the server's response. Can be either an expression or the name of a named expression.
	 */
	Pushlabel string `json:"pushlabel,omitempty"`
	/**
	* Allow multiple Web 2.0 connections from the same client to connect to the virtual server and expect updates.
	 */
	Pushmulticlients string `json:"pushmulticlients,omitempty"`
	/**
	* Name of the TCP profile whose settings are to be applied to the virtual server.
	 */
	Tcpprofilename string `json:"tcpprofilename,omitempty"`
	/**
	* Name of the HTTP profile whose settings are to be applied to the virtual server.
	 */
	Httpprofilename string `json:"httpprofilename,omitempty"`
	/**
	* Name of the DB profile whose settings are to be applied to the virtual server.
	 */
	Dbprofilename string `json:"dbprofilename,omitempty"`
	/**
	* Any comments that you might want to associate with the virtual server.
	 */
	Comment string `json:"comment,omitempty"`
	/**
	* Use Layer 2 parameters (channel number, MAC address, and VLAN ID) in addition to the 4-tuple (<source IP>:<source port>::<destination IP>:<destination port>) that is used to identify a connection. Allows multiple TCP and non-TCP connections with the same 4-tuple to co-exist on the Citrix ADC.
	 */
	L2conn string `json:"l2conn,omitempty"`
	/**
	* Oracle server version
	 */
	Oracleserverversion string `json:"oracleserverversion,omitempty"`
	/**
	* For a load balancing virtual server of type MSSQL, the Microsoft SQL Server version. Set this parameter if you expect some clients to run a version different from the version of the database. This setting provides compatibility between the client-side and server-side connections by ensuring that all communication conforms to the server's version.
	 */
	Mssqlserverversion string `json:"mssqlserverversion,omitempty"`
	/**
	* MySQL protocol version that the virtual server advertises to clients.
	 */
	Mysqlprotocolversion int `json:"mysqlprotocolversion,omitempty"`
	/**
	* MySQL server version string that the virtual server advertises to clients.
	 */
	Mysqlserverversion string `json:"mysqlserverversion,omitempty"`
	/**
	* Character set that the virtual server advertises to clients.
	 */
	Mysqlcharacterset int `json:"mysqlcharacterset,omitempty"`
	/**
	* Server capabilities that the virtual server advertises to clients.
	 */
	Mysqlservercapabilities int `json:"mysqlservercapabilities,omitempty"`
	/**
	* Apply AppFlow logging to the virtual server.
	 */
	Appflowlog string `json:"appflowlog,omitempty"`
	/**
	* Name of the network profile to associate with the virtual server. If you set this parameter, the virtual server uses only the IP addresses in the network profile as source IP addresses when initiating connections with servers.
	 */
	Netprofile string `json:"netprofile,omitempty"`
	/**
	* How the Citrix ADC responds to ping requests received for an IP address that is common to one or more virtual servers. Available settings function as follows:
		* If set to PASSIVE on all the virtual servers that share the IP address, the appliance always responds to the ping requests.
		* If set to ACTIVE on all the virtual servers that share the IP address, the appliance responds to the ping requests if at least one of the virtual servers is UP. Otherwise, the appliance does not respond.
		* If set to ACTIVE on some virtual servers and PASSIVE on the others, the appliance responds if at least one virtual server with the ACTIVE setting is UP. Otherwise, the appliance does not respond.
		Note: This parameter is available at the virtual server level. A similar parameter, ICMP Response, is available at the IP address level, for IPv4 addresses of type VIP. To set that parameter, use the add ip command in the CLI or the Create IP dialog box in the GUI.
	*/
	Icmpvsrresponse string `json:"icmpvsrresponse,omitempty"`
	/**
	* Route Health Injection (RHI) functionality of the NetSaler appliance for advertising the route of the VIP address associated with the virtual server. 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.
	*/
	Rhistate string `json:"rhistate,omitempty"`
	/**
	* Number of requests, or percentage of the load on existing services, by which to increase the load on a new service at each interval in slow-start mode. A non-zero value indicates that slow-start is applicable. A zero value indicates that the global RR startup parameter is applied. Changing the value to zero will cause services currently in slow start to take the full traffic as determined by the LB method. Subsequently, any new services added will use the global RR factor.
	 */
	Newservicerequest int `json:"newservicerequest,omitempty"`
	/**
	* Units in which to increment load at each interval in slow-start mode.
	 */
	Newservicerequestunit string `json:"newservicerequestunit,omitempty"`
	/**
	* Interval, in seconds, between successive increments in the load on a new service or a service whose state has just changed from DOWN to UP. A value of 0 (zero) specifies manual slow start.
	 */
	Newservicerequestincrementinterval int `json:"newservicerequestincrementinterval,omitempty"`
	/**
	* Minimum number of members expected to be present when vserver is used in Autoscale.
	 */
	Minautoscalemembers int `json:"minautoscalemembers,omitempty"`
	/**
	* Maximum number of members expected to be present when vserver is used in Autoscale.
	 */
	Maxautoscalemembers int `json:"maxautoscalemembers,omitempty"`
	/**
	* Persist AVP number for Diameter Persistency.
		In case this AVP is not defined in Base RFC 3588 and it is nested inside a Grouped AVP,
		define a sequence of AVP numbers (max 3) in order of parent to child. So say persist AVP number X
		is nested inside AVP Y which is nested in Z, then define the list as  Z Y X
	*/
	Persistavpno []int `json:"persistavpno,omitempty"`
	/**
	* This argument decides the behavior incase the service which is selected from an existing persistence session has reached threshold.
	 */
	Skippersistency string `json:"skippersistency,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"`
	/**
	* Name of the authentication profile to be used when authentication is turned on.
	 */
	Authnprofile string `json:"authnprofile,omitempty"`
	/**
	* This option is used to retain vlan information of incoming packet when macmode is enabled
	 */
	Macmoderetainvlan string `json:"macmoderetainvlan,omitempty"`
	/**
	* Enable database specific load balancing for MySQL and MSSQL service types.
	 */
	Dbslb string `json:"dbslb,omitempty"`
	/**
	* This argument is for enabling/disabling the dns64 on lbvserver
	 */
	Dns64 string `json:"dns64,omitempty"`
	/**
	* If this option is enabled while resolving DNS64 query AAAA queries are not sent to back end dns server
	 */
	Bypassaaaa string `json:"bypassaaaa,omitempty"`
	/**
	* When set to YES, this option causes the DNS replies from this vserver to have the RA bit turned on. Typically one would set this option to YES, when the vserver is load balancing a set of DNS servers thatsupport recursive queries.
	 */
	Recursionavailable string `json:"recursionavailable,omitempty"`
	/**
	* By turning on this option packets destined to a vserver in a cluster will not under go any steering. Turn this option for single packet request response mode or when the upstream device is performing a proper RSS for connection based distribution.
	 */
	Processlocal string `json:"processlocal,omitempty"`
	/**
	* Name of the DNS profile to be associated with the VServer. DNS profile properties will be applied to the transactions processed by a VServer. This parameter is valid only for DNS and DNS-TCP VServers.
	 */
	Dnsprofilename string `json:"dnsprofilename,omitempty"`
	/**
	* Name of the LB profile which is associated to the vserver
	 */
	Lbprofilename string `json:"lbprofilename,omitempty"`
	/**
	* Port number for the virtual server, from which we absorb the traffic for http redirect
	 */
	Redirectfromport int `json:"redirectfromport,omitempty"`
	/**
	* URL to which all HTTP traffic received on the port specified in the -redirectFromPort parameter is redirected.
	 */
	Httpsredirecturl string `json:"httpsredirecturl,omitempty"`
	/**
	* This option enables you to retain existing connections on a node joining a Cluster system or when a node is being configured for passive timeout. By default, this option is disabled.
	 */
	Retainconnectionsoncluster string `json:"retainconnectionsoncluster,omitempty"`
	/**
	* Name of the adfsProxy profile to be used to support ADFSPIP protocol for ADFS servers.
	 */
	Adfsproxyprofile string `json:"adfsproxyprofile,omitempty"`
	/**
	* Port number for external TCP probe. NetScaler provides support for external TCP health check of the vserver status over the selected port. This option is only supported for vservers assigned with an IPAddress or ipset.
	 */
	Tcpprobeport int `json:"tcpprobeport,omitempty"`
	/**
	* Name of QUIC profile which will be attached to the VServer.
	 */
	Quicprofilename string `json:"quicprofilename,omitempty"`
	/**
	* Name of the QUIC Bridge profile whose settings are to be applied to the virtual server.
	 */
	Quicbridgeprofilename string `json:"quicbridgeprofilename,omitempty"`
	/**
	* Citrix ADC provides support for external health check of the vserver status. Select HTTP or TCP probes for healthcheck
	 */
	Probeprotocol string `json:"probeprotocol,omitempty"`
	/**
	* HTTP code to return in SUCCESS case.
	 */
	Probesuccessresponsecode string `json:"probesuccessresponsecode,omitempty"`
	/**
	* Citrix ADC provides support for external health check of the vserver status. Select port for HTTP/TCP monitring
	 */
	Probeport int `json:"probeport,omitempty"`
	/**
	* Weight to assign to the specified service.
	 */
	Weight int `json:"weight,omitempty"`
	/**
	* Service to bind to the virtual server.
	 */
	Servicename string `json:"servicename,omitempty"`
	/**
	* The redirect URL to be unset.
	 */
	Redirurlflags bool `json:"redirurlflags,omitempty"`
	/**
	* New name for the virtual server.
	 */
	Newname string `json:"newname,omitempty"`

	Value                     string `json:"value,omitempty"`
	Ipmapping                 string `json:"ipmapping,omitempty"`
	Ngname                    string `json:"ngname,omitempty"`
	Type                      string `json:"type,omitempty"`
	Curstate                  string `json:"curstate,omitempty"`
	Effectivestate            string `json:"effectivestate,omitempty"`
	Status                    string `json:"status,omitempty"`
	Lbrrreason                string `json:"lbrrreason,omitempty"`
	Redirect                  string `json:"redirect,omitempty"`
	Precedence                string `json:"precedence,omitempty"`
	Homepage                  string `json:"homepage,omitempty"`
	Dnsvservername            string `json:"dnsvservername,omitempty"`
	Domain                    string `json:"domain,omitempty"`
	Cachevserver              string `json:"cachevserver,omitempty"`
	Health                    string `json:"health,omitempty"`
	Ruletype                  string `json:"ruletype,omitempty"`
	Groupname                 string `json:"groupname,omitempty"`
	Cookiedomain              string `json:"cookiedomain,omitempty"`
	Map                       string `json:"map,omitempty"`
	Gt2gb                     string `json:"gt2gb,omitempty"`
	Consolidatedlconn         string `json:"consolidatedlconn,omitempty"`
	Consolidatedlconngbl      string `json:"consolidatedlconngbl,omitempty"`
	Thresholdvalue            string `json:"thresholdvalue,omitempty"`
	Bindpoint                 string `json:"bindpoint,omitempty"`
	Version                   string `json:"version,omitempty"`
	Totalservices             string `json:"totalservices,omitempty"`
	Activeservices            string `json:"activeservices,omitempty"`
	Statechangetimesec        string `json:"statechangetimesec,omitempty"`
	Statechangetimeseconds    string `json:"statechangetimeseconds,omitempty"`
	Statechangetimemsec       string `json:"statechangetimemsec,omitempty"`
	Tickssincelaststatechange string `json:"tickssincelaststatechange,omitempty"`
	Isgslb                    string `json:"isgslb,omitempty"`
	Vsvrdynconnsothreshold    string `json:"vsvrdynconnsothreshold,omitempty"`
	Backupvserverstatus       string `json:"backupvserverstatus,omitempty"`
	Nodefaultbindings         string `json:"nodefaultbindings,omitempty"`
}

* * Configuration for Load Balancing Virtual Server resource.

type Lbvserveranalyticsprofilebinding

type Lbvserveranalyticsprofilebinding struct {
	/**
	* Name of the analytics profile bound to the LB vserver.
	 */
	Analyticsprofile string `json:"analyticsprofile,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the analyticsprofile that can be bound to lbvserver.

type Lbvserverappflowpolicybinding

type Lbvserverappflowpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the appflowpolicy that can be bound to lbvserver.

type Lbvserverappfwpolicybinding

type Lbvserverappfwpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,omitempty"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the appfwpolicy that can be bound to lbvserver.

type Lbvserverappqoepolicybinding

type Lbvserverappqoepolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the appqoepolicy that can be bound to lbvserver.

type Lbvserverauditnslogpolicybinding

type Lbvserverauditnslogpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the auditnslogpolicy that can be bound to lbvserver.

type Lbvserverauditsyslogpolicybinding

type Lbvserverauditsyslogpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the auditsyslogpolicy that can be bound to lbvserver.

type Lbvserverauthorizationpolicybinding

type Lbvserverauthorizationpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the authorizationpolicy that can be bound to lbvserver.

type Lbvserverbinding

type Lbvserverbinding struct {
	/**
	* Name of the virtual server. If no name is provided, statistical data of all configured virtual servers is displayed.<br/>Minimum value =
	 */
	Name string `json:"name,omitempty"`
}

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

type Lbvserverbotpolicybinding

type Lbvserverbotpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
}

* * Binding class showing the botpolicy that can be bound to lbvserver.

type Lbvservercachepolicybinding

type Lbvservercachepolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the cachepolicy that can be bound to lbvserver.

type Lbvservercmppolicybinding

type Lbvservercmppolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the cmppolicy that can be bound to lbvserver.

type Lbvservercontentinspectionpolicybinding

type Lbvservercontentinspectionpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the contentinspectionpolicy that can be bound to lbvserver.

type Lbvservercsvserverbinding

type Lbvservercsvserverbinding struct {
	/**
	* Cache virtual server.
	 */
	Cachevserver string `json:"cachevserver,omitempty"`
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Cache type.
	 */
	Cachetype string `json:"cachetype,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Number of hits.
	 */
	Hits int `json:"hits,omitempty"`
	/**
	* Number of hits.
	 */
	Pipolicyhits  int `json:"pipolicyhits,omitempty"`
	Policysubtype int `json:"policysubtype,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the csvserver that can be bound to lbvserver.

type Lbvserverdetectionpolicybinding

type Lbvserverdetectionpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the detectionpolicy that can be bound to lbvserver.

type Lbvserverdnspolicy64binding

type Lbvserverdnspolicy64binding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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 for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the dnspolicy64 that can be bound to lbvserver.

type Lbvserverdospolicybinding

type Lbvserverdospolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the dospolicy that can be bound to lbvserver.

type Lbvserverfeopolicybinding

type Lbvserverfeopolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the feopolicy that can be bound to lbvserver.

type Lbvserverfilterpolicybinding

type Lbvserverfilterpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the filterpolicy that can be bound to lbvserver.

type Lbvserverlbpolicybinding

type Lbvserverlbpolicybinding struct {
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Integer specifying the order of the service. A larger number specifies a lower order. Defines the order of the service relative to the other services in the load balancing vserver's bindings.
	* Determines the priority given to the service among all the services bound.
	 */
	Order int `json:"order,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 policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Name for the virtual server.
	* Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
	* CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver'). .
	 */
	Name string `json:"name,omitempty"`
	/**
	* The bindpoint to which the policy is bound.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	 * The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	 * Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	 * Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
}

* * Binding class showing the gslbservice that can be bound to gslbvserver.

type Lbvservernslogpolicybinding

type Lbvservernslogpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the nslogpolicy that can be bound to lbvserver.

type Lbvserverpacingpolicybinding

type Lbvserverpacingpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the pacingpolicy that can be bound to lbvserver.

type Lbvserverpolicy64binding

type Lbvserverpolicy64binding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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 for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the policy64 that can be bound to lbvserver.

type Lbvserverpolicybinding

type Lbvserverpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

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

type Lbvserverpqpolicybinding

type Lbvserverpqpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Integer specifying the policy's priority. The lower the priority number, the higher the policy's priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the pqpolicy that can be bound to lbvserver.

type Lbvserverprofilebinding

type Lbvserverprofilebinding struct {
	/**
	* Name of the analytics profile bound to the LB vserver.
	 */
	Analyticsprofile string `json:"analyticsprofile,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the profile that can be bound to lbvserver.

type Lbvserverresponderpolicybinding

type Lbvserverresponderpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the responderpolicy that can be bound to lbvserver.

type Lbvserverrewritepolicybinding

type Lbvserverrewritepolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the rewritepolicy that can be bound to lbvserver.

type Lbvserverscpolicybinding

type Lbvserverscpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the scpolicy that can be bound to lbvserver.

type Lbvserverservicebinding

type Lbvserverservicebinding struct {
	/**
	* Service to bind to the virtual server.
	 */
	Servicename string `json:"servicename,omitempty"`
	/**
	* IPv4 or IPv6 address to assign to the virtual server.
	 */
	Ipv46 string `json:"ipv46,omitempty"`
	/**
	* Port number for the virtual server.
	 */
	Port int `json:"port,omitempty"`
	/**
	* Protocol used by the service (also called the service type).
	 */
	Servicetype string `json:"servicetype,omitempty"`
	/**
	* Current LB vserver state.
	 */
	Curstate string `json:"curstate,omitempty"`
	/**
	* Weight to assign to the specified service.
	 */
	Weight int `json:"weight,omitempty"`
	/**
	* Dynamic weight
	 */
	Order int `json:"order,omitempty"`
	/**
	* Order number to be assigned to the service when it is bound to the lb vserver.
	 */
	Dynamicweight int `json:"dynamicweight,omitempty"`
	/**
	* Encryped Ip address and port of the service that is inserted into the set-cookie http header
	 */
	Cookieipport string `json:"cookieipport,omitempty"`
	/**
	* Vserver Id
	 */
	Vserverid string `json:"vserverid,omitempty"`
	/**
	* used for showing the ip of bound entities
	 */
	Vsvrbindsvcip string `json:"vsvrbindsvcip,omitempty"`
	/**
	* used for showing ports of bound entities
	 */
	Vsvrbindsvcport int `json:"vsvrbindsvcport,omitempty"`
	/**
	* Used for displaying the location of bound services.
	 */
	Preferredlocation string `json:"preferredlocation,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Name of the service group.
	 */
	Servicegroupname string `json:"servicegroupname,omitempty"`
}

* * Binding class showing the service that can be bound to lbvserver.

type Lbvserverservicegroupbinding

type Lbvserverservicegroupbinding struct {
	/**
	* The service group name bound to the selected load balancing virtual server.
	 */
	Servicegroupname string `json:"servicegroupname,omitempty"`
	/**
	* Service to bind to the virtual server.
	 */
	Servicename string `json:"servicename,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Integer specifying the weight of the service. A larger number specifies a greater weight. Defines the capacity of the service relative to the other services in the load balancing configuration. Determines the priority given to the service in load balancing decisions.
	 */
	Weight int `json:"weight,omitempty"`
}

* * Binding class showing the servicegroup that can be bound to lbvserver.

type Lbvserverservicegroupmemberbinding

type Lbvserverservicegroupmemberbinding struct {
	/**
	* The service group name bound to the selected load balancing virtual server.
	 */
	Servicegroupname string `json:"servicegroupname,omitempty"`
	/**
	* IPv4 or IPv6 address to assign to the virtual server.
	 */
	Ipv46 string `json:"ipv46,omitempty"`
	/**
	* Port number for the virtual server.
	 */
	Port int `json:"port,omitempty"`
	/**
	* Protocol used by the service (also called the service type).
	 */
	Servicetype string `json:"servicetype,omitempty"`
	/**
	* Current LB vserver state.
	 */
	Curstate string `json:"curstate,omitempty"`
	/**
	* Weight to assign to the specified service.
	 */
	Weight int `json:"weight,omitempty"`
	/**
	* Dynamic weight
	 */
	Dynamicweight int `json:"dynamicweight,omitempty"`
	/**
	* Encryped Ip address and port of the service that is inserted into the set-cookie http header
	 */
	Cookieipport string `json:"cookieipport,omitempty"`
	/**
	* Use this parameter to specify the cookie name for COOKIE peristence type. It specifies the name of cookie with a maximum of 32 characters. If not specified, cookie name is internally generated.
	 */
	Cookiename string `json:"cookiename,omitempty"`
	/**
	* Vserver Id
	 */
	Vserverid string `json:"vserverid,omitempty"`
	/**
	* Used for displaying the location of bound services.
	 */
	Preferredlocation string `json:"preferredlocation,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the servicegroupmember that can be bound to lbvserver.

type Lbvserverspilloverpolicybinding

type Lbvserverspilloverpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the spilloverpolicy that can be bound to lbvserver.

type Lbvserversyslogpolicybinding

type Lbvserversyslogpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Use SureConnect on the virtual server.
	 */
	Sc string `json:"sc,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the syslogpolicy that can be bound to lbvserver.

type Lbvservertmtrafficpolicybinding

type Lbvservertmtrafficpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the tmtrafficpolicy that can be bound to lbvserver.

type Lbvservertrafficpolicybinding

type Lbvservertrafficpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Bind point to which to bind the policy.
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label to invoke. Applicable only to rewrite, videooptimization and cache policies. Available settings function as follows:
		* reqvserver - Evaluate the request against the request-based policies bound to the specified virtual server.
		* resvserver - Evaluate the response against the response-based policies bound to the specified virtual server.
		* policylabel - invoke the request or response against the specified user-defined policy label.
	*/
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the trafficpolicy that can be bound to lbvserver.

type Lbvservertransformpolicybinding

type Lbvservertransformpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the transformpolicy that can be bound to lbvserver.

type Lbvservervideooptimizationdetectionpolicybinding

type Lbvservervideooptimizationdetectionpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the videooptimizationdetectionpolicy that can be bound to lbvserver.

type Lbvservervideooptimizationpacingpolicybinding

type Lbvservervideooptimizationpacingpolicybinding struct {
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Priority.
	 */
	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"`
	/**
	* The bindpoint to which the policy is bound
	 */
	Bindpoint string `json:"bindpoint,omitempty"`
	/**
	* Invoke policies bound to a virtual server or policy label.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* The invocation type.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label invoked.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
}

* * Binding class showing the videooptimizationpacingpolicy that can be bound to lbvserver.

type Lbvservervserverbinding

type Lbvservervserverbinding struct {
	/**
	* Cache virtual server.
	 */
	Cachevserver string `json:"cachevserver,omitempty"`
	/**
	* Name of the policy bound to the LB vserver.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Cache type.
	 */
	Cachetype string `json:"cachetype,omitempty"`
	/**
	* Priority.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Number of hits.
	 */
	Hits uint32 `json:"hits,omitempty"`
	/**
	* Number of hits.
	 */
	Pipolicyhits  uint32 `json:"pipolicyhits,omitempty"`
	Policysubtype uint32 `json:"policysubtype,omitempty"`
	/**
	* Name for the virtual server. Must begin with an ASCII alphanumeric or underscore (_) character, and must contain only ASCII alphanumeric, underscore, hash (#), period (.), space, colon (:), at sign (@), equal sign (=), and hyphen (-) characters. Can be changed after the virtual server is created.
		CLI Users: If the name includes one or more spaces, enclose the name in double or single quotation marks (for example, "my vserver" or 'my vserver').
	*/
	Name string `json:"name,omitempty"`
	/**
	* Name of the virtual server or user-defined policy label to invoke if the policy evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the vserver that can be bound to lbvserver.

type Lbwlm

type Lbwlm struct {
	/**
	* The name of the Work Load Manager.
	 */
	Wlmname string `json:"wlmname,omitempty"`
	/**
	* The IP address of the WLM.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* The port of the WLM.
	 */
	Port int `json:"port,omitempty"`
	/**
	* The LBUID for the Load Balancer to communicate to the Work Load Manager.
	 */
	Lbuid string `json:"lbuid,omitempty"`
	/**
	* The idle time period after which Citrix ADC would probe the WLM. The value ranges from 1 to 1440 minutes.
	 */
	Katimeout int `json:"katimeout,omitempty"`

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

* * Configuration for web log manager resource.

type Lbwlmbinding

type Lbwlmbinding struct {
	/**
	* The name of the work load manager.<br/>Minimum value =
	 */
	Wlmname string `json:"wlmname,omitempty"`
}

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

type Lbwlmlbvserverbinding

type Lbwlmlbvserverbinding struct {
	/**
	* Name of the virtual server which is to be bound to the WLM.
	 */
	Vservername string `json:"vservername,omitempty"`
	/**
	* The name of the Work Load Manager.
	 */
	Wlmname string `json:"wlmname,omitempty"`
}

* * Binding class showing the lbvserver that can be bound to lbwlm.

type Lbwlmvserverbinding

type Lbwlmvserverbinding struct {
	/**
	* Name of the virtual server which is to be bound to the WLM.
	 */
	Vservername string `json:"vservername,omitempty"`
	/**
	* The name of the Work Load Manager.
	 */
	Wlmname string `json:"wlmname,omitempty"`
}

* * Binding class showing the vserver that can be bound to lbwlm.

Source Files

Jump to

Keyboard shortcuts

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