.. _envoy_v3_api_file_envoy/type/v3/token_bucket.proto: Token bucket (proto) ==================== .. _envoy_v3_api_msg_type.v3.TokenBucket: type.v3.TokenBucket ------------------- :repo:`[type.v3.TokenBucket proto] ` Configures a token bucket, typically used for rate limiting. .. code-block:: json :force: { "max_tokens": ..., "tokens_per_fill": {...}, "fill_interval": {...} } .. _envoy_v3_api_field_type.v3.TokenBucket.max_tokens: max_tokens (`uint32 `_) The maximum tokens that the bucket can hold. This is also the number of tokens that the bucket initially contains. .. _envoy_v3_api_field_type.v3.TokenBucket.tokens_per_fill: tokens_per_fill (`UInt32Value `_) The number of tokens added to the bucket during each fill interval. If not specified, defaults to a single token. .. _envoy_v3_api_field_type.v3.TokenBucket.fill_interval: fill_interval (`Duration `_, *REQUIRED*) The fill interval that tokens are added to the bucket. During each fill interval ``tokens_per_fill`` are added to the bucket. The bucket will never contain more than ``max_tokens`` tokens.