###############################################################################
# Path fields
###############################################################################
path-amphora-id:
  description: |
    The ID of the amphora to query.
  in: path
  required: true
  type: uuid
path-healthmonitor-id:
  description: |
    The ID of the health monitor to query.
  in: path
  required: true
  type: uuid
path-l7policy-id:
  description: |
    The ID of the L7 policy to query.
  in: path
  required: true
  type: uuid
path-l7rule-id:
  description: |
    The ID of the L7 rule to query.
  in: path
  required: true
  type: uuid
path-listener-id:
  description: |
    The ID of the listener to query.
  in: path
  required: true
  type: uuid
path-loadbalancer-id:
  description: |
    The ID of the load balancer to query.
  in: path
  required: true
  type: uuid
path-member-id:
  description: |
    The ID of the member to query.
  in: path
  required: true
  type: uuid
path-pool-id:
  description: |
    The ID of the pool to query.
  in: path
  required: true
  type: uuid
path-project-id:
  description: |
    The ID of the project to query.
  in: path
  required: true
  type: string
###############################################################################
# Query fields
###############################################################################
cascade-delete:
  description: |
    If ``true`` will delete all child objects of the load balancer.
  in: query
  required: false
  type: boolean
fields:
  description: |
    The fields that you want the server to return.
    If no ``fields`` query parameter is specified,
    the octavia API returns all attributes allowed by the policy settings.
    By using the ``fields`` parameter, the API returns only the requested set
    of attributes. The ``fields`` parameter can be specified multiple times.
    For example, if you specify ``fields=id&fields=name`` in the request URL,
    only the ``id`` and ``name`` attributes will be returned.
  in: query
  required: false
  type: string
project_id_query:
  description: |
    The ID of the project to query.
  in: query
  required: false
  type: string

###############################################################################
# Body fields
###############################################################################
action:
  description: |
    The action associated with the resource.
  in: body
  required: true
  type: string
active_connections:
  description: |
    The currently active connections.
  in: body
  required: true
  type: integer
address:
  description: |
    The IP address of the resource.
  in: body
  required: true
  type: string
address-member:
  description: |
    The IP address of the backend member server.
  in: body
  required: true
  type: string
admin_state_up:
  description: |
    The administrative state of the resource, which is
    up (``true``) or down (``false``).
  in: body
  required: true
  type: boolean
admin_state_up-default-optional:
  description: |
    The administrative state of the resource, which is
    up (``true``) or down (``false``). Default is ``true``.
  in: body
  required: false
  type: boolean
admin_state_up-optional:
  description: |
    The administrative state of the resource, which is
    up (``true``) or down (``false``).
  in: body
  required: false
  type: boolean
amphora-id:
  description: |
    The associated amphora ID.
  in: body
  required: true
  type: uuid
amphora-role:
  description: |
    The role of the amphora. One of ``STANDALONE``, ``MASTER``, ``BACKUP``.
  in: body
  required: true
  type: string
amphora-status:
  description: |
    The status of the amphora. One of: ``BOOTING``, ``ALLOCATED``, ``READY``,
    ``PENDING_CREATE``, ``PENDING_DELETE``, ``DELETED``, ``ERROR``.
  in: body
  required: true
  type: string
api_links:
  description: |
    Links to the resources in question.
  in: body
  required: true
  type: array
api_version_id:
  description: |
    A common name for the version.
  in: body
  required: true
  type: string
api_version_status:
  description: |
    The status of this API version. This can be one of:

    - ``CURRENT``: This is the preferred version of the API to use.
    - ``SUPPORTED``: This is an older, but still supported version of the API.
    - ``DEPRECATED``: A deprecated version of the API that is slated for
      removal.
  in: body
  required: true
  type: string
bytes_in:
  description: |
    The total bytes received.
  in: body
  required: true
  type: integer
bytes_out:
  description: |
    The total bytes sent.
  in: body
  required: true
  type: integer
cached-zone:
  description: |
    The availability zone of a compute instance, cached at create time. This
    is not guaranteed to be current. May be an empty-string if the compute
    service does not use zones.
  in: body
  required: true
  type: string
cert-busy:
  description: |
    Whether the certificate is in the process of being replaced.
  in: body
  required: true
  type: string
cert-expiration:
  description: |
    The date the certificate for the amphora expires.
  in: body
  required: true
  type: string
compute-id:
  description: |
    The ID of the amphora resource in the compute system.
  in: body
  required: true
  type: uuid
connection_limit:
  description: |
    The maximum number of connections permitted for this listener. Default
    value is -1 which represents infinite connections.
  in: body
  required: true
  type: integer
connection_limit-optional:
  description: |
    The maximum number of connections permitted for this listener. Default
    value is -1 which represents infinite connections.
  in: body
  required: false
  type: integer
created_at:
  description: |
    The UTC date and timestamp when the resource was created.
  in: body
  required: true
  type: string
default_pool_id:
  description: |
    The ID of the pool used by the listener if no L7 policies match.
  in: body
  required: true
  type: uuid
default_pool_id-optional:
  description: |
    The ID of the pool used by the listener if no L7 policies match.
  in: body
  required: false
  type: uuid
default_tls_container_ref:
  description: |
    The URI of the `key manager service
    <https://docs.openstack.org/castellan/latest/>`__ secret containing a
    PKCS12 format certificate/key bundle for ``TERMINATED_TLS`` listeners.
    DEPRECATED: A secret container of type "certificate" containing the
    certificate and key for ``TERMINATED_TLS`` listeners.
  in: body
  required: true
  type: string
default_tls_container_ref-optional:
  description: |
    The URI of the `key manager service
    <https://docs.openstack.org/castellan/latest/>`__ secret containing a
    PKCS12 format certificate/key bundle for ``TERMINATED_TLS`` listeners.
    DEPRECATED: A secret container of type "certificate" containing the
    certificate and key for ``TERMINATED_TLS`` listeners.
  in: body
  required: false
  type: string
description:
  description: |
    A human-readable description for the resource.
  in: body
  required: true
  type: string
description-optional:
  description: |
    A human-readable description for the resource.
  in: body
  required: false
  type: string
flavor-id:
  description: |
    The ID of the flavor.
  in: body
  required: true
  type: string
flavor-id-optional:
  description: |
    The ID of the flavor.
  in: body
  required: false
  type: string
healthmonitor-delay:
  description: |
    The time, in seconds, between sending probes to members.
  in: body
  required: true
  type: integer
healthmonitor-delay-optional:
  description: |
    The time, in seconds, between sending probes to members.
  in: body
  required: false
  type: integer
healthmonitor-expected_codes:
  description: |
    The list of HTTP status codes expected in response from the member to
    declare it healthy. Specify one of the following values:

    - A single value, such as ``200``
    - A list, such as ``200, 202``
    - A range, such as ``200-204``
  in: body
  required: true
  type: string
healthmonitor-expected_codes-optional:
  description: |
    The list of HTTP status codes expected in response from the member to
    declare it healthy. Specify one of the following values:

    - A single value, such as ``200``
    - A list, such as ``200, 202``
    - A range, such as ``200-204``

    The default is 200.
  in: body
  required: false
  type: string
healthmonitor-http_method:
  description: |
    The HTTP method that the health monitor uses for requests. One of
    ``CONNECT``, ``DELETE``, ``GET``, ``HEAD``, ``OPTIONS``, ``PATCH``,
    ``POST``, ``PUT``, or ``TRACE``.
  in: body
  required: true
  type: string
healthmonitor-http_method-optional:
  description: |
    The HTTP method that the health monitor uses for requests. One of
    ``CONNECT``, ``DELETE``, ``GET``, ``HEAD``, ``OPTIONS``, ``PATCH``,
    ``POST``, ``PUT``, or ``TRACE``. The default is ``GET``.
  in: body
  required: false
  type: string
healthmonitor-id:
  description: |
    The associated health monitor ID.
  in: body
  required: true
  type: uuid
healthmonitor-max-retries:
  description: |
    The number of successful checks before changing the ``operating status``
    of the member to ``ONLINE``. A valid value is from ``1`` to ``10``.
  in: body
  required: true
  type: integer
healthmonitor-max-retries-down:
  description: |
    The number of allowed check failures before changing the ``operating
    status`` of the member to ``ERROR``. A valid value is from ``1`` to ``10``.
  in: body
  required: true
  type: integer
healthmonitor-max-retries-down-optional:
  description: |
    The number of allowed check failures before changing the ``operating
    status`` of the member to ``ERROR``. A valid value is from ``1`` to ``10``.
    The default is ``3``.
  in: body
  required: false
  type: integer
healthmonitor-max-retries-optional:
  description: |
    The number of successful checks before changing the ``operating status``
    of the member to ``ONLINE``. A valid value is from ``1`` to ``10``.
  in: body
  required: false
  type: integer
healthmonitor-status:
  description: |
    The associated health monitor status object.
  in: body
  required: true
  type: object
healthmonitor-timeout:
  description: |
    The maximum time, in seconds, that a monitor waits to connect before it
    times out. This value must be less than the delay value.
  in: body
  required: true
  type: integer
healthmonitor-timeout-optional:
  description: |
    The maximum time, in seconds, that a monitor waits to connect before it
    times out. This value must be less than the delay value.
  in: body
  required: false
  type: integer
healthmonitor-type:
  description: |
    The type of health monitor.  One of ``HTTP``, ``HTTPS``, ``PING``, ``TCP``,
    or ``TLS-HELLO``.
  in: body
  required: true
  type: string
healthmonitor-url_path:
  description: |
    The HTTP URL path of the request sent by the monitor to test the health of
    a backend member. Must be a string that begins with a forward slash
    (``/``).
  in: body
  required: true
  type: string
healthmonitor-url_path-optional:
  description: |
    The HTTP URL path of the request sent by the monitor to test the health of
    a backend member. Must be a string that begins with a forward slash
    (``/``). The default URL path is ``/``.
  in: body
  required: false
  type: string
id:
  description: |
    The ID of the resource.
  in: body
  required: true
  type: uuid
insert_headers:
  description: |
    A dictionary of optional headers to insert into the request before it is
    sent to the backend ``member``. See :ref:`header_insertions`. Both keys
    and values are always specified as strings.
  in: body
  required: true
  type: object
insert_headers-optional:
  description: |
    A dictionary of optional headers to insert into the request before it is
    sent to the backend ``member``. See :ref:`header_insertions`. Both keys
    and values are always specified as strings.
  in: body
  required: false
  type: object
l7policies-optional:
  description: |
    A list of L7 policy objects.
  in: body
  required: false
  type: array
l7policies-status-object-list:
  description: |
    A list of L7 policy status objects.
  in: body
  required: true
  type: array
l7policy-action:
  description: |
    The L7 policy action.  One of ``REDIRECT_TO_POOL``, ``REDIRECT_TO_URL``,
    or ``REJECT``.
  in: body
  required: true
  type: string
l7policy-action-optional:
  description: |
    The L7 policy action.  One of ``REDIRECT_TO_POOL``, ``REDIRECT_TO_URL``,
    or ``REJECT``.
  in: body
  required: false
  type: string
l7policy-id:
  description: |
    The ID of the L7 policy.
  in: body
  required: true
  type: uuid
l7policy-ids:
  description: |
    A list of L7 policy IDs.
  in: body
  required: true
  type: array
l7policy-position:
  description: |
    The position of this policy on the listener. Positions start at 1.
  in: body
  required: true
  type: integer
l7policy-position-optional:
  description: |
    The position of this policy on the listener. Positions start at 1.
  in: body
  required: false
  type: integer
l7policy-redirect-pool_id:
  description: |
    Requests matching this policy will be redirected to the pool with this ID.
    Only valid if ``action`` is ``REDIRECT_TO_POOL``.
  in: body
  required: true
  type: uuid
l7policy-redirect-pool_id-optional:
  description: |
    Requests matching this policy will be redirected to the pool with this ID.
    Only valid if ``action`` is ``REDIRECT_TO_POOL``.
  in: body
  required: false
  type: uuid
l7policy-redirect-url:
  description: |
    Requests matching this policy will be redirected to this URL.
    Only valid if ``action`` is ``REDIRECT_TO_URL``.
  in: body
  required: true
  type: string
l7policy-redirect-url-optional:
  description: |
    Requests matching this policy will be redirected to this URL.
    Only valid if ``action`` is ``REDIRECT_TO_URL``.
  in: body
  required: false
  type: string
l7policy-rule-ids:
  description: |
    List of associated L7 rule IDs.
  in: body
  required: true
  type: array
l7rule-compare_type:
  description: |
    The comparison type for the L7 rule. One of ``CONTAINS``, ``ENDS_WITH``,
    ``EQUAL_TO``, ``REGEX``, or ``STARTS_WITH``.
  in: body
  required: true
  type: string
l7rule-compare_type-optional:
  description: |
    The comparison type for the L7 rule. One of ``CONTAINS``, ``ENDS_WITH``,
    ``EQUAL_TO``, ``REGEX``, or ``STARTS_WITH``.
  in: body
  required: false
  type: string
l7rule-id:
  description: |
    The ID of the L7 rule.
  in: body
  required: true
  type: uuid
l7rule-invert:
  description: |
    When ``true`` the logic of the rule is inverted. For example, with
    invert ``true``, `equal to` would become `not equal to`.
  in: body
  required: true
  type: boolean
l7rule-invert-optional:
  description: |
    When ``true`` the logic of the rule is inverted. For example, with
    invert ``true``, `equal to` would become `not equal to`.
    Default is ``false``.
  in: body
  required: false
  type: boolean
l7rule-key:
  description: |
    The key to use for the comparison. For example, the name of the cookie
    to evaluate.
  in: body
  required: true
  type: string
l7rule-key-optional:
  description: |
    The key to use for the comparison. For example, the name of the cookie
    to evaluate.
  in: body
  required: false
  type: string
l7rule-type:
  description: |
    The L7 rule type.  One of ``COOKIE``, ``FILE_TYPE``, ``HEADER``,
    ``HOST_NAME``, or ``PATH``.
  in: body
  required: true
  type: string
l7rule-type-optional:
  description: |
    The L7 rule type.  One of ``COOKIE``, ``FILE_TYPE``, ``HEADER``,
    ``HOST_NAME``, or ``PATH``.
  in: body
  required: false
  type: string
l7rule-value:
  description: |
    The value to use for the comparison. For example, the file type to compare.
  in: body
  required: true
  type: string
l7rule-value-optional:
  description: |
    The value to use for the comparison. For example, the file type to compare.
  in: body
  required: false
  type: string
l7rules-status-object-list:
  description: |
    A list of L7 rule status objects.
  in: body
  required: true
  type: array
lb-algorithm:
  description: |
    The load balancing algorithm for the pool. One of ``LEAST_CONNECTIONS``,
    ``ROUND_ROBIN``, or ``SOURCE_IP``.
  in: body
  required: true
  type: string
lb-algorithm-optional:
  description: |
    The load balancing algorithm for the pool. One of ``LEAST_CONNECTIONS``,
    ``ROUND_ROBIN``, or ``SOURCE_IP``.
  in: body
  required: false
  type: string
lb-network-ip:
  description: |
    The management IP of the amphora.
  in: body
  required: true
  type: string
listener:
  description: |
    A listener object.
  in: body
  required: true
  type: object
listener-id:
  description: |
    The ID of the listener.
  in: body
  required: true
  type: uuid
listener-id-pool-optional:
  description: |
    The ID of the listener for the pool. Either ``listener_id`` or
    ``loadbalancer_id`` must be specified.
  in: body
  required: false
  type: uuid
listener-ids:
  description: |
    A list of listener IDs.
  in: body
  required: true
  type: array
listeners:
  description: |
    The associated listener IDs, if any.
  in: body
  required: true
  type: array
listeners-optional:
  description: |
    The associated listener IDs, if any.
  in: body
  required: false
  type: array
listeners-status-object-list:
  description: |
    A list of listener status objects.
  in: body
  required: true
  type: array
loadbalancer:
  description: |
    A load balancer object.
  in: body
  required: true
  type: object
loadbalancer-id:
  description: |
    The ID of the load balancer.
  in: body
  required: true
  type: uuid
loadbalancer-id-pool-optional:
  description: |
    The ID of the load balancer for the pool. Either ``listener_id`` or
    ``loadbalancer_id`` must be specified.
  in: body
  required: false
  type: uuid
loadbalancer-ids:
  description: |
    A list of load balancer IDs.
  in: body
  required: true
  type: array
loadbalancer-status:
  description: |
    A load balancer status object.
  in: body
  required: true
  type: object
loadbalancers:
  description: |
    A list of ``loadbalancer`` objects.
  in: body
  required: true
  type: array
member-id:
  description: |
    The ID of the member.
  in: body
  required: true
  type: uuid
member-ids:
  description: |
    A list of member IDs.
  in: body
  required: true
  type: array
members-status-object-list:
  description: |
    A list of members status objects.
  in: body
  required: true
  type: array
monitor_address:
  description: |
    An alternate IP address used for health monitoring a backend member.
    Default is ``null`` which monitors the member ``address``.
  in: body
  required: true
  type: string
monitor_address-optional:
  description: |
    An alternate IP address used for health monitoring a backend member.
    Default is ``null`` which monitors the member ``address``.
  in: body
  required: false
  type: string
monitor_port:
  description: |
    An alternate protocol port used for health monitoring a backend member.
    Default is ``null`` which monitors the member ``protocol_port``.
  in: body
  required: true
  type: integer
monitor_port-optional:
  description: |
    An alternate protocol port used for health monitoring a backend member.
    Default is ``null`` which monitors the member ``protocol_port``.
  in: body
  required: false
  type: integer
name:
  description: |
    Human-readable name of the resource.
  in: body
  required: true
  type: string
name-optional:
  description: |
    Human-readable name of the resource.
  in: body
  required: false
  type: string
operating_status:
  description: |
    The operating status of the resource. See :ref:`op_status`.
  in: body
  required: true
  type: string
pool-id:
  description: |
    The ID of the pool.
  in: body
  required: true
  type: uuid
pool-optional:
  description: |
    A pool object.
  in: body
  required: false
  type: object
pools-status-list:
  description: |
    The list of pools status objects.
  in: body
  required: true
  type: array
pools_ids:
  description: |
    The associated pool IDs, if any.
  in: body
  required: true
  type: array
project_id:
  description: |
    The ID of the project owning this resource.
  in: body
  required: true
  type: string
project_id-optional:
  description: |
    The ID of the project owning this resource.
  in: body
  required: false
  type: string
project_id-optional-deprecated:
  description: |
    The ID of the project owning this resource. (deprecated)
  in: body
  required: false
  type: string
protocol:
  description: |
    The protocol for the resource. One of ``HTTP``, ``HTTPS``, ``TCP``, or
    ``TERMINATED_HTTPS``.
  in: body
  required: true
  type: integer
protocol-pools:
  description: |
    The protocol for the resource. One of ``HTTP``, ``HTTPS``, ``PROXY``, or
    ``TCP``.
  in: body
  required: true
  type: string
protocol_port:
  description: |
    The protocol port number for the resource.
  in: body
  required: true
  type: integer
protocol_port-member:
  description: |
    The protocol port number the backend member server is listening on.
  in: body
  required: true
  type: integer
provider:
  description: |
    Provider name for the load balancer.
  in: body
  required: true
  type: string
provider-optional:
  description: |
    Provider name for the load balancer. Default is ``octavia``.
  in: body
  required: false
  type: string
provisioning_status:
  description: |
    The provisioning status of the resource. See :ref:`prov_status`.
  in: body
  required: true
  type: string
quota-health_monitor:
  description: |
    The configured health monitor quota limit. A setting of ``null`` means it
    is using the deployment default quota.  A setting of ``-1``
    means unlimited.
  in: body
  required: true
  type: integer
quota-health_monitor-optional:
  description: |
    The configured health monitor quota limit. A setting of ``null`` means it
    is using the deployment default quota.  A setting of ``-1`` means
    unlimited.
  in: body
  required: false
  type: integer
quota-listener:
  description: |
    The configured listener quota limit. A setting of ``null`` means it is
    using the deployment default quota.  A setting of ``-1`` means unlimited.
  in: body
  required: true
  type: integer
quota-listener-optional:
  description: |
    The configured listener quota limit. A setting of ``null`` means it is
    using the deployment default quota.  A setting of ``-1`` means unlimited.
  in: body
  required: true
  type: integer
quota-load_balancer:
  description: |
    The configured load balancer quota limit. A setting of ``null`` means it
    is using the deployment default quota.  A setting of ``-1`` means
    unlimited.
  in: body
  required: true
  type: integer
quota-load_balancer-optional:
  description: |
    The configured load balancer quota limit. A setting of ``null`` means it
    is using the deployment default quota.  A setting of ``-1`` means
    unlimited.
  in: body
  required: true
  type: integer
quota-member:
  description: |
    The configured member quota limit. A setting of ``null`` means it is using
    the deployment default quota.  A setting of ``-1`` means unlimited.
  in: body
  required: true
  type: integer
quota-member-optional:
  description: |
    The configured member quota limit. A setting of ``null`` means it is using
    the deployment default quota.  A setting of ``-1`` means unlimited.
  in: body
  required: true
  type: integer
quota-pool:
  description: |
    The configured pool quota limit. A setting of ``null`` means it is using
    the deployment default quota.  A setting of ``-1`` means unlimited.
  in: body
  required: true
  type: integer
quota-pool-optional:
  description: |
    The configured pool quota limit. A setting of ``null`` means it is using
    the deployment default quota.  A setting of ``-1`` means unlimited.
  in: body
  required: true
  type: integer
request_errors:
  description: |
    The total requests that were unable to be fulfilled.
  in: body
  required: true
  type: integer
session_persistence:
  description: |
    A JSON object specifying the session persistence for the pool or ``null``
    for no session persistence. See :ref:`session_persistence`.  Default is
    ``null``.
  in: body
  required: true
  type: object
session_persistence-optional:
  description: |
    A JSON object specifying the session persistence for the pool or ``null``
    for no session persistence. See :ref:`session_persistence`.  Default is
    ``null``.
  in: body
  required: false
  type: object
session_persistence_cookie:
  description: |
    The name of the cookie to use for session persistence. Only applicable to
    the ``APP_COOKIE`` session persistence type where it is required.
  in: body
  required: false
  type: string
session_persistence_type:
  description: |
    Session persistence type for the pool.  One of ``APP_COOKIE``,
    ``HTTP_COOKIE``, ``SOURCE_IP``.
  in: body
  required: true
  type: string
sni_container_refs:
  description: |
    A list of URIs to the `key manager service
    <https://docs.openstack.org/barbican/latest/>`__ secrets containing
    PKCS12 format certificate/key bundles for ``TERMINATED_TLS`` listeners.
    (DEPRECATED) Secret containers of type "certificate" containing the
    certificates and keys for ``TERMINATED_TLS`` listeners.
  in: body
  required: true
  type: array
sni_container_refs-optional:
  description: |
    A list of URIs to the `key manager service
    <https://docs.openstack.org/barbican/latest/>`__ secrets containing
    PKCS12 format certificate/key bundles for ``TERMINATED_TLS`` listeners.
    (DEPRECATED) Secret containers of type "certificate" containing the
    certificates and keys for ``TERMINATED_TLS`` listeners.
  in: body
  required: false
  type: array
stats:
  description: |
    A statistics object.
  in: body
  required: true
  type: object
statuses:
  description: |
    The status tree of a load balancer object contains all provisioning and
    operating statuses for its children.
  in: body
  required: true
  type: object
subnet_id:
  description: |
    The subnet ID the member service is accessible from.
  in: body
  required: true
  type: uuid
subnet_id-optional:
  description: |
    The subnet ID the member service is accessible from.
  in: body
  required: false
  type: uuid
total_connections:
  description: |
    The total connections handled.
  in: body
  required: true
  type: integer
type:
  description: |
    The type associated with the resource.
  in: body
  required: true
  type: string
updated_at:
  description: |
    The UTC date and timestamp when the resource was last updated.
  in: body
  required: true
  type: string
vip_address:
  description: |
    The IP address of the Virtual IP (VIP).
  in: body
  required: true
  type: string
vip_address-optional:
  description: |
    The IP address of the Virtual IP (VIP).
  in: body
  required: false
  type: string
vip_network_id:
  description: |
    The ID of the network for the Virtual IP (VIP).
  in: body
  required: true
  type: uuid
vip_network_id-optional:
  description: |
    The ID of the network for the Virtual IP (VIP). One of ``vip_network_id``,
    ``vip_port_id``, or ``vip_subnet_id`` must be specified.
  in: body
  required: false
  type: uuid
vip_port_id:
  description: |
    The ID of the Virtual IP (VIP) port.
  in: body
  required: true
  type: uuid
vip_port_id-optional:
  description: |
    The ID of the Virtual IP (VIP) port. One of ``vip_network_id``,
    ``vip_port_id``, or ``vip_subnet_id`` must be specified.
  in: body
  required: false
  type: uuid
vip_qos_policy_id:
  description: |
    The ID of the QoS Policy which will apply to the Virtual IP (VIP).
  in: body
  required: true
  type: uuid
vip_qos_policy_id-optional:
  description: |
    The ID of the QoS Policy which will apply to the Virtual IP (VIP).
  in: body
  required: false
  type: uuid
vip_subnet_id:
  description: |
    The ID of the subnet for the Virtual IP (VIP).
  in: body
  required: true
  type: uuid
vip_subnet_id-optional:
  description: |
    The ID of the subnet for the Virtual IP (VIP). One of ``vip_network_id``,
    ``vip_port_id``, or ``vip_subnet_id`` must be specified.
  in: body
  required: false
  type: uuid
vrrp-id:
  description: |
    The vrrp group's ID for the amphora.
  in: body
  required: true
  type: string
vrrp-interface:
  description: |
    The bound interface name of the vrrp port on the amphora.
  in: body
  required: true
  type: string
vrrp-ip:
  description: |
    The address of the vrrp port on the amphora.
  in: body
  required: true
  type: string
vrrp-port-id:
  description: |
    The vrrp port's ID in the networking system.
  in: body
  required: true
  type: uuid
vrrp-priority:
  description: |
    The priority of the amphora in the vrrp group.
  in: body
  required: true
  type: string
weight:
  description: |
    The weight of a member determines the portion of requests or connections it
    services compared to the other members of the pool. For example, a member
    with a weight of 10 receives five times as many requests as a member with a
    weight of 2. A value of 0 means the member does not receive new connections
    but continues to service existing connections. A valid value is
    from ``0`` to ``256``. Default is ``1``.
  in: body
  required: true
  type: integer
weight-optional:
  description: |
    The weight of a member determines the portion of requests or connections it
    services compared to the other members of the pool. For example, a member
    with a weight of 10 receives five times as many requests as a member with a
    weight of 2. A value of 0 means the member does not receive new connections
    but continues to service existing connections. A valid value is
    from ``0`` to ``256``. Default is ``1``.
  in: body
  required: false
  type: integer
x_forwarded_for:
  description: |
    When ``true`` a ``X-Forwarded-For`` header is inserted into the request
    to the backend ``member`` that specifies the client (source) IP address.
    The default is ``false``.
  in: body
  required: false
  type: boolean
x_forwarded_port:
  description: |
    When ``true`` a ``X-Forwarded-Port`` header is inserted into the request
    to the backend ``member`` that specifies the listener port the request
    was received on. The default is ``false``.
  in: body
  required: false
  type: boolean
