syntax = "proto3"; package envoy.config.ratelimit.v2; option go_package = "v2"; import "envoy/api/v2/core/grpc_service.proto"; import "validate/validate.proto"; // [#protodoc-title: Rate limit service] // Rate limit :ref:`configuration overview `. message RateLimitServiceConfig { oneof service_specifier { option (validate.required) = true; // Specifies the cluster manager cluster name that hosts the rate limit // service. The client will connect to this cluster when it needs to make // rate limit service requests. This field is deprecated and `grpc_service` // should be used instead. The :ref:`Envoy gRPC client // ` will be used when this field is // specified. string cluster_name = 1 [(validate.rules).string.min_bytes = 1, deprecated = true]; // Specifies the gRPC service that hosts the rate limit service. The client // will connect to this cluster when it needs to make rate limit service // requests. envoy.api.v2.core.GrpcService grpc_service = 2; } // Specifies if Envoy should use the data-plane-api client // :repo:`api/envoy/service/ratelimit/v2/rls.proto` or the legacy // client :repo:`source/common/ratelimit/ratelimit.proto` when // making requests to the rate limit service. // // .. note:: // // The legacy client will be used by // default until the start of the 1.9.0 release cycle. At the start of the // 1.9.0 release cycle this field will be removed and only the data-plane-api // proto will be supported. This means that your rate limit service needs to // have support for the data-plane-api proto by the start of the 1.9.0 release cycle. // Lyft's `reference implementation `_ // supports the data-plane-api version as of v1.1.0. bool use_data_plane_proto = 3 [deprecated = true]; }