1. Packages
  2. Konnect Provider
  3. API Docs
  4. GatewayPluginAiRateLimitingAdvanced
konnect 2.4.1 published on Thursday, Mar 13, 2025 by kong

konnect.GatewayPluginAiRateLimitingAdvanced

Explore with Pulumi AI

GatewayPluginAiRateLimitingAdvanced 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.GatewayPluginAiRateLimitingAdvanced;
import com.pulumi.konnect.GatewayPluginAiRateLimitingAdvancedArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConfigArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConsumerArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedOrderingArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedRouteArgs;
import com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedServiceArgs;
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 myGatewaypluginairatelimitingadvanced = new GatewayPluginAiRateLimitingAdvanced("myGatewaypluginairatelimitingadvanced", GatewayPluginAiRateLimitingAdvancedArgs.builder()
            .config(GatewayPluginAiRateLimitingAdvancedConfigArgs.builder()
                .dictionary_name("...my_dictionary_name...")
                .disable_penalty(false)
                .error_code(8.18)
                .error_hide_providers(false)
                .error_message("...my_error_message...")
                .header_name("...my_header_name...")
                .hide_client_headers(false)
                .identifier("credential")
                .llm_providers(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
                .path("...my_path...")
                .redis(GatewayPluginAiRateLimitingAdvancedConfigRedisArgs.builder()
                    .clusterMaxRedirections(5)
                    .clusterNodes(GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArgs.builder()
                        .ip("...my_ip...")
                        .port(36904)
                        .build())
                    .connectTimeout(883187098)
                    .connectionIsProxied(true)
                    .database(5)
                    .host("...my_host...")
                    .keepaliveBacklog(125882903)
                    .keepalivePoolSize(165809619)
                    .password("...my_password...")
                    .port(37236)
                    .readTimeout(394887043)
                    .sendTimeout(590662462)
                    .sentinelMaster("...my_sentinel_master...")
                    .sentinelNodes(GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArgs.builder()
                        .host("...my_host...")
                        .port(35255)
                        .build())
                    .sentinelPassword("...my_sentinel_password...")
                    .sentinelRole("any")
                    .sentinelUsername("...my_sentinel_username...")
                    .serverName("...my_server_name...")
                    .ssl(false)
                    .sslVerify(true)
                    .username("...my_username...")
                    .build())
                .request_prompt_count_function("...my_request_prompt_count_function...")
                .retry_after_jitter_max(8.14)
                .strategy("redis")
                .sync_rate(3.98)
                .tokens_count_strategy("prompt_tokens")
                .window_type("sliding")
                .build())
            .consumer(GatewayPluginAiRateLimitingAdvancedConsumerArgs.builder()
                .id("...my_id...")
                .build())
            .consumerGroup(GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs.builder()
                .id("...my_id...")
                .build())
            .controlPlaneId("9524ec7d-36d9-465d-a8c5-83a3c9390458")
            .enabled(true)
            .gatewayPluginAiRateLimitingAdvancedId("...my_id...")
            .instanceName("...my_instance_name...")
            .ordering(GatewayPluginAiRateLimitingAdvancedOrderingArgs.builder()
                .after(GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs.builder()
                    .access("...")
                    .build())
                .before(GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs.builder()
                    .access("...")
                    .build())
                .build())
            .protocols("https")
            .route(GatewayPluginAiRateLimitingAdvancedRouteArgs.builder()
                .id("...my_id...")
                .build())
            .service(GatewayPluginAiRateLimitingAdvancedServiceArgs.builder()
                .id("...my_id...")
                .build())
            .tags("...")
            .build());

    }
}
Copy
resources:
  myGatewaypluginairatelimitingadvanced:
    type: konnect:GatewayPluginAiRateLimitingAdvanced
    properties:
      config:
        dictionary_name: '...my_dictionary_name...'
        disable_penalty: false
        error_code: 8.18
        error_hide_providers: false
        error_message: '...my_error_message...'
        header_name: '...my_header_name...'
        hide_client_headers: false
        identifier: credential
        llm_providers:
          - limit: 1.4
            name: huggingface
            windowSize: 6.05
        path: '...my_path...'
        redis:
          clusterMaxRedirections: 5
          clusterNodes:
            - ip: '...my_ip...'
              port: 36904
          connectTimeout: 8.83187098e+08
          connectionIsProxied: true
          database: 5
          host: '...my_host...'
          keepaliveBacklog: 1.25882903e+08
          keepalivePoolSize: 1.65809619e+08
          password: '...my_password...'
          port: 37236
          readTimeout: 3.94887043e+08
          sendTimeout: 5.90662462e+08
          sentinelMaster: '...my_sentinel_master...'
          sentinelNodes:
            - host: '...my_host...'
              port: 35255
          sentinelPassword: '...my_sentinel_password...'
          sentinelRole: any
          sentinelUsername: '...my_sentinel_username...'
          serverName: '...my_server_name...'
          ssl: false
          sslVerify: true
          username: '...my_username...'
        request_prompt_count_function: '...my_request_prompt_count_function...'
        retry_after_jitter_max: 8.14
        strategy: redis
        sync_rate: 3.98
        tokens_count_strategy: prompt_tokens
        window_type: sliding
      consumer:
        id: '...my_id...'
      consumerGroup:
        id: '...my_id...'
      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458
      enabled: true
      gatewayPluginAiRateLimitingAdvancedId: '...my_id...'
      instanceName: '...my_instance_name...'
      ordering:
        after:
          access:
            - '...'
        before:
          access:
            - '...'
      protocols:
        - https
      route:
        id: '...my_id...'
      service:
        id: '...my_id...'
      tags:
        - '...'
Copy

Create GatewayPluginAiRateLimitingAdvanced Resource

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

Constructor syntax

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

@overload
def GatewayPluginAiRateLimitingAdvanced(resource_name: str,
                                        opts: Optional[ResourceOptions] = None,
                                        config: Optional[GatewayPluginAiRateLimitingAdvancedConfigArgs] = None,
                                        control_plane_id: Optional[str] = None,
                                        consumer: Optional[GatewayPluginAiRateLimitingAdvancedConsumerArgs] = None,
                                        consumer_group: Optional[GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs] = None,
                                        enabled: Optional[bool] = None,
                                        gateway_plugin_ai_rate_limiting_advanced_id: Optional[str] = None,
                                        instance_name: Optional[str] = None,
                                        ordering: Optional[GatewayPluginAiRateLimitingAdvancedOrderingArgs] = None,
                                        protocols: Optional[Sequence[str]] = None,
                                        route: Optional[GatewayPluginAiRateLimitingAdvancedRouteArgs] = None,
                                        service: Optional[GatewayPluginAiRateLimitingAdvancedServiceArgs] = None,
                                        tags: Optional[Sequence[str]] = None)
func NewGatewayPluginAiRateLimitingAdvanced(ctx *Context, name string, args GatewayPluginAiRateLimitingAdvancedArgs, opts ...ResourceOption) (*GatewayPluginAiRateLimitingAdvanced, error)
public GatewayPluginAiRateLimitingAdvanced(string name, GatewayPluginAiRateLimitingAdvancedArgs args, CustomResourceOptions? opts = null)
public GatewayPluginAiRateLimitingAdvanced(String name, GatewayPluginAiRateLimitingAdvancedArgs args)
public GatewayPluginAiRateLimitingAdvanced(String name, GatewayPluginAiRateLimitingAdvancedArgs args, CustomResourceOptions options)
type: konnect:GatewayPluginAiRateLimitingAdvanced
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. GatewayPluginAiRateLimitingAdvancedArgs
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. GatewayPluginAiRateLimitingAdvancedArgs
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. GatewayPluginAiRateLimitingAdvancedArgs
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. GatewayPluginAiRateLimitingAdvancedArgs
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. GatewayPluginAiRateLimitingAdvancedArgs
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 gatewayPluginAiRateLimitingAdvancedResource = new Konnect.GatewayPluginAiRateLimitingAdvanced("gatewayPluginAiRateLimitingAdvancedResource", new()
{
    Config = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigArgs
    {
        DictionaryName = "string",
        DisablePenalty = false,
        ErrorCode = 0,
        ErrorHideProviders = false,
        ErrorMessage = "string",
        HeaderName = "string",
        HideClientHeaders = false,
        Identifier = "string",
        LlmProviders = new[]
        {
            new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArgs
            {
                Limit = 0,
                Name = "string",
                WindowSize = 0,
            },
        },
        Path = "string",
        Redis = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisArgs
        {
            ClusterMaxRedirections = 0,
            ClusterNodes = new[]
            {
                new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArgs
                {
                    Ip = "string",
                    Port = 0,
                },
            },
            ConnectTimeout = 0,
            ConnectionIsProxied = false,
            Database = 0,
            Host = "string",
            KeepaliveBacklog = 0,
            KeepalivePoolSize = 0,
            Password = "string",
            Port = 0,
            ReadTimeout = 0,
            SendTimeout = 0,
            SentinelMaster = "string",
            SentinelNodes = new[]
            {
                new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArgs
                {
                    Host = "string",
                    Port = 0,
                },
            },
            SentinelPassword = "string",
            SentinelRole = "string",
            SentinelUsername = "string",
            ServerName = "string",
            Ssl = false,
            SslVerify = false,
            Username = "string",
        },
        RequestPromptCountFunction = "string",
        RetryAfterJitterMax = 0,
        Strategy = "string",
        SyncRate = 0,
        TokensCountStrategy = "string",
        WindowType = "string",
    },
    ControlPlaneId = "string",
    Consumer = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConsumerArgs
    {
        Id = "string",
    },
    ConsumerGroup = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs
    {
        Id = "string",
    },
    Enabled = false,
    GatewayPluginAiRateLimitingAdvancedId = "string",
    InstanceName = "string",
    Ordering = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedOrderingArgs
    {
        After = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs
        {
            Accesses = new[]
            {
                "string",
            },
        },
        Before = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs
        {
            Accesses = new[]
            {
                "string",
            },
        },
    },
    Protocols = new[]
    {
        "string",
    },
    Route = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedRouteArgs
    {
        Id = "string",
    },
    Service = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedServiceArgs
    {
        Id = "string",
    },
    Tags = new[]
    {
        "string",
    },
});
Copy
example, err := konnect.NewGatewayPluginAiRateLimitingAdvanced(ctx, "gatewayPluginAiRateLimitingAdvancedResource", &konnect.GatewayPluginAiRateLimitingAdvancedArgs{
Config: &.GatewayPluginAiRateLimitingAdvancedConfigArgs{
DictionaryName: pulumi.String("string"),
DisablePenalty: pulumi.Bool(false),
ErrorCode: pulumi.Float64(0),
ErrorHideProviders: pulumi.Bool(false),
ErrorMessage: pulumi.String("string"),
HeaderName: pulumi.String("string"),
HideClientHeaders: pulumi.Bool(false),
Identifier: pulumi.String("string"),
LlmProviders: .GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArray{
&.GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArgs{
Limit: pulumi.Float64(0),
Name: pulumi.String("string"),
WindowSize: pulumi.Float64(0),
},
},
Path: pulumi.String("string"),
Redis: &.GatewayPluginAiRateLimitingAdvancedConfigRedisArgs{
ClusterMaxRedirections: pulumi.Float64(0),
ClusterNodes: .GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArray{
&.GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArgs{
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),
SendTimeout: pulumi.Float64(0),
SentinelMaster: pulumi.String("string"),
SentinelNodes: .GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArray{
&.GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArgs{
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"),
},
RequestPromptCountFunction: pulumi.String("string"),
RetryAfterJitterMax: pulumi.Float64(0),
Strategy: pulumi.String("string"),
SyncRate: pulumi.Float64(0),
TokensCountStrategy: pulumi.String("string"),
WindowType: pulumi.String("string"),
},
ControlPlaneId: pulumi.String("string"),
Consumer: &.GatewayPluginAiRateLimitingAdvancedConsumerArgs{
Id: pulumi.String("string"),
},
ConsumerGroup: &.GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs{
Id: pulumi.String("string"),
},
Enabled: pulumi.Bool(false),
GatewayPluginAiRateLimitingAdvancedId: pulumi.String("string"),
InstanceName: pulumi.String("string"),
Ordering: &.GatewayPluginAiRateLimitingAdvancedOrderingArgs{
After: &.GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs{
Accesses: pulumi.StringArray{
pulumi.String("string"),
},
},
Before: &.GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs{
Accesses: pulumi.StringArray{
pulumi.String("string"),
},
},
},
Protocols: pulumi.StringArray{
pulumi.String("string"),
},
Route: &.GatewayPluginAiRateLimitingAdvancedRouteArgs{
Id: pulumi.String("string"),
},
Service: &.GatewayPluginAiRateLimitingAdvancedServiceArgs{
Id: pulumi.String("string"),
},
Tags: pulumi.StringArray{
pulumi.String("string"),
},
})
Copy
var gatewayPluginAiRateLimitingAdvancedResource = new GatewayPluginAiRateLimitingAdvanced("gatewayPluginAiRateLimitingAdvancedResource", GatewayPluginAiRateLimitingAdvancedArgs.builder()
    .config(GatewayPluginAiRateLimitingAdvancedConfigArgs.builder()
        .dictionaryName("string")
        .disablePenalty(false)
        .errorCode(0)
        .errorHideProviders(false)
        .errorMessage("string")
        .headerName("string")
        .hideClientHeaders(false)
        .identifier("string")
        .llmProviders(GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArgs.builder()
            .limit(0)
            .name("string")
            .windowSize(0)
            .build())
        .path("string")
        .redis(GatewayPluginAiRateLimitingAdvancedConfigRedisArgs.builder()
            .clusterMaxRedirections(0)
            .clusterNodes(GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArgs.builder()
                .ip("string")
                .port(0)
                .build())
            .connectTimeout(0)
            .connectionIsProxied(false)
            .database(0)
            .host("string")
            .keepaliveBacklog(0)
            .keepalivePoolSize(0)
            .password("string")
            .port(0)
            .readTimeout(0)
            .sendTimeout(0)
            .sentinelMaster("string")
            .sentinelNodes(GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArgs.builder()
                .host("string")
                .port(0)
                .build())
            .sentinelPassword("string")
            .sentinelRole("string")
            .sentinelUsername("string")
            .serverName("string")
            .ssl(false)
            .sslVerify(false)
            .username("string")
            .build())
        .requestPromptCountFunction("string")
        .retryAfterJitterMax(0)
        .strategy("string")
        .syncRate(0)
        .tokensCountStrategy("string")
        .windowType("string")
        .build())
    .controlPlaneId("string")
    .consumer(GatewayPluginAiRateLimitingAdvancedConsumerArgs.builder()
        .id("string")
        .build())
    .consumerGroup(GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs.builder()
        .id("string")
        .build())
    .enabled(false)
    .gatewayPluginAiRateLimitingAdvancedId("string")
    .instanceName("string")
    .ordering(GatewayPluginAiRateLimitingAdvancedOrderingArgs.builder()
        .after(GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs.builder()
            .accesses("string")
            .build())
        .before(GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs.builder()
            .accesses("string")
            .build())
        .build())
    .protocols("string")
    .route(GatewayPluginAiRateLimitingAdvancedRouteArgs.builder()
        .id("string")
        .build())
    .service(GatewayPluginAiRateLimitingAdvancedServiceArgs.builder()
        .id("string")
        .build())
    .tags("string")
    .build());
Copy
gateway_plugin_ai_rate_limiting_advanced_resource = konnect.GatewayPluginAiRateLimitingAdvanced("gatewayPluginAiRateLimitingAdvancedResource",
    config={
        "dictionary_name": "string",
        "disable_penalty": False,
        "error_code": 0,
        "error_hide_providers": False,
        "error_message": "string",
        "header_name": "string",
        "hide_client_headers": False,
        "identifier": "string",
        "llm_providers": [{
            "limit": 0,
            "name": "string",
            "window_size": 0,
        }],
        "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,
            "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",
        },
        "request_prompt_count_function": "string",
        "retry_after_jitter_max": 0,
        "strategy": "string",
        "sync_rate": 0,
        "tokens_count_strategy": "string",
        "window_type": "string",
    },
    control_plane_id="string",
    consumer={
        "id": "string",
    },
    consumer_group={
        "id": "string",
    },
    enabled=False,
    gateway_plugin_ai_rate_limiting_advanced_id="string",
    instance_name="string",
    ordering={
        "after": {
            "accesses": ["string"],
        },
        "before": {
            "accesses": ["string"],
        },
    },
    protocols=["string"],
    route={
        "id": "string",
    },
    service={
        "id": "string",
    },
    tags=["string"])
Copy
const gatewayPluginAiRateLimitingAdvancedResource = new konnect.GatewayPluginAiRateLimitingAdvanced("gatewayPluginAiRateLimitingAdvancedResource", {
    config: {
        dictionaryName: "string",
        disablePenalty: false,
        errorCode: 0,
        errorHideProviders: false,
        errorMessage: "string",
        headerName: "string",
        hideClientHeaders: false,
        identifier: "string",
        llmProviders: [{
            limit: 0,
            name: "string",
            windowSize: 0,
        }],
        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,
            sendTimeout: 0,
            sentinelMaster: "string",
            sentinelNodes: [{
                host: "string",
                port: 0,
            }],
            sentinelPassword: "string",
            sentinelRole: "string",
            sentinelUsername: "string",
            serverName: "string",
            ssl: false,
            sslVerify: false,
            username: "string",
        },
        requestPromptCountFunction: "string",
        retryAfterJitterMax: 0,
        strategy: "string",
        syncRate: 0,
        tokensCountStrategy: "string",
        windowType: "string",
    },
    controlPlaneId: "string",
    consumer: {
        id: "string",
    },
    consumerGroup: {
        id: "string",
    },
    enabled: false,
    gatewayPluginAiRateLimitingAdvancedId: "string",
    instanceName: "string",
    ordering: {
        after: {
            accesses: ["string"],
        },
        before: {
            accesses: ["string"],
        },
    },
    protocols: ["string"],
    route: {
        id: "string",
    },
    service: {
        id: "string",
    },
    tags: ["string"],
});
Copy
type: konnect:GatewayPluginAiRateLimitingAdvanced
properties:
    config:
        dictionaryName: string
        disablePenalty: false
        errorCode: 0
        errorHideProviders: false
        errorMessage: string
        headerName: string
        hideClientHeaders: false
        identifier: string
        llmProviders:
            - limit: 0
              name: string
              windowSize: 0
        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
            sendTimeout: 0
            sentinelMaster: string
            sentinelNodes:
                - host: string
                  port: 0
            sentinelPassword: string
            sentinelRole: string
            sentinelUsername: string
            serverName: string
            ssl: false
            sslVerify: false
            username: string
        requestPromptCountFunction: string
        retryAfterJitterMax: 0
        strategy: string
        syncRate: 0
        tokensCountStrategy: string
        windowType: string
    consumer:
        id: string
    consumerGroup:
        id: string
    controlPlaneId: string
    enabled: false
    gatewayPluginAiRateLimitingAdvancedId: string
    instanceName: string
    ordering:
        after:
            accesses:
                - string
        before:
            accesses:
                - string
    protocols:
        - string
    route:
        id: string
    service:
        id: string
    tags:
        - string
Copy

GatewayPluginAiRateLimitingAdvanced 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 GatewayPluginAiRateLimitingAdvanced resource accepts the following input properties:

Config This property is required. GatewayPluginAiRateLimitingAdvancedConfig
ControlPlaneId This property is required. string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
Consumer GatewayPluginAiRateLimitingAdvancedConsumer
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 GatewayPluginAiRateLimitingAdvancedConsumerGroup
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
Enabled bool
Whether the plugin is applied.
GatewayPluginAiRateLimitingAdvancedId string
The ID of this resource.
InstanceName string
Ordering GatewayPluginAiRateLimitingAdvancedOrdering
Protocols List<string>
A set of strings representing HTTP protocols.
Route GatewayPluginAiRateLimitingAdvancedRoute
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 GatewayPluginAiRateLimitingAdvancedService
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.
Config This property is required. GatewayPluginAiRateLimitingAdvancedConfigArgs
ControlPlaneId This property is required. string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
Consumer GatewayPluginAiRateLimitingAdvancedConsumerArgs
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 GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs
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
Enabled bool
Whether the plugin is applied.
GatewayPluginAiRateLimitingAdvancedId string
The ID of this resource.
InstanceName string
Ordering GatewayPluginAiRateLimitingAdvancedOrderingArgs
Protocols []string
A set of strings representing HTTP protocols.
Route GatewayPluginAiRateLimitingAdvancedRouteArgs
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 GatewayPluginAiRateLimitingAdvancedServiceArgs
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.
config This property is required. GatewayPluginAiRateLimitingAdvancedConfig
controlPlaneId This property is required. String
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
consumer GatewayPluginAiRateLimitingAdvancedConsumer
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 GatewayPluginAiRateLimitingAdvancedConsumerGroup
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
enabled Boolean
Whether the plugin is applied.
gatewayPluginAiRateLimitingAdvancedId String
The ID of this resource.
instanceName String
ordering GatewayPluginAiRateLimitingAdvancedOrdering
protocols List<String>
A set of strings representing HTTP protocols.
route GatewayPluginAiRateLimitingAdvancedRoute
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 GatewayPluginAiRateLimitingAdvancedService
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.
config This property is required. GatewayPluginAiRateLimitingAdvancedConfig
controlPlaneId This property is required. string
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
consumer GatewayPluginAiRateLimitingAdvancedConsumer
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 GatewayPluginAiRateLimitingAdvancedConsumerGroup
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
enabled boolean
Whether the plugin is applied.
gatewayPluginAiRateLimitingAdvancedId string
The ID of this resource.
instanceName string
ordering GatewayPluginAiRateLimitingAdvancedOrdering
protocols string[]
A set of strings representing HTTP protocols.
route GatewayPluginAiRateLimitingAdvancedRoute
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 GatewayPluginAiRateLimitingAdvancedService
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.
config This property is required. GatewayPluginAiRateLimitingAdvancedConfigArgs
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.
consumer GatewayPluginAiRateLimitingAdvancedConsumerArgs
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 GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs
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
enabled bool
Whether the plugin is applied.
gateway_plugin_ai_rate_limiting_advanced_id str
The ID of this resource.
instance_name str
ordering GatewayPluginAiRateLimitingAdvancedOrderingArgs
protocols Sequence[str]
A set of strings representing HTTP protocols.
route GatewayPluginAiRateLimitingAdvancedRouteArgs
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 GatewayPluginAiRateLimitingAdvancedServiceArgs
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.
config This property is required. Property Map
controlPlaneId This property is required. String
The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.
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
enabled Boolean
Whether the plugin is applied.
gatewayPluginAiRateLimitingAdvancedId 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.

Outputs

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

CreatedAt double
Unix epoch when the resource was created.
Id string
The provider-assigned unique ID for this managed resource.
UpdatedAt double
Unix epoch when the resource was last updated.
CreatedAt float64
Unix epoch when the resource was created.
Id string
The provider-assigned unique ID for this managed resource.
UpdatedAt float64
Unix epoch when the resource was last updated.
createdAt Double
Unix epoch when the resource was created.
id String
The provider-assigned unique ID for this managed resource.
updatedAt Double
Unix epoch when the resource was last updated.
createdAt number
Unix epoch when the resource was created.
id string
The provider-assigned unique ID for this managed resource.
updatedAt number
Unix epoch when the resource was last updated.
created_at float
Unix epoch when the resource was created.
id str
The provider-assigned unique ID for this managed resource.
updated_at float
Unix epoch when the resource was last updated.
createdAt Number
Unix epoch when the resource was created.
id String
The provider-assigned unique ID for this managed resource.
updatedAt Number
Unix epoch when the resource was last updated.

Look up Existing GatewayPluginAiRateLimitingAdvanced Resource

Get an existing GatewayPluginAiRateLimitingAdvanced 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?: GatewayPluginAiRateLimitingAdvancedState, opts?: CustomResourceOptions): GatewayPluginAiRateLimitingAdvanced
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        config: Optional[GatewayPluginAiRateLimitingAdvancedConfigArgs] = None,
        consumer: Optional[GatewayPluginAiRateLimitingAdvancedConsumerArgs] = None,
        consumer_group: Optional[GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs] = None,
        control_plane_id: Optional[str] = None,
        created_at: Optional[float] = None,
        enabled: Optional[bool] = None,
        gateway_plugin_ai_rate_limiting_advanced_id: Optional[str] = None,
        instance_name: Optional[str] = None,
        ordering: Optional[GatewayPluginAiRateLimitingAdvancedOrderingArgs] = None,
        protocols: Optional[Sequence[str]] = None,
        route: Optional[GatewayPluginAiRateLimitingAdvancedRouteArgs] = None,
        service: Optional[GatewayPluginAiRateLimitingAdvancedServiceArgs] = None,
        tags: Optional[Sequence[str]] = None,
        updated_at: Optional[float] = None) -> GatewayPluginAiRateLimitingAdvanced
func GetGatewayPluginAiRateLimitingAdvanced(ctx *Context, name string, id IDInput, state *GatewayPluginAiRateLimitingAdvancedState, opts ...ResourceOption) (*GatewayPluginAiRateLimitingAdvanced, error)
public static GatewayPluginAiRateLimitingAdvanced Get(string name, Input<string> id, GatewayPluginAiRateLimitingAdvancedState? state, CustomResourceOptions? opts = null)
public static GatewayPluginAiRateLimitingAdvanced get(String name, Output<String> id, GatewayPluginAiRateLimitingAdvancedState state, CustomResourceOptions options)
resources:  _:    type: konnect:GatewayPluginAiRateLimitingAdvanced    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 GatewayPluginAiRateLimitingAdvancedConfig
Consumer GatewayPluginAiRateLimitingAdvancedConsumer
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 GatewayPluginAiRateLimitingAdvancedConsumerGroup
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.
GatewayPluginAiRateLimitingAdvancedId string
The ID of this resource.
InstanceName string
Ordering GatewayPluginAiRateLimitingAdvancedOrdering
Protocols List<string>
A set of strings representing HTTP protocols.
Route GatewayPluginAiRateLimitingAdvancedRoute
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 GatewayPluginAiRateLimitingAdvancedService
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 GatewayPluginAiRateLimitingAdvancedConfigArgs
Consumer GatewayPluginAiRateLimitingAdvancedConsumerArgs
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 GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs
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.
GatewayPluginAiRateLimitingAdvancedId string
The ID of this resource.
InstanceName string
Ordering GatewayPluginAiRateLimitingAdvancedOrderingArgs
Protocols []string
A set of strings representing HTTP protocols.
Route GatewayPluginAiRateLimitingAdvancedRouteArgs
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 GatewayPluginAiRateLimitingAdvancedServiceArgs
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 GatewayPluginAiRateLimitingAdvancedConfig
consumer GatewayPluginAiRateLimitingAdvancedConsumer
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 GatewayPluginAiRateLimitingAdvancedConsumerGroup
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.
gatewayPluginAiRateLimitingAdvancedId String
The ID of this resource.
instanceName String
ordering GatewayPluginAiRateLimitingAdvancedOrdering
protocols List<String>
A set of strings representing HTTP protocols.
route GatewayPluginAiRateLimitingAdvancedRoute
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 GatewayPluginAiRateLimitingAdvancedService
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 GatewayPluginAiRateLimitingAdvancedConfig
consumer GatewayPluginAiRateLimitingAdvancedConsumer
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 GatewayPluginAiRateLimitingAdvancedConsumerGroup
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.
gatewayPluginAiRateLimitingAdvancedId string
The ID of this resource.
instanceName string
ordering GatewayPluginAiRateLimitingAdvancedOrdering
protocols string[]
A set of strings representing HTTP protocols.
route GatewayPluginAiRateLimitingAdvancedRoute
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 GatewayPluginAiRateLimitingAdvancedService
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 GatewayPluginAiRateLimitingAdvancedConfigArgs
consumer GatewayPluginAiRateLimitingAdvancedConsumerArgs
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 GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs
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_ai_rate_limiting_advanced_id str
The ID of this resource.
instance_name str
ordering GatewayPluginAiRateLimitingAdvancedOrderingArgs
protocols Sequence[str]
A set of strings representing HTTP protocols.
route GatewayPluginAiRateLimitingAdvancedRouteArgs
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 GatewayPluginAiRateLimitingAdvancedServiceArgs
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.
gatewayPluginAiRateLimitingAdvancedId 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

GatewayPluginAiRateLimitingAdvancedConfig
, GatewayPluginAiRateLimitingAdvancedConfigArgs

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 and the request prompt provider.
ErrorCode double
Set a custom error code to return when the rate limit is exceeded.
ErrorHideProviders bool
Optionally hide informative response that would otherwise provide information about the provider in the error message.
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"]
LlmProviders List<GatewayPluginAiRateLimitingAdvancedConfigLlmProvider>
The provider config. Takes an array of name, limit and window size values.
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 GatewayPluginAiRateLimitingAdvancedConfigRedis
RequestPromptCountFunction string
If defined, it use custom function to count requests for the request prompt provider
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).
TokensCountStrategy string
What tokens to use for cost calculation. Available values are: total_tokens prompt_tokens, completion_tokens or cost. must be one of ["completiontokens", "cost", "prompttokens", "total_tokens"]
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"]
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 and the request prompt provider.
ErrorCode float64
Set a custom error code to return when the rate limit is exceeded.
ErrorHideProviders bool
Optionally hide informative response that would otherwise provide information about the provider in the error message.
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"]
LlmProviders []GatewayPluginAiRateLimitingAdvancedConfigLlmProvider
The provider config. Takes an array of name, limit and window size values.
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 GatewayPluginAiRateLimitingAdvancedConfigRedis
RequestPromptCountFunction string
If defined, it use custom function to count requests for the request prompt provider
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).
TokensCountStrategy string
What tokens to use for cost calculation. Available values are: total_tokens prompt_tokens, completion_tokens or cost. must be one of ["completiontokens", "cost", "prompttokens", "total_tokens"]
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"]
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 and the request prompt provider.
errorCode Double
Set a custom error code to return when the rate limit is exceeded.
errorHideProviders Boolean
Optionally hide informative response that would otherwise provide information about the provider in the error message.
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"]
llmProviders List<GatewayPluginAiRateLimitingAdvancedConfigLlmProvider>
The provider config. Takes an array of name, limit and window size values.
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 GatewayPluginAiRateLimitingAdvancedConfigRedis
requestPromptCountFunction String
If defined, it use custom function to count requests for the request prompt provider
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).
tokensCountStrategy String
What tokens to use for cost calculation. Available values are: total_tokens prompt_tokens, completion_tokens or cost. must be one of ["completiontokens", "cost", "prompttokens", "total_tokens"]
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"]
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 and the request prompt provider.
errorCode number
Set a custom error code to return when the rate limit is exceeded.
errorHideProviders boolean
Optionally hide informative response that would otherwise provide information about the provider in the error message.
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"]
llmProviders GatewayPluginAiRateLimitingAdvancedConfigLlmProvider[]
The provider config. Takes an array of name, limit and window size values.
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 GatewayPluginAiRateLimitingAdvancedConfigRedis
requestPromptCountFunction string
If defined, it use custom function to count requests for the request prompt provider
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).
tokensCountStrategy string
What tokens to use for cost calculation. Available values are: total_tokens prompt_tokens, completion_tokens or cost. must be one of ["completiontokens", "cost", "prompttokens", "total_tokens"]
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"]
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 and the request prompt provider.
error_code float
Set a custom error code to return when the rate limit is exceeded.
error_hide_providers bool
Optionally hide informative response that would otherwise provide information about the provider in the error message.
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"]
llm_providers Sequence[GatewayPluginAiRateLimitingAdvancedConfigLlmProvider]
The provider config. Takes an array of name, limit and window size values.
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 GatewayPluginAiRateLimitingAdvancedConfigRedis
request_prompt_count_function str
If defined, it use custom function to count requests for the request prompt provider
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).
tokens_count_strategy str
What tokens to use for cost calculation. Available values are: total_tokens prompt_tokens, completion_tokens or cost. must be one of ["completiontokens", "cost", "prompttokens", "total_tokens"]
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"]
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 and the request prompt provider.
errorCode Number
Set a custom error code to return when the rate limit is exceeded.
errorHideProviders Boolean
Optionally hide informative response that would otherwise provide information about the provider in the error message.
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"]
llmProviders List<Property Map>
The provider config. Takes an array of name, limit and window size values.
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
requestPromptCountFunction String
If defined, it use custom function to count requests for the request prompt provider
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).
tokensCountStrategy String
What tokens to use for cost calculation. Available values are: total_tokens prompt_tokens, completion_tokens or cost. must be one of ["completiontokens", "cost", "prompttokens", "total_tokens"]
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"]

GatewayPluginAiRateLimitingAdvancedConfigLlmProvider
, GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArgs

Limit double
The limit applies to the LLM provider within the defined window size. It used the query cost from the tokens to increment the counter. Not Null
Name string
The LLM provider to which the rate limit applies. Not Null; must be one of ["anthropic", "azure", "bedrock", "cohere", "gemini", "huggingface", "llama2", "mistral", "openai", "requestPrompt"]
WindowSize double
The window size to apply a limit (defined in seconds). Not Null
Limit float64
The limit applies to the LLM provider within the defined window size. It used the query cost from the tokens to increment the counter. Not Null
Name string
The LLM provider to which the rate limit applies. Not Null; must be one of ["anthropic", "azure", "bedrock", "cohere", "gemini", "huggingface", "llama2", "mistral", "openai", "requestPrompt"]
WindowSize float64
The window size to apply a limit (defined in seconds). Not Null
limit Double
The limit applies to the LLM provider within the defined window size. It used the query cost from the tokens to increment the counter. Not Null
name String
The LLM provider to which the rate limit applies. Not Null; must be one of ["anthropic", "azure", "bedrock", "cohere", "gemini", "huggingface", "llama2", "mistral", "openai", "requestPrompt"]
windowSize Double
The window size to apply a limit (defined in seconds). Not Null
limit number
The limit applies to the LLM provider within the defined window size. It used the query cost from the tokens to increment the counter. Not Null
name string
The LLM provider to which the rate limit applies. Not Null; must be one of ["anthropic", "azure", "bedrock", "cohere", "gemini", "huggingface", "llama2", "mistral", "openai", "requestPrompt"]
windowSize number
The window size to apply a limit (defined in seconds). Not Null
limit float
The limit applies to the LLM provider within the defined window size. It used the query cost from the tokens to increment the counter. Not Null
name str
The LLM provider to which the rate limit applies. Not Null; must be one of ["anthropic", "azure", "bedrock", "cohere", "gemini", "huggingface", "llama2", "mistral", "openai", "requestPrompt"]
window_size float
The window size to apply a limit (defined in seconds). Not Null
limit Number
The limit applies to the LLM provider within the defined window size. It used the query cost from the tokens to increment the counter. Not Null
name String
The LLM provider to which the rate limit applies. Not Null; must be one of ["anthropic", "azure", "bedrock", "cohere", "gemini", "huggingface", "llama2", "mistral", "openai", "requestPrompt"]
windowSize Number
The window size to apply a limit (defined in seconds). Not Null

GatewayPluginAiRateLimitingAdvancedConfigRedis
, GatewayPluginAiRateLimitingAdvancedConfigRedisArgs

ClusterMaxRedirections double
Maximum retry attempts for redirection.
ClusterNodes List<GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode>
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.
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<GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode>
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 []GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode
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.
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 []GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode
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<GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode>
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.
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<GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode>
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 GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode[]
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.
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 GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode[]
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[GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode]
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.
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[GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode]
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.
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.

GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode
, GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArgs

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.

GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode
, GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArgs

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.

GatewayPluginAiRateLimitingAdvancedConsumer
, GatewayPluginAiRateLimitingAdvancedConsumerArgs

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

GatewayPluginAiRateLimitingAdvancedConsumerGroup
, GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs

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

GatewayPluginAiRateLimitingAdvancedOrdering
, GatewayPluginAiRateLimitingAdvancedOrderingArgs

GatewayPluginAiRateLimitingAdvancedOrderingAfter
, GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs

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

GatewayPluginAiRateLimitingAdvancedOrderingBefore
, GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs

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

GatewayPluginAiRateLimitingAdvancedRoute
, GatewayPluginAiRateLimitingAdvancedRouteArgs

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

GatewayPluginAiRateLimitingAdvancedService
, GatewayPluginAiRateLimitingAdvancedServiceArgs

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

Import

$ pulumi import konnect:index/gatewayPluginAiRateLimitingAdvanced:GatewayPluginAiRateLimitingAdvanced my_konnect_gateway_plugin_ai_rate_limiting_advanced "{ \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"plugin_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.