Kong · Schema

VirtualClusterTopicAlias

**Pre-release Feature** This feature is currently in beta and is subject to change. A topic alias maps an alias name to a namespace-visible topic name. Clients can produce to, consume from, and discover the topic under the alias name. The original topic name remains accessible. **Requires a minimum runtime version of `1.2`**.

API GatewayAI GatewayAI ConnectivityAgent GatewayEvent GatewayMCP RegistryService MeshLLMKafkaKonnectOpen Source

Properties

Name Type Description
alias string The client-visible topic name.
topic string The namespace-visible topic name this alias resolves to.
match string CEL expression evaluated against the connection's auth context. If omitted or empty, the alias is active for all connections.
conflict object
View JSON Schema on GitHub

JSON Schema

kong-virtualclustertopicalias-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/VirtualClusterTopicAlias",
  "title": "VirtualClusterTopicAlias",
  "description": "**Pre-release Feature**\nThis feature is currently in beta and is subject to change.\n\nA topic alias maps an alias name to a namespace-visible topic name.\nClients can produce to, consume from, and discover the topic under the alias name.\nThe original topic name remains accessible.\n\n**Requires a minimum runtime version of `1.2`**.",
  "type": "object",
  "properties": {
    "alias": {
      "description": "The client-visible topic name.",
      "type": "string",
      "minLength": 1
    },
    "topic": {
      "description": "The namespace-visible topic name this alias resolves to.",
      "type": "string",
      "minLength": 1
    },
    "match": {
      "description": "CEL expression evaluated against the connection's auth context.\nIf omitted or empty, the alias is active for all connections.\n",
      "type": "string",
      "default": "",
      "x-expression": {
        "type": "boolean",
        "fields": [
          {
            "name": "context.auth.principal.name",
            "type": "string",
            "description": "Name of authenticated principal. Username in case of PLAIN/SCRAM, `sub` claim in case of OAUTHBEARER."
          },
          {
            "name": "context.auth.type",
            "type": "string",
            "description": "The matched authentication type from a virtual cluster: anonymous, sasl_plain, sasl_scram_sha256, sasl_scram_sha512, sasl_oauth_bearer.\n"
          },
          {
            "name": "context.auth.token.claims",
            "type": "object",
            "description": "All claims from the JWT token. Only populated for sasl_oauth_bearer authentication. Claims can be strings, numbers, booleans, arrays or nested JSON objects."
          }
        ]
      }
    },
    "conflict": {
      "$ref": "#/components/schemas/VirtualClusterTopicAliasConflict"
    }
  },
  "required": [
    "alias",
    "topic"
  ],
  "x-min-runtime-version": "1.2"
}