.. _envoy_v3_api_file_envoy/extensions/rate_limit_descriptors/expr/v3/expr.proto: Rate limit descriptor expression (proto) ======================================== .. _extension_envoy.rate_limit_descriptors.expr: This extension has the qualified name ``envoy.rate_limit_descriptors.expr`` .. note:: This extension has an unknown security posture and should only be used in deployments where both the downstream and upstream are trusted. .. tip:: This extension extends and can be used with the following extension category: - :ref:`envoy.rate_limit_descriptors <extension_category_envoy.rate_limit_descriptors>` This extension must be configured with one of the following type URLs: - :ref:`type.googleapis.com/envoy.extensions.rate_limit_descriptors.expr.v3.Descriptor <envoy_v3_api_msg_extensions.rate_limit_descriptors.expr.v3.Descriptor>` .. _envoy_v3_api_msg_extensions.rate_limit_descriptors.expr.v3.Descriptor: extensions.rate_limit_descriptors.expr.v3.Descriptor ---------------------------------------------------- :repo:`[extensions.rate_limit_descriptors.expr.v3.Descriptor proto] <api/envoy/extensions/rate_limit_descriptors/expr/v3/expr.proto#L26>` The following descriptor entry is appended with a value computed from a symbolic Common Expression Language expression. See :ref:`attributes <arch_overview_attributes>` for the set of available attributes. .. code-block:: cpp ("<descriptor_key>", "<expression_value>") .. code-block:: json :force: { "descriptor_key": ..., "skip_if_error": ..., "text": ..., "parsed": {...} } .. _envoy_v3_api_field_extensions.rate_limit_descriptors.expr.v3.Descriptor.descriptor_key: descriptor_key (`string <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_, *REQUIRED*) The key to use in the descriptor entry. .. _envoy_v3_api_field_extensions.rate_limit_descriptors.expr.v3.Descriptor.skip_if_error: skip_if_error (`bool <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) If set to true, Envoy skips the descriptor if the expression evaluates to an error. By default, the rate limit is not applied when an expression produces an error. .. _envoy_v3_api_field_extensions.rate_limit_descriptors.expr.v3.Descriptor.text: text (`string <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Expression in a text form, e.g. "connection.requested_server_name". Only one of :ref:`text <envoy_v3_api_field_extensions.rate_limit_descriptors.expr.v3.Descriptor.text>`, :ref:`parsed <envoy_v3_api_field_extensions.rate_limit_descriptors.expr.v3.Descriptor.parsed>` may be set. .. _envoy_v3_api_field_extensions.rate_limit_descriptors.expr.v3.Descriptor.parsed: parsed (.google.api.expr.v1alpha1.Expr) Parsed expression in AST form. Only one of :ref:`text <envoy_v3_api_field_extensions.rate_limit_descriptors.expr.v3.Descriptor.text>`, :ref:`parsed <envoy_v3_api_field_extensions.rate_limit_descriptors.expr.v3.Descriptor.parsed>` may be set.