1. Packages
  2. Konnect Provider
  3. API Docs
  4. GatewayPluginRateLimitingAdvanced
konnect 2.5.0 published on Tuesday, Apr 15, 2025 by kong

konnect.GatewayPluginRateLimitingAdvanced

Explore with Pulumi AI

GatewayPluginRateLimitingAdvanced Resource

Example Usage

Coming soon!
Coming soon!
Coming soon!
Coming soon!
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.konnect.GatewayPluginRateLimitingAdvanced;
import com.pulumi.konnect.GatewayPluginRateLimitingAdvancedArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConfigArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConfigRedisArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConsumerArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConsumerGroupArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedOrderingArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedOrderingAfterArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedOrderingBeforeArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedRouteArgs;
import com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var myGatewaypluginratelimitingadvanced = new GatewayPluginRateLimitingAdvanced("myGatewaypluginratelimitingadvanced", GatewayPluginRateLimitingAdvancedArgs.builder()
            .config(GatewayPluginRateLimitingAdvancedConfigArgs.builder()
                .compound_identifier("header")
                .consumer_groups("...")
                .dictionary_name("...my_dictionary_name...")
                .disable_penalty(false)
                .enforce_consumer_groups(false)
                .error_code(3.07)
                .error_message("...my_error_message...")
                .header_name("...my_header_name...")
                .hide_client_headers(true)
                .identifier("consumer")
                .limit(4.52)
                .lock_dictionary_name("...my_lock_dictionary_name...")
                .namespace("...my_namespace...")
                .path("...my_path...")
                .redis(GatewayPluginRateLimitingAdvancedConfigRedisArgs.builder()
                    .clusterMaxRedirections(7)
                    .clusterNodes(GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArgs.builder()
                        .ip("...my_ip...")
                        .port(54354)
                        .build())
                    .connectTimeout(374037696)
                    .connectionIsProxied(false)
                    .database(3)
                    .host("...my_host...")
                    .keepaliveBacklog(788639936)
                    .keepalivePoolSize(1875079515)
                    .password("...my_password...")
                    .port(63483)
                    .readTimeout(382621324)
                    .redisProxyType("envoy_v1.31")
                    .sendTimeout(1710404950)
                    .sentinelMaster("...my_sentinel_master...")
                    .sentinelNodes(GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArgs.builder()
                        .host("...my_host...")
                        .port(57176)
                        .build())
                    .sentinelPassword("...my_sentinel_password...")
                    .sentinelRole("any")
                    .sentinelUsername("...my_sentinel_username...")
                    .serverName("...my_server_name...")
                    .ssl(true)
                    .sslVerify(true)
                    .username("...my_username...")
                    .build())
                .retry_after_jitter_max(9.23)
                .strategy("cluster")
                .sync_rate(4.11)
                .window_size(4.61)
                .window_type("sliding")
                .build())
            .consumer(GatewayPluginRateLimitingAdvancedConsumerArgs.builder()
                .id("...my_id...")
                .build())
            .consumerGroup(GatewayPluginRateLimitingAdvancedConsumerGroupArgs.builder()
                .id("...my_id...")
                .build())
            .controlPlaneId("9524ec7d-36d9-465d-a8c5-83a3c9390458")
            .createdAt(4)
            .enabled(true)
            .gatewayPluginRateLimitingAdvancedId("...my_id...")
            .instanceName("...my_instance_name...")
            .ordering(GatewayPluginRateLimitingAdvancedOrderingArgs.builder()
                .after(GatewayPluginRateLimitingAdvancedOrderingAfterArgs.builder()
                    .access("...")
                    .build())
                .before(GatewayPluginRateLimitingAdvancedOrderingBeforeArgs.builder()
                    .access("...")
                    .build())
                .build())
            .protocols("grpcs")
            .route(GatewayPluginRateLimitingAdvancedRouteArgs.builder()
                .id("...my_id...")
                .build())
            .service(GatewayPluginRateLimitingAdvancedServiceArgs.builder()
                .id("...my_id...")
                .build())
            .tags("...")
            .updatedAt(9)
            .build());

    }
}
Copy
resources:
  myGatewaypluginratelimitingadvanced:
    type: konnect:GatewayPluginRateLimitingAdvanced
    properties:
      config:
        compound_identifier:
          - header
        consumer_groups:
          - '...'
        dictionary_name: '...my_dictionary_name...'
        disable_penalty: false
        enforce_consumer_groups: false
        error_code: 3.07
        error_message: '...my_error_message...'
        header_name: '...my_header_name...'
        hide_client_headers: true
        identifier: consumer
        limit:
          - 4.52
        lock_dictionary_name: '...my_lock_dictionary_name...'
        namespace: '...my_namespace...'
        path: '...my_path...'
        redis:
          clusterMaxRedirections: 7
          clusterNodes:
            - ip: '...my_ip...'
              port: 54354
          connectTimeout: 3.74037696e+08
          connectionIsProxied: false
          database: 3
          host: '...my_host...'
          keepaliveBacklog: 7.88639936e+08
          keepalivePoolSize: 1.875079515e+09
          password: '...my_password...'
          port: 63483
          readTimeout: 3.82621324e+08
          redisProxyType: envoy_v1.31
          sendTimeout: 1.71040495e+09
          sentinelMaster: '...my_sentinel_master...'
          sentinelNodes:
            - host: '...my_host...'
              port: 57176
          sentinelPassword: '...my_sentinel_password...'
          sentinelRole: any
          sentinelUsername: '...my_sentinel_username...'
          serverName: '...my_server_name...'
          ssl: true
          sslVerify: true
          username: '...my_username...'
        retry_after_jitter_max: 9.23
        strategy: cluster
        sync_rate: 4.11
        window_size:
          - 4.61
        window_type: sliding
      consumer:
        id: '...my_id...'
      consumerGroup:
        id: '...my_id...'
      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458
      createdAt: 4
      enabled: true
      gatewayPluginRateLimitingAdvancedId: '...my_id...'
      instanceName: '...my_instance_name...'
      ordering:
        after:
          access:
            - '...'
        before:
          access:
            - '...'
      protocols:
        - grpcs
      route:
        id: '...my_id...'
      service:
        id: '...my_id...'
      tags:
        - '...'
      updatedAt: 9
Copy

Create GatewayPluginRateLimitingAdvanced Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new GatewayPluginRateLimitingAdvanced(name: string, args: GatewayPluginRateLimitingAdvancedArgs, opts?: CustomResourceOptions);
@overload
def GatewayPluginRateLimitingAdvanced(resource_name: str,
                                      args: GatewayPluginRateLimitingAdvancedArgs,
                                      opts: Optional[ResourceOptions] = None)

@overload
def GatewayPluginRateLimitingAdvanced(resource_name: str,
                                      opts: Optional[ResourceOptions] = None,
                                      control_plane_id: Optional[str] = None,
                                      gateway_plugin_rate_limiting_advanced_id: Optional[str] = None,
                                      consumer_group: Optional[GatewayPluginRateLimitingAdvancedConsumerGroupArgs] = None,
                                      consumer: Optional[GatewayPluginRateLimitingAdvancedConsumerArgs] = None,
                                      created_at: Optional[float] = None,
                                      enabled: Optional[bool] = None,
                                      config: Optional[GatewayPluginRateLimitingAdvancedConfigArgs] = None,
                                      instance_name: Optional[str] = None,
                                      ordering: Optional[GatewayPluginRateLimitingAdvancedOrderingArgs] = None,
                                      protocols: Optional[Sequence[str]] = None,
                                      route: Optional[GatewayPluginRateLimitingAdvancedRouteArgs] = None,
                                      service: Optional[GatewayPluginRateLimitingAdvancedServiceArgs] = None,
                                      tags: Optional[Sequence[str]] = None,
                                      updated_at: Optional[float] = None)
func NewGatewayPluginRateLimitingAdvanced(ctx *Context, name string, args GatewayPluginRateLimitingAdvancedArgs, opts ...ResourceOption) (*GatewayPluginRateLimitingAdvanced, error)
public GatewayPluginRateLimitingAdvanced(string name, GatewayPluginRateLimitingAdvancedArgs args, CustomResourceOptions? opts = null)
public GatewayPluginRateLimitingAdvanced(String name, GatewayPluginRateLimitingAdvancedArgs args)
public GatewayPluginRateLimitingAdvanced(String name, GatewayPluginRateLimitingAdvancedArgs args, CustomResourceOptions options)
type: konnect:GatewayPluginRateLimitingAdvanced
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. GatewayPluginRateLimitingAdvancedArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. GatewayPluginRateLimitingAdvancedArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. GatewayPluginRateLimitingAdvancedArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. GatewayPluginRateLimitingAdvancedArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. GatewayPluginRateLimitingAdvancedArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var gatewayPluginRateLimitingAdvancedResource = new Konnect.GatewayPluginRateLimitingAdvanced("gatewayPluginRateLimitingAdvancedResource", new()
{
    ControlPlaneId = "string",
    GatewayPluginRateLimitingAdvancedId = "string",
    ConsumerGroup = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConsumerGroupArgs
    {
        Id = "string",
    },
    Consumer = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConsumerArgs
    {
        Id = "string",
    },
    CreatedAt = 0,
    Enabled = false,
    Config = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigArgs
    {
        CompoundIdentifiers = new[]
        {
            "string",
        },
        ConsumerGroups = new[]
        {
            "string",
        },
        DictionaryName = "string",
        DisablePenalty = false,
        EnforceConsumerGroups = false,
        ErrorCode = 0,
        ErrorMessage = "string",
        HeaderName = "string",
        HideClientHeaders = false,
        Identifier = "string",
        Limits = new[]
        {
            0,
        },
        LockDictionaryName = "string",
        Namespace = "string",
        Path = "string",
        Redis = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigRedisArgs
        {
            ClusterMaxRedirections = 0,
            ClusterNodes = new[]
            {
                new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArgs
                {
                    Ip = "string",
                    Port = 0,
                },
            },
            ConnectTimeout = 0,
            ConnectionIsProxied = false,
            Database = 0,
            Host = "string",
            KeepaliveBacklog = 0,
            KeepalivePoolSize = 0,
            Password = "string",
            Port = 0,
            ReadTimeout = 0,
            RedisProxyType = "string",
            SendTimeout = 0,
            SentinelMaster = "string",
            SentinelNodes = new[]
            {
                new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArgs
                {
                    Host = "string",
                    Port = 0,
                },
            },
            SentinelPassword = "string",
            SentinelRole = "string",
            SentinelUsername = "string",
            ServerName = "string",
            Ssl = false,
            SslVerify = false,
            Username = "string",
        },
        RetryAfterJitterMax = 0,
        Strategy = "string",
        SyncRate = 0,
        WindowSizes = new[]
        {
            0,
        },
        WindowType = "string",
    },
    InstanceName = "string",
    Ordering = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedOrderingArgs
    {
        After = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedOrderingAfterArgs
        {
            Accesses = new[]
            {
                "string",
            },
        },
        Before = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedOrderingBeforeArgs
        {
            Accesses = new[]
            {
                "string",
            },
        },
    },
    Protocols = new[]
    {
        "string",
    },
    Route = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedRouteArgs
    {
        Id = "string",
    },
    Service = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedServiceArgs
    {
        Id = "string",
    },
    Tags = new[]
    {
        "string",
    },
    UpdatedAt = 0,
});
Copy
example, err := konnect.NewGatewayPluginRateLimitingAdvanced(ctx, "gatewayPluginRateLimitingAdvancedResource", &konnect.GatewayPluginRateLimitingAdvancedArgs{
ControlPlaneId: pulumi.String("string"),
GatewayPluginRateLimitingAdvancedId: pulumi.String("string"),
ConsumerGroup: &.GatewayPluginRateLimitingAdvancedConsumerGroupArgs{
Id: pulumi.String("string"),
},
Consumer: &.GatewayPluginRateLimitingAdvancedConsumerArgs{
Id: pulumi.String("string"),
},
CreatedAt: pulumi.Float64(0),
Enabled: pulumi.Bool(false),
Config: &.GatewayPluginRateLimitingAdvancedConfigArgs{
CompoundIdentifiers: pulumi.StringArray{
pulumi.String("string"),
},
ConsumerGroups: pulumi.StringArray{
pulumi.String("string"),
},
DictionaryName: pulumi.String("string"),
DisablePenalty: pulumi.Bool(false),
EnforceConsumerGroups: pulumi.Bool(false),
ErrorCode: pulumi.Float64(0),
ErrorMessage: pulumi.String("string"),
HeaderName: pulumi.String("string"),
HideClientHeaders: pulumi.Bool(false),
Identifier: pulumi.String("string"),
Limits: pulumi.Float64Array{
pulumi.Float64(0),
},
LockDictionaryName: pulumi.String("string"),
Namespace: pulumi.String("string"),
Path: pulumi.String("string"),
Redis: &.GatewayPluginRateLimitingAdvancedConfigRedisArgs{
ClusterMaxRedirections: pulumi.Float64(0),
ClusterNodes: .GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArray{
&.GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArgs{
Ip: pulumi.String("string"),
Port: pulumi.Float64(0),
},
},
ConnectTimeout: pulumi.Float64(0),
ConnectionIsProxied: pulumi.Bool(false),
Database: pulumi.Float64(0),
Host: pulumi.String("string"),
KeepaliveBacklog: pulumi.Float64(0),
KeepalivePoolSize: pulumi.Float64(0),
Password: pulumi.String("string"),
Port: pulumi.Float64(0),
ReadTimeout: pulumi.Float64(0),
RedisProxyType: pulumi.String("string"),
SendTimeout: pulumi.Float64(0),
SentinelMaster: pulumi.String("string"),
SentinelNodes: .GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArray{
&.GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArgs{
Host: pulumi.String("string"),
Port: pulumi.Float64(0),
},
},
SentinelPassword: pulumi.String("string"),
SentinelRole: pulumi.String("string"),
SentinelUsername: pulumi.String("string"),
ServerName: pulumi.String("string"),
Ssl: pulumi.Bool(false),
SslVerify: pulumi.Bool(false),
Username: pulumi.String("string"),
},
RetryAfterJitterMax: pulumi.Float64(0),
Strategy: pulumi.String("string"),
SyncRate: pulumi.Float64(0),
WindowSizes: pulumi.Float64Array{
pulumi.Float64(0),
},
WindowType: pulumi.String("string"),
},
InstanceName: pulumi.String("string"),
Ordering: &.GatewayPluginRateLimitingAdvancedOrderingArgs{
After: &.GatewayPluginRateLimitingAdvancedOrderingAfterArgs{
Accesses: pulumi.StringArray{
pulumi.String("string"),
},
},
Before: &.GatewayPluginRateLimitingAdvancedOrderingBeforeArgs{
Accesses: pulumi.StringArray{
pulumi.String("string"),
},
},
},
Protocols: pulumi.StringArray{
pulumi.String("string"),
},
Route: &.GatewayPluginRateLimitingAdvancedRouteArgs{
Id: pulumi.String("string"),
},
Service: &.GatewayPluginRateLimitingAdvancedServiceArgs{
Id: pulumi.String("string"),
},
Tags: pulumi.StringArray{
pulumi.String("string"),
},
UpdatedAt: pulumi.Float64(0),
})
Copy
var gatewayPluginRateLimitingAdvancedResource = new GatewayPluginRateLimitingAdvanced("gatewayPluginRateLimitingAdvancedResource", GatewayPluginRateLimitingAdvancedArgs.builder()
    .controlPlaneId("string")
    .gatewayPluginRateLimitingAdvancedId("string")
    .consumerGroup(GatewayPluginRateLimitingAdvancedConsumerGroupArgs.builder()
        .id("string")
        .build())
    .consumer(GatewayPluginRateLimitingAdvancedConsumerArgs.builder()
        .id("string")
        .build())
    .createdAt(0)
    .enabled(false)
    .config(GatewayPluginRateLimitingAdvancedConfigArgs.builder()
        .compoundIdentifiers("string")
        .consumerGroups("string")
        .dictionaryName("string")
        .disablePenalty(false)
        .enforceConsumerGroups(false)
        .errorCode(0)
        .errorMessage("string")
        .headerName("string")
        .hideClientHeaders(false)
        .identifier("string")
        .limits(0)
        .lockDictionaryName("string")
        .namespace("string")
        .path("string")
        .redis(GatewayPluginRateLimitingAdvancedConfigRedisArgs.builder()
            .clusterMaxRedirections(0)
            .clusterNodes(GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArgs.builder()
                .ip("string")
                .port(0)
                .build())
            .connectTimeout(0)
            .connectionIsProxied(false)
            .database(0)
            .host("string")
            .keepaliveBacklog(0)
            .keepalivePoolSize(0)
            .password("string")
            .port(0)
            .readTimeout(0)
            .redisProxyType("string")
            .sendTimeout(0)
            .sentinelMaster("string")
            .sentinelNodes(GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArgs.builder()
                .host("string")
                .port(0)
                .build())
            .sentinelPassword("string")
            .sentinelRole("string")
            .sentinelUsername("string")
            .serverName("string")
            .ssl(false)
            .sslVerify(false)
            .username("string")
            .build())
        .retryAfterJitterMax(0)
        .strategy("string")
        .syncRate(0)
        .windowSizes(0)
        .windowType("string")
        .build())
    .instanceName("string")
    .ordering(GatewayPluginRateLimitingAdvancedOrderingArgs.builder()
        .after(GatewayPluginRateLimitingAdvancedOrderingAfterArgs.builder()
            .accesses("string")
            .build())
        .before(GatewayPluginRateLimitingAdvancedOrderingBeforeArgs.builder()
            .accesses("string")
            .build())
        .build())
    .protocols("string")
    .route(GatewayPluginRateLimitingAdvancedRouteArgs.builder()
        .id("string")
        .build())
    .service(GatewayPluginRateLimitingAdvancedServiceArgs.builder()
        .id("string")
        .build())
    .tags("string")
    .updatedAt(0)
    .build());
Copy
gateway_plugin_rate_limiting_advanced_resource = konnect.GatewayPluginRateLimitingAdvanced("gatewayPluginRateLimitingAdvancedResource",
    control_plane_id="string",
    gateway_plugin_rate_limiting_advanced_id="string",
    consumer_group={
        "id": "string",
    },
    consumer={
        "id": "string",
    },
    created_at=0,
    enabled=False,
    config={
        "compound_identifiers": ["string"],
        "consumer_groups": ["string"],
        "dictionary_name": "string",
        "disable_penalty": False,
        "enforce_consumer_groups": False,
        "error_code": 0,
        "error_message": "string",
        "header_name": "string",
        "hide_client_headers": False,
        "identifier": "string",
        "limits": [0],
        "lock_dictionary_name": "string",
        "namespace": "string",
        "path": "string",
        "redis": {
            "cluster_max_redirections": 0,
            "cluster_nodes": [{
                "ip": "string",
                "port": 0,
            }],
            "connect_timeout": 0,
            "connection_is_proxied": False,
            "database": 0,
            "host": "string",
            "keepalive_backlog": 0,
            "keepalive_pool_size": 0,
            "password": "string",
            "port": 0,
            "read_timeout": 0,
            "redis_proxy_type": "string",
            "send_timeout": 0,
            "sentinel_master": "string",
            "sentinel_nodes": [{
                "host": "string",
                "port": 0,
            }],
            "sentinel_password": "string",
            "sentinel_role": "string",
            "sentinel_username": "string",
            "server_name": "string",
            "ssl": False,
            "ssl_verify": False,
            "username": "string",
        },
        "retry_after_jitter_max": 0,
        "strategy": "string",
        "sync_rate": 0,
        "window_sizes": [0],
        "window_type": "string",
    },
    instance_name="string",
    ordering={
        "after": {
            "accesses": ["string"],
        },
        "before": {
            "accesses": ["string"],
        },
    },
    protocols=["string"],
    route={
        "id": "string",
    },
    service={
        "id": "string",
    },
    tags=["string"],
    updated_at=0)
Copy
const gatewayPluginRateLimitingAdvancedResource = new konnect.GatewayPluginRateLimitingAdvanced("gatewayPluginRateLimitingAdvancedResource", {
    controlPlaneId: "string",
    gatewayPluginRateLimitingAdvancedId: "string",
    consumerGroup: {
        id: "string",
    },
    consumer: {
        id: "string",
    },
    createdAt: 0,
    enabled: false,
    config: {
        compoundIdentifiers: ["string"],
        consumerGroups: ["string"],
        dictionaryName: "string",
        disablePenalty: false,
        enforceConsumerGroups: false,
        errorCode: 0,
        errorMessage: "string",
        headerName: "string",
        hideClientHeaders: false,
        identifier: "string",
        limits: [0],
        lockDictionaryName: "string",
        namespace: "string",
        path: "string",
        redis: {
            clusterMaxRedirections: 0,
            clusterNodes: [{
                ip: "string",
                port: 0,
            }],
            connectTimeout: 0,
            connectionIsProxied: false,
            database: 0,
            host: "string",
            keepaliveBacklog: 0,
            keepalivePoolSize: 0,
            password: "string",
            port: 0,
            readTimeout: 0,
            redisProxyType: "string",
            sendTimeout: 0,
            sentinelMaster: "string",
            sentinelNodes: [{
                host: "string",
                port: 0,
            }],
            sentinelPassword: "string",
            sentinelRole: "string",
            sentinelUsername: "string",
            serverName: "string",
            ssl: false,
            sslVerify: false,
            username: "string",
        },
        retryAfterJitterMax: 0,
        strategy: "string",
        syncRate: 0,
        windowSizes: [0],
        windowType: "string",
    },
    instanceName: "string",
    ordering: {
        after: {
            accesses: ["string"],
        },
        before: {
            accesses: ["string"],
        },
    },
    protocols: ["string"],
    route: {
        id: "string",
    },
    service: {
        id: "string",
    },
    tags: ["string"],
    updatedAt: 0,
});
Copy
type: konnect:GatewayPluginRateLimitingAdvanced
properties:
    config:
        compoundIdentifiers:
            - string
        consumerGroups:
            - string
        dictionaryName: string
        disablePenalty: false
        enforceConsumerGroups: false
        errorCode: 0
        errorMessage: string
        headerName: string
        hideClientHeaders: false
        identifier: string
        limits:
            - 0
        lockDictionaryName: string
        namespace: string
        path: string
        redis:
            clusterMaxRedirections: 0
            clusterNodes:
                - ip: string
                  port: 0
            connectTimeout: 0
            connectionIsProxied: false
            database: 0
            host: string
            keepaliveBacklog: 0
            keepalivePoolSize: 0
            password: string
            port: 0
            readTimeout: 0
            redisProxyType: string
            sendTimeout: 0
            sentinelMaster: string
            sentinelNodes:
                - host: string
                  port: 0
            sentinelPassword: string
            sentinelRole: string
            sentinelUsername: string
            serverName: string
            ssl: false
            sslVerify: false
            username: string
        retryAfterJitterMax: 0
        strategy: string
        syncRate: 0
        windowSizes:
            - 0
        windowType: string
    consumer:
        id: string
    consumerGroup:
        id: string
    controlPlaneId: string
    createdAt: 0
    enabled: false
    gatewayPluginRateLimitingAdvancedId: string
    instanceName: string
    ordering:
        after:
            accesses:
                - string
        before:
            accesses:
                - string
    protocols:
        - string
    route:
        id: string
    service:
        id: string
    tags:
        - string
    updatedAt: 0
Copy

GatewayPluginRateLimitingAdvanced Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The GatewayPluginRateLimitingAdvanced resource accepts the following input properties:

ControlPlaneId This property is required. string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
Config GatewayPluginRateLimitingAdvancedConfig
Consumer GatewayPluginRateLimitingAdvancedConsumer
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
ConsumerGroup GatewayPluginRateLimitingAdvancedConsumerGroup
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
CreatedAt double
Unix epoch when the resource was created.
Enabled bool
Whether the plugin is applied.
GatewayPluginRateLimitingAdvancedId string
The ID of this resource.
InstanceName string
Ordering GatewayPluginRateLimitingAdvancedOrdering
Protocols List<string>
A set of strings representing HTTP protocols.
Route GatewayPluginRateLimitingAdvancedRoute
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
Service GatewayPluginRateLimitingAdvancedService
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
Tags List<string>
An optional set of strings associated with the Plugin for grouping and filtering.
UpdatedAt double
Unix epoch when the resource was last updated.
ControlPlaneId This property is required. string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
Config GatewayPluginRateLimitingAdvancedConfigArgs
Consumer GatewayPluginRateLimitingAdvancedConsumerArgs
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
ConsumerGroup GatewayPluginRateLimitingAdvancedConsumerGroupArgs
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
CreatedAt float64
Unix epoch when the resource was created.
Enabled bool
Whether the plugin is applied.
GatewayPluginRateLimitingAdvancedId string
The ID of this resource.
InstanceName string
Ordering GatewayPluginRateLimitingAdvancedOrderingArgs
Protocols []string
A set of strings representing HTTP protocols.
Route GatewayPluginRateLimitingAdvancedRouteArgs
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
Service GatewayPluginRateLimitingAdvancedServiceArgs
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
Tags []string
An optional set of strings associated with the Plugin for grouping and filtering.
UpdatedAt float64
Unix epoch when the resource was last updated.
controlPlaneId This property is required. String
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
config GatewayPluginRateLimitingAdvancedConfig
consumer GatewayPluginRateLimitingAdvancedConsumer
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
consumerGroup GatewayPluginRateLimitingAdvancedConsumerGroup
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
createdAt Double
Unix epoch when the resource was created.
enabled Boolean
Whether the plugin is applied.
gatewayPluginRateLimitingAdvancedId String
The ID of this resource.
instanceName String
ordering GatewayPluginRateLimitingAdvancedOrdering
protocols List<String>
A set of strings representing HTTP protocols.
route GatewayPluginRateLimitingAdvancedRoute
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
service GatewayPluginRateLimitingAdvancedService
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
tags List<String>
An optional set of strings associated with the Plugin for grouping and filtering.
updatedAt Double
Unix epoch when the resource was last updated.
controlPlaneId This property is required. string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
config GatewayPluginRateLimitingAdvancedConfig
consumer GatewayPluginRateLimitingAdvancedConsumer
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
consumerGroup GatewayPluginRateLimitingAdvancedConsumerGroup
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
createdAt number
Unix epoch when the resource was created.
enabled boolean
Whether the plugin is applied.
gatewayPluginRateLimitingAdvancedId string
The ID of this resource.
instanceName string
ordering GatewayPluginRateLimitingAdvancedOrdering
protocols string[]
A set of strings representing HTTP protocols.
route GatewayPluginRateLimitingAdvancedRoute
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
service GatewayPluginRateLimitingAdvancedService
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
tags string[]
An optional set of strings associated with the Plugin for grouping and filtering.
updatedAt number
Unix epoch when the resource was last updated.
control_plane_id This property is required. str
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
config GatewayPluginRateLimitingAdvancedConfigArgs
consumer GatewayPluginRateLimitingAdvancedConsumerArgs
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
consumer_group GatewayPluginRateLimitingAdvancedConsumerGroupArgs
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
created_at float
Unix epoch when the resource was created.
enabled bool
Whether the plugin is applied.
gateway_plugin_rate_limiting_advanced_id str
The ID of this resource.
instance_name str
ordering GatewayPluginRateLimitingAdvancedOrderingArgs
protocols Sequence[str]
A set of strings representing HTTP protocols.
route GatewayPluginRateLimitingAdvancedRouteArgs
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
service GatewayPluginRateLimitingAdvancedServiceArgs
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
tags Sequence[str]
An optional set of strings associated with the Plugin for grouping and filtering.
updated_at float
Unix epoch when the resource was last updated.
controlPlaneId This property is required. String
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
config Property Map
consumer Property Map
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
consumerGroup Property Map
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
createdAt Number
Unix epoch when the resource was created.
enabled Boolean
Whether the plugin is applied.
gatewayPluginRateLimitingAdvancedId String
The ID of this resource.
instanceName String
ordering Property Map
protocols List<String>
A set of strings representing HTTP protocols.
route Property Map
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
service Property Map
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
tags List<String>
An optional set of strings associated with the Plugin for grouping and filtering.
updatedAt Number
Unix epoch when the resource was last updated.

Outputs

All input properties are implicitly available as output properties. Additionally, the GatewayPluginRateLimitingAdvanced resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing GatewayPluginRateLimitingAdvanced Resource

Get an existing GatewayPluginRateLimitingAdvanced resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: GatewayPluginRateLimitingAdvancedState, opts?: CustomResourceOptions): GatewayPluginRateLimitingAdvanced
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        config: Optional[GatewayPluginRateLimitingAdvancedConfigArgs] = None,
        consumer: Optional[GatewayPluginRateLimitingAdvancedConsumerArgs] = None,
        consumer_group: Optional[GatewayPluginRateLimitingAdvancedConsumerGroupArgs] = None,
        control_plane_id: Optional[str] = None,
        created_at: Optional[float] = None,
        enabled: Optional[bool] = None,
        gateway_plugin_rate_limiting_advanced_id: Optional[str] = None,
        instance_name: Optional[str] = None,
        ordering: Optional[GatewayPluginRateLimitingAdvancedOrderingArgs] = None,
        protocols: Optional[Sequence[str]] = None,
        route: Optional[GatewayPluginRateLimitingAdvancedRouteArgs] = None,
        service: Optional[GatewayPluginRateLimitingAdvancedServiceArgs] = None,
        tags: Optional[Sequence[str]] = None,
        updated_at: Optional[float] = None) -> GatewayPluginRateLimitingAdvanced
func GetGatewayPluginRateLimitingAdvanced(ctx *Context, name string, id IDInput, state *GatewayPluginRateLimitingAdvancedState, opts ...ResourceOption) (*GatewayPluginRateLimitingAdvanced, error)
public static GatewayPluginRateLimitingAdvanced Get(string name, Input<string> id, GatewayPluginRateLimitingAdvancedState? state, CustomResourceOptions? opts = null)
public static GatewayPluginRateLimitingAdvanced get(String name, Output<String> id, GatewayPluginRateLimitingAdvancedState state, CustomResourceOptions options)
resources:  _:    type: konnect:GatewayPluginRateLimitingAdvanced    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
Config GatewayPluginRateLimitingAdvancedConfig
Consumer GatewayPluginRateLimitingAdvancedConsumer
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
ConsumerGroup GatewayPluginRateLimitingAdvancedConsumerGroup
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
ControlPlaneId string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
CreatedAt double
Unix epoch when the resource was created.
Enabled bool
Whether the plugin is applied.
GatewayPluginRateLimitingAdvancedId string
The ID of this resource.
InstanceName string
Ordering GatewayPluginRateLimitingAdvancedOrdering
Protocols List<string>
A set of strings representing HTTP protocols.
Route GatewayPluginRateLimitingAdvancedRoute
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
Service GatewayPluginRateLimitingAdvancedService
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
Tags List<string>
An optional set of strings associated with the Plugin for grouping and filtering.
UpdatedAt double
Unix epoch when the resource was last updated.
Config GatewayPluginRateLimitingAdvancedConfigArgs
Consumer GatewayPluginRateLimitingAdvancedConsumerArgs
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
ConsumerGroup GatewayPluginRateLimitingAdvancedConsumerGroupArgs
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
ControlPlaneId string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
CreatedAt float64
Unix epoch when the resource was created.
Enabled bool
Whether the plugin is applied.
GatewayPluginRateLimitingAdvancedId string
The ID of this resource.
InstanceName string
Ordering GatewayPluginRateLimitingAdvancedOrderingArgs
Protocols []string
A set of strings representing HTTP protocols.
Route GatewayPluginRateLimitingAdvancedRouteArgs
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
Service GatewayPluginRateLimitingAdvancedServiceArgs
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
Tags []string
An optional set of strings associated with the Plugin for grouping and filtering.
UpdatedAt float64
Unix epoch when the resource was last updated.
config GatewayPluginRateLimitingAdvancedConfig
consumer GatewayPluginRateLimitingAdvancedConsumer
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
consumerGroup GatewayPluginRateLimitingAdvancedConsumerGroup
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
controlPlaneId String
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
createdAt Double
Unix epoch when the resource was created.
enabled Boolean
Whether the plugin is applied.
gatewayPluginRateLimitingAdvancedId String
The ID of this resource.
instanceName String
ordering GatewayPluginRateLimitingAdvancedOrdering
protocols List<String>
A set of strings representing HTTP protocols.
route GatewayPluginRateLimitingAdvancedRoute
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
service GatewayPluginRateLimitingAdvancedService
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
tags List<String>
An optional set of strings associated with the Plugin for grouping and filtering.
updatedAt Double
Unix epoch when the resource was last updated.
config GatewayPluginRateLimitingAdvancedConfig
consumer GatewayPluginRateLimitingAdvancedConsumer
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
consumerGroup GatewayPluginRateLimitingAdvancedConsumerGroup
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
controlPlaneId string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
createdAt number
Unix epoch when the resource was created.
enabled boolean
Whether the plugin is applied.
gatewayPluginRateLimitingAdvancedId string
The ID of this resource.
instanceName string
ordering GatewayPluginRateLimitingAdvancedOrdering
protocols string[]
A set of strings representing HTTP protocols.
route GatewayPluginRateLimitingAdvancedRoute
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
service GatewayPluginRateLimitingAdvancedService
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
tags string[]
An optional set of strings associated with the Plugin for grouping and filtering.
updatedAt number
Unix epoch when the resource was last updated.
config GatewayPluginRateLimitingAdvancedConfigArgs
consumer GatewayPluginRateLimitingAdvancedConsumerArgs
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
consumer_group GatewayPluginRateLimitingAdvancedConsumerGroupArgs
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
control_plane_id str
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
created_at float
Unix epoch when the resource was created.
enabled bool
Whether the plugin is applied.
gateway_plugin_rate_limiting_advanced_id str
The ID of this resource.
instance_name str
ordering GatewayPluginRateLimitingAdvancedOrderingArgs
protocols Sequence[str]
A set of strings representing HTTP protocols.
route GatewayPluginRateLimitingAdvancedRouteArgs
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
service GatewayPluginRateLimitingAdvancedServiceArgs
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
tags Sequence[str]
An optional set of strings associated with the Plugin for grouping and filtering.
updated_at float
Unix epoch when the resource was last updated.
config Property Map
consumer Property Map
If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.
consumerGroup Property Map
If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups
controlPlaneId String
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
createdAt Number
Unix epoch when the resource was created.
enabled Boolean
Whether the plugin is applied.
gatewayPluginRateLimitingAdvancedId String
The ID of this resource.
instanceName String
ordering Property Map
protocols List<String>
A set of strings representing HTTP protocols.
route Property Map
If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.
service Property Map
If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.
tags List<String>
An optional set of strings associated with the Plugin for grouping and filtering.
updatedAt Number
Unix epoch when the resource was last updated.

Supporting Types

GatewayPluginRateLimitingAdvancedConfig
, GatewayPluginRateLimitingAdvancedConfigArgs

CompoundIdentifiers List<string>
Similar to identifer, but supports combining multiple items. The priority of compound_identifier is higher than identifier, which means if compound_identifer is set, it will be used, otherwise identifier will be used.
ConsumerGroups List<string>
List of consumer groups allowed to override the rate limiting settings for the given Route or Service. Required if enforce_consumer_groups is set to true.
DictionaryName string
The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is config.strategy is cluster or redis and config.sync_rate isn't -1), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle.
DisablePenalty bool
If set to true, this doesn't count denied requests (status = 429). If set to false, all requests, including denied ones, are counted. This parameter only affects the sliding window_type.
EnforceConsumerGroups bool
Determines if consumer groups are allowed to override the rate limiting settings for the given Route or Service. Flipping enforce_consumer_groups from true to false disables the group override, but does not clear the list of consumer groups. You can then flip enforce_consumer_groups to true to re-enforce the groups.
ErrorCode double
Set a custom error code to return when the rate limit is exceeded.
ErrorMessage string
Set a custom error message to return when the rate limit is exceeded.
HeaderName string
A string representing an HTTP header name.
HideClientHeaders bool
Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters.
Identifier string
The type of identifier used to generate the rate limit key. Defines the scope used to increment the rate limiting counters. Can be ip, credential, consumer, service, header, path or consumer-group. must be one of ["consumer", "consumer-group", "credential", "header", "ip", "path", "service"]
Limits List<double>
One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified.
LockDictionaryName string
The shared dictionary where concurrency control locks are stored. The default shared dictionary is kong_locks. The shared dictionary should be declare in nginx-kong.conf.
Namespace string
The rate limiting library namespace to use for this plugin instance. Counter data and sync configuration is isolated in each namespace. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. strategy, redis, sync_rate, dictionary_name, need to be the same.
Path string
A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).
Redis GatewayPluginRateLimitingAdvancedConfigRedis
RetryAfterJitterMax double
The upper bound of a jitter (random delay) in seconds to be added to the Retry-After header of denied requests (status = 429) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is 0; in this case, the Retry-After header is equal to the RateLimit-Reset header.
Strategy string
The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: local and cluster. must be one of ["cluster", "local", "redis"]
SyncRate double
How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).
WindowSizes List<double>
One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified.
WindowType string
Sets the time window type to either sliding (default) or fixed. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. must be one of ["fixed", "sliding"]
CompoundIdentifiers []string
Similar to identifer, but supports combining multiple items. The priority of compound_identifier is higher than identifier, which means if compound_identifer is set, it will be used, otherwise identifier will be used.
ConsumerGroups []string
List of consumer groups allowed to override the rate limiting settings for the given Route or Service. Required if enforce_consumer_groups is set to true.
DictionaryName string
The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is config.strategy is cluster or redis and config.sync_rate isn't -1), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle.
DisablePenalty bool
If set to true, this doesn't count denied requests (status = 429). If set to false, all requests, including denied ones, are counted. This parameter only affects the sliding window_type.
EnforceConsumerGroups bool
Determines if consumer groups are allowed to override the rate limiting settings for the given Route or Service. Flipping enforce_consumer_groups from true to false disables the group override, but does not clear the list of consumer groups. You can then flip enforce_consumer_groups to true to re-enforce the groups.
ErrorCode float64
Set a custom error code to return when the rate limit is exceeded.
ErrorMessage string
Set a custom error message to return when the rate limit is exceeded.
HeaderName string
A string representing an HTTP header name.
HideClientHeaders bool
Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters.
Identifier string
The type of identifier used to generate the rate limit key. Defines the scope used to increment the rate limiting counters. Can be ip, credential, consumer, service, header, path or consumer-group. must be one of ["consumer", "consumer-group", "credential", "header", "ip", "path", "service"]
Limits []float64
One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified.
LockDictionaryName string
The shared dictionary where concurrency control locks are stored. The default shared dictionary is kong_locks. The shared dictionary should be declare in nginx-kong.conf.
Namespace string
The rate limiting library namespace to use for this plugin instance. Counter data and sync configuration is isolated in each namespace. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. strategy, redis, sync_rate, dictionary_name, need to be the same.
Path string
A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).
Redis GatewayPluginRateLimitingAdvancedConfigRedis
RetryAfterJitterMax float64
The upper bound of a jitter (random delay) in seconds to be added to the Retry-After header of denied requests (status = 429) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is 0; in this case, the Retry-After header is equal to the RateLimit-Reset header.
Strategy string
The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: local and cluster. must be one of ["cluster", "local", "redis"]
SyncRate float64
How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).
WindowSizes []float64
One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified.
WindowType string
Sets the time window type to either sliding (default) or fixed. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. must be one of ["fixed", "sliding"]
compoundIdentifiers List<String>
Similar to identifer, but supports combining multiple items. The priority of compound_identifier is higher than identifier, which means if compound_identifer is set, it will be used, otherwise identifier will be used.
consumerGroups List<String>
List of consumer groups allowed to override the rate limiting settings for the given Route or Service. Required if enforce_consumer_groups is set to true.
dictionaryName String
The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is config.strategy is cluster or redis and config.sync_rate isn't -1), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle.
disablePenalty Boolean
If set to true, this doesn't count denied requests (status = 429). If set to false, all requests, including denied ones, are counted. This parameter only affects the sliding window_type.
enforceConsumerGroups Boolean
Determines if consumer groups are allowed to override the rate limiting settings for the given Route or Service. Flipping enforce_consumer_groups from true to false disables the group override, but does not clear the list of consumer groups. You can then flip enforce_consumer_groups to true to re-enforce the groups.
errorCode Double
Set a custom error code to return when the rate limit is exceeded.
errorMessage String
Set a custom error message to return when the rate limit is exceeded.
headerName String
A string representing an HTTP header name.
hideClientHeaders Boolean
Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters.
identifier String
The type of identifier used to generate the rate limit key. Defines the scope used to increment the rate limiting counters. Can be ip, credential, consumer, service, header, path or consumer-group. must be one of ["consumer", "consumer-group", "credential", "header", "ip", "path", "service"]
limits List<Double>
One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified.
lockDictionaryName String
The shared dictionary where concurrency control locks are stored. The default shared dictionary is kong_locks. The shared dictionary should be declare in nginx-kong.conf.
namespace String
The rate limiting library namespace to use for this plugin instance. Counter data and sync configuration is isolated in each namespace. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. strategy, redis, sync_rate, dictionary_name, need to be the same.
path String
A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).
redis GatewayPluginRateLimitingAdvancedConfigRedis
retryAfterJitterMax Double
The upper bound of a jitter (random delay) in seconds to be added to the Retry-After header of denied requests (status = 429) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is 0; in this case, the Retry-After header is equal to the RateLimit-Reset header.
strategy String
The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: local and cluster. must be one of ["cluster", "local", "redis"]
syncRate Double
How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).
windowSizes List<Double>
One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified.
windowType String
Sets the time window type to either sliding (default) or fixed. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. must be one of ["fixed", "sliding"]
compoundIdentifiers string[]
Similar to identifer, but supports combining multiple items. The priority of compound_identifier is higher than identifier, which means if compound_identifer is set, it will be used, otherwise identifier will be used.
consumerGroups string[]
List of consumer groups allowed to override the rate limiting settings for the given Route or Service. Required if enforce_consumer_groups is set to true.
dictionaryName string
The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is config.strategy is cluster or redis and config.sync_rate isn't -1), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle.
disablePenalty boolean
If set to true, this doesn't count denied requests (status = 429). If set to false, all requests, including denied ones, are counted. This parameter only affects the sliding window_type.
enforceConsumerGroups boolean
Determines if consumer groups are allowed to override the rate limiting settings for the given Route or Service. Flipping enforce_consumer_groups from true to false disables the group override, but does not clear the list of consumer groups. You can then flip enforce_consumer_groups to true to re-enforce the groups.
errorCode number
Set a custom error code to return when the rate limit is exceeded.
errorMessage string
Set a custom error message to return when the rate limit is exceeded.
headerName string
A string representing an HTTP header name.
hideClientHeaders boolean
Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters.
identifier string
The type of identifier used to generate the rate limit key. Defines the scope used to increment the rate limiting counters. Can be ip, credential, consumer, service, header, path or consumer-group. must be one of ["consumer", "consumer-group", "credential", "header", "ip", "path", "service"]
limits number[]
One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified.
lockDictionaryName string
The shared dictionary where concurrency control locks are stored. The default shared dictionary is kong_locks. The shared dictionary should be declare in nginx-kong.conf.
namespace string
The rate limiting library namespace to use for this plugin instance. Counter data and sync configuration is isolated in each namespace. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. strategy, redis, sync_rate, dictionary_name, need to be the same.
path string
A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).
redis GatewayPluginRateLimitingAdvancedConfigRedis
retryAfterJitterMax number
The upper bound of a jitter (random delay) in seconds to be added to the Retry-After header of denied requests (status = 429) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is 0; in this case, the Retry-After header is equal to the RateLimit-Reset header.
strategy string
The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: local and cluster. must be one of ["cluster", "local", "redis"]
syncRate number
How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).
windowSizes number[]
One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified.
windowType string
Sets the time window type to either sliding (default) or fixed. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. must be one of ["fixed", "sliding"]
compound_identifiers Sequence[str]
Similar to identifer, but supports combining multiple items. The priority of compound_identifier is higher than identifier, which means if compound_identifer is set, it will be used, otherwise identifier will be used.
consumer_groups Sequence[str]
List of consumer groups allowed to override the rate limiting settings for the given Route or Service. Required if enforce_consumer_groups is set to true.
dictionary_name str
The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is config.strategy is cluster or redis and config.sync_rate isn't -1), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle.
disable_penalty bool
If set to true, this doesn't count denied requests (status = 429). If set to false, all requests, including denied ones, are counted. This parameter only affects the sliding window_type.
enforce_consumer_groups bool
Determines if consumer groups are allowed to override the rate limiting settings for the given Route or Service. Flipping enforce_consumer_groups from true to false disables the group override, but does not clear the list of consumer groups. You can then flip enforce_consumer_groups to true to re-enforce the groups.
error_code float
Set a custom error code to return when the rate limit is exceeded.
error_message str
Set a custom error message to return when the rate limit is exceeded.
header_name str
A string representing an HTTP header name.
hide_client_headers bool
Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters.
identifier str
The type of identifier used to generate the rate limit key. Defines the scope used to increment the rate limiting counters. Can be ip, credential, consumer, service, header, path or consumer-group. must be one of ["consumer", "consumer-group", "credential", "header", "ip", "path", "service"]
limits Sequence[float]
One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified.
lock_dictionary_name str
The shared dictionary where concurrency control locks are stored. The default shared dictionary is kong_locks. The shared dictionary should be declare in nginx-kong.conf.
namespace str
The rate limiting library namespace to use for this plugin instance. Counter data and sync configuration is isolated in each namespace. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. strategy, redis, sync_rate, dictionary_name, need to be the same.
path str
A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).
redis GatewayPluginRateLimitingAdvancedConfigRedis
retry_after_jitter_max float
The upper bound of a jitter (random delay) in seconds to be added to the Retry-After header of denied requests (status = 429) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is 0; in this case, the Retry-After header is equal to the RateLimit-Reset header.
strategy str
The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: local and cluster. must be one of ["cluster", "local", "redis"]
sync_rate float
How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).
window_sizes Sequence[float]
One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified.
window_type str
Sets the time window type to either sliding (default) or fixed. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. must be one of ["fixed", "sliding"]
compoundIdentifiers List<String>
Similar to identifer, but supports combining multiple items. The priority of compound_identifier is higher than identifier, which means if compound_identifer is set, it will be used, otherwise identifier will be used.
consumerGroups List<String>
List of consumer groups allowed to override the rate limiting settings for the given Route or Service. Required if enforce_consumer_groups is set to true.
dictionaryName String
The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is config.strategy is cluster or redis and config.sync_rate isn't -1), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle.
disablePenalty Boolean
If set to true, this doesn't count denied requests (status = 429). If set to false, all requests, including denied ones, are counted. This parameter only affects the sliding window_type.
enforceConsumerGroups Boolean
Determines if consumer groups are allowed to override the rate limiting settings for the given Route or Service. Flipping enforce_consumer_groups from true to false disables the group override, but does not clear the list of consumer groups. You can then flip enforce_consumer_groups to true to re-enforce the groups.
errorCode Number
Set a custom error code to return when the rate limit is exceeded.
errorMessage String
Set a custom error message to return when the rate limit is exceeded.
headerName String
A string representing an HTTP header name.
hideClientHeaders Boolean
Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters.
identifier String
The type of identifier used to generate the rate limit key. Defines the scope used to increment the rate limiting counters. Can be ip, credential, consumer, service, header, path or consumer-group. must be one of ["consumer", "consumer-group", "credential", "header", "ip", "path", "service"]
limits List<Number>
One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified.
lockDictionaryName String
The shared dictionary where concurrency control locks are stored. The default shared dictionary is kong_locks. The shared dictionary should be declare in nginx-kong.conf.
namespace String
The rate limiting library namespace to use for this plugin instance. Counter data and sync configuration is isolated in each namespace. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. strategy, redis, sync_rate, dictionary_name, need to be the same.
path String
A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).
redis Property Map
retryAfterJitterMax Number
The upper bound of a jitter (random delay) in seconds to be added to the Retry-After header of denied requests (status = 429) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is 0; in this case, the Retry-After header is equal to the RateLimit-Reset header.
strategy String
The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: local and cluster. must be one of ["cluster", "local", "redis"]
syncRate Number
How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).
windowSizes List<Number>
One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified.
windowType String
Sets the time window type to either sliding (default) or fixed. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. must be one of ["fixed", "sliding"]

GatewayPluginRateLimitingAdvancedConfigRedis
, GatewayPluginRateLimitingAdvancedConfigRedisArgs

ClusterMaxRedirections double
Maximum retry attempts for redirection.
ClusterNodes List<GatewayPluginRateLimitingAdvancedConfigRedisClusterNode>
Cluster addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.
ConnectTimeout double
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
ConnectionIsProxied bool
If the connection to Redis is proxied (e.g. Envoy), set it true. Set the host and port to point to the proxy address.
Database double
Database to use for the Redis connection when using the redis strategy
Host string
A string representing a host name, such as example.com.
KeepaliveBacklog double
Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return nil. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than keepalive_pool_size. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than keepalive_pool_size.
KeepalivePoolSize double
The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither keepalive_pool_size nor keepalive_backlog is specified, no pool is created. If keepalive_pool_size isn't specified but keepalive_backlog is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low.
Password string
Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.
Port double
An integer representing a port number between 0 and 65535, inclusive.
ReadTimeout double
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
RedisProxyType string
If the connection_is_proxied is enabled, this field indicates the proxy type and version you are using. For example, you can enable this optioin when you want authentication between Kong and Envoy proxy. must be "envoy_v1.31"
SendTimeout double
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
SentinelMaster string
Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.
SentinelNodes List<GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode>
Sentinel node addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.
SentinelPassword string
Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.
SentinelRole string
Sentinel role to use for Redis connections when the redis strategy is defined. Defining this value implies using Redis Sentinel. must be one of ["any", "master", "slave"]
SentinelUsername string
Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.
ServerName string
A string representing an SNI (server name indication) value for TLS.
Ssl bool
If set to true, uses SSL to connect to Redis.
SslVerify bool
If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure lua_ssl_trusted_certificate in kong.conf to specify the CA (or server) certificate used by your Redis server. You may also need to configure lua_ssl_verify_depth accordingly.
Username string
Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to default.
ClusterMaxRedirections float64
Maximum retry attempts for redirection.
ClusterNodes []GatewayPluginRateLimitingAdvancedConfigRedisClusterNode
Cluster addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.
ConnectTimeout float64
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
ConnectionIsProxied bool
If the connection to Redis is proxied (e.g. Envoy), set it true. Set the host and port to point to the proxy address.
Database float64
Database to use for the Redis connection when using the redis strategy
Host string
A string representing a host name, such as example.com.
KeepaliveBacklog float64
Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return nil. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than keepalive_pool_size. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than keepalive_pool_size.
KeepalivePoolSize float64
The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither keepalive_pool_size nor keepalive_backlog is specified, no pool is created. If keepalive_pool_size isn't specified but keepalive_backlog is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low.
Password string
Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.
Port float64
An integer representing a port number between 0 and 65535, inclusive.
ReadTimeout float64
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
RedisProxyType string
If the connection_is_proxied is enabled, this field indicates the proxy type and version you are using. For example, you can enable this optioin when you want authentication between Kong and Envoy proxy. must be "envoy_v1.31"
SendTimeout float64
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
SentinelMaster string
Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.
SentinelNodes []GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode
Sentinel node addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.
SentinelPassword string
Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.
SentinelRole string
Sentinel role to use for Redis connections when the redis strategy is defined. Defining this value implies using Redis Sentinel. must be one of ["any", "master", "slave"]
SentinelUsername string
Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.
ServerName string
A string representing an SNI (server name indication) value for TLS.
Ssl bool
If set to true, uses SSL to connect to Redis.
SslVerify bool
If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure lua_ssl_trusted_certificate in kong.conf to specify the CA (or server) certificate used by your Redis server. You may also need to configure lua_ssl_verify_depth accordingly.
Username string
Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to default.
clusterMaxRedirections Double
Maximum retry attempts for redirection.
clusterNodes List<GatewayPluginRateLimitingAdvancedConfigRedisClusterNode>
Cluster addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.
connectTimeout Double
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
connectionIsProxied Boolean
If the connection to Redis is proxied (e.g. Envoy), set it true. Set the host and port to point to the proxy address.
database Double
Database to use for the Redis connection when using the redis strategy
host String
A string representing a host name, such as example.com.
keepaliveBacklog Double
Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return nil. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than keepalive_pool_size. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than keepalive_pool_size.
keepalivePoolSize Double
The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither keepalive_pool_size nor keepalive_backlog is specified, no pool is created. If keepalive_pool_size isn't specified but keepalive_backlog is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low.
password String
Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.
port Double
An integer representing a port number between 0 and 65535, inclusive.
readTimeout Double
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
redisProxyType String
If the connection_is_proxied is enabled, this field indicates the proxy type and version you are using. For example, you can enable this optioin when you want authentication between Kong and Envoy proxy. must be "envoy_v1.31"
sendTimeout Double
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
sentinelMaster String
Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.
sentinelNodes List<GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode>
Sentinel node addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.
sentinelPassword String
Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.
sentinelRole String
Sentinel role to use for Redis connections when the redis strategy is defined. Defining this value implies using Redis Sentinel. must be one of ["any", "master", "slave"]
sentinelUsername String
Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.
serverName String
A string representing an SNI (server name indication) value for TLS.
ssl Boolean
If set to true, uses SSL to connect to Redis.
sslVerify Boolean
If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure lua_ssl_trusted_certificate in kong.conf to specify the CA (or server) certificate used by your Redis server. You may also need to configure lua_ssl_verify_depth accordingly.
username String
Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to default.
clusterMaxRedirections number
Maximum retry attempts for redirection.
clusterNodes GatewayPluginRateLimitingAdvancedConfigRedisClusterNode[]
Cluster addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.
connectTimeout number
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
connectionIsProxied boolean
If the connection to Redis is proxied (e.g. Envoy), set it true. Set the host and port to point to the proxy address.
database number
Database to use for the Redis connection when using the redis strategy
host string
A string representing a host name, such as example.com.
keepaliveBacklog number
Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return nil. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than keepalive_pool_size. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than keepalive_pool_size.
keepalivePoolSize number
The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither keepalive_pool_size nor keepalive_backlog is specified, no pool is created. If keepalive_pool_size isn't specified but keepalive_backlog is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low.
password string
Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.
port number
An integer representing a port number between 0 and 65535, inclusive.
readTimeout number
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
redisProxyType string
If the connection_is_proxied is enabled, this field indicates the proxy type and version you are using. For example, you can enable this optioin when you want authentication between Kong and Envoy proxy. must be "envoy_v1.31"
sendTimeout number
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
sentinelMaster string
Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.
sentinelNodes GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode[]
Sentinel node addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.
sentinelPassword string
Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.
sentinelRole string
Sentinel role to use for Redis connections when the redis strategy is defined. Defining this value implies using Redis Sentinel. must be one of ["any", "master", "slave"]
sentinelUsername string
Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.
serverName string
A string representing an SNI (server name indication) value for TLS.
ssl boolean
If set to true, uses SSL to connect to Redis.
sslVerify boolean
If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure lua_ssl_trusted_certificate in kong.conf to specify the CA (or server) certificate used by your Redis server. You may also need to configure lua_ssl_verify_depth accordingly.
username string
Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to default.
cluster_max_redirections float
Maximum retry attempts for redirection.
cluster_nodes Sequence[GatewayPluginRateLimitingAdvancedConfigRedisClusterNode]
Cluster addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.
connect_timeout float
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
connection_is_proxied bool
If the connection to Redis is proxied (e.g. Envoy), set it true. Set the host and port to point to the proxy address.
database float
Database to use for the Redis connection when using the redis strategy
host str
A string representing a host name, such as example.com.
keepalive_backlog float
Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return nil. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than keepalive_pool_size. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than keepalive_pool_size.
keepalive_pool_size float
The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither keepalive_pool_size nor keepalive_backlog is specified, no pool is created. If keepalive_pool_size isn't specified but keepalive_backlog is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low.
password str
Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.
port float
An integer representing a port number between 0 and 65535, inclusive.
read_timeout float
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
redis_proxy_type str
If the connection_is_proxied is enabled, this field indicates the proxy type and version you are using. For example, you can enable this optioin when you want authentication between Kong and Envoy proxy. must be "envoy_v1.31"
send_timeout float
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
sentinel_master str
Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.
sentinel_nodes Sequence[GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode]
Sentinel node addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.
sentinel_password str
Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.
sentinel_role str
Sentinel role to use for Redis connections when the redis strategy is defined. Defining this value implies using Redis Sentinel. must be one of ["any", "master", "slave"]
sentinel_username str
Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.
server_name str
A string representing an SNI (server name indication) value for TLS.
ssl bool
If set to true, uses SSL to connect to Redis.
ssl_verify bool
If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure lua_ssl_trusted_certificate in kong.conf to specify the CA (or server) certificate used by your Redis server. You may also need to configure lua_ssl_verify_depth accordingly.
username str
Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to default.
clusterMaxRedirections Number
Maximum retry attempts for redirection.
clusterNodes List<Property Map>
Cluster addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.
connectTimeout Number
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
connectionIsProxied Boolean
If the connection to Redis is proxied (e.g. Envoy), set it true. Set the host and port to point to the proxy address.
database Number
Database to use for the Redis connection when using the redis strategy
host String
A string representing a host name, such as example.com.
keepaliveBacklog Number
Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return nil. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than keepalive_pool_size. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than keepalive_pool_size.
keepalivePoolSize Number
The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither keepalive_pool_size nor keepalive_backlog is specified, no pool is created. If keepalive_pool_size isn't specified but keepalive_backlog is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low.
password String
Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.
port Number
An integer representing a port number between 0 and 65535, inclusive.
readTimeout Number
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
redisProxyType String
If the connection_is_proxied is enabled, this field indicates the proxy type and version you are using. For example, you can enable this optioin when you want authentication between Kong and Envoy proxy. must be "envoy_v1.31"
sendTimeout Number
An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.
sentinelMaster String
Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.
sentinelNodes List<Property Map>
Sentinel node addresses to use for Redis connections when the redis strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.
sentinelPassword String
Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.
sentinelRole String
Sentinel role to use for Redis connections when the redis strategy is defined. Defining this value implies using Redis Sentinel. must be one of ["any", "master", "slave"]
sentinelUsername String
Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.
serverName String
A string representing an SNI (server name indication) value for TLS.
ssl Boolean
If set to true, uses SSL to connect to Redis.
sslVerify Boolean
If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure lua_ssl_trusted_certificate in kong.conf to specify the CA (or server) certificate used by your Redis server. You may also need to configure lua_ssl_verify_depth accordingly.
username String
Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to default.

GatewayPluginRateLimitingAdvancedConfigRedisClusterNode
, GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArgs

Ip string
A string representing a host name, such as example.com.
Port double
An integer representing a port number between 0 and 65535, inclusive.
Ip string
A string representing a host name, such as example.com.
Port float64
An integer representing a port number between 0 and 65535, inclusive.
ip String
A string representing a host name, such as example.com.
port Double
An integer representing a port number between 0 and 65535, inclusive.
ip string
A string representing a host name, such as example.com.
port number
An integer representing a port number between 0 and 65535, inclusive.
ip str
A string representing a host name, such as example.com.
port float
An integer representing a port number between 0 and 65535, inclusive.
ip String
A string representing a host name, such as example.com.
port Number
An integer representing a port number between 0 and 65535, inclusive.

GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode
, GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArgs

Host string
A string representing a host name, such as example.com.
Port double
An integer representing a port number between 0 and 65535, inclusive.
Host string
A string representing a host name, such as example.com.
Port float64
An integer representing a port number between 0 and 65535, inclusive.
host String
A string representing a host name, such as example.com.
port Double
An integer representing a port number between 0 and 65535, inclusive.
host string
A string representing a host name, such as example.com.
port number
An integer representing a port number between 0 and 65535, inclusive.
host str
A string representing a host name, such as example.com.
port float
An integer representing a port number between 0 and 65535, inclusive.
host String
A string representing a host name, such as example.com.
port Number
An integer representing a port number between 0 and 65535, inclusive.

GatewayPluginRateLimitingAdvancedConsumer
, GatewayPluginRateLimitingAdvancedConsumerArgs

Id string
Id string
id String
id string
id str
id String

GatewayPluginRateLimitingAdvancedConsumerGroup
, GatewayPluginRateLimitingAdvancedConsumerGroupArgs

Id string
Id string
id String
id string
id str
id String

GatewayPluginRateLimitingAdvancedOrdering
, GatewayPluginRateLimitingAdvancedOrderingArgs

GatewayPluginRateLimitingAdvancedOrderingAfter
, GatewayPluginRateLimitingAdvancedOrderingAfterArgs

Accesses List<string>
Accesses []string
accesses List<String>
accesses string[]
accesses Sequence[str]
accesses List<String>

GatewayPluginRateLimitingAdvancedOrderingBefore
, GatewayPluginRateLimitingAdvancedOrderingBeforeArgs

Accesses List<string>
Accesses []string
accesses List<String>
accesses string[]
accesses Sequence[str]
accesses List<String>

GatewayPluginRateLimitingAdvancedRoute
, GatewayPluginRateLimitingAdvancedRouteArgs

Id string
Id string
id String
id string
id str
id String

GatewayPluginRateLimitingAdvancedService
, GatewayPluginRateLimitingAdvancedServiceArgs

Id string
Id string
id String
id string
id str
id String

Import

$ pulumi import konnect:index/gatewayPluginRateLimitingAdvanced:GatewayPluginRateLimitingAdvanced my_konnect_gateway_plugin_rate_limiting_advanced "{ \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}"
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
konnect kong/terraform-provider-konnect
License
Notes
This Pulumi package is based on the konnect Terraform Provider.