Kong · Schema

CatalogIntegrationApiSpecProvider

Defines how an integration behaves as a source provider of Catalog Service API specs. API specs are entities that can be attached to Catalog Services. When an integration implements this capability, it can act as a source type for API spec contents. In this role, the integration becomes the source of truth for the spec. When a spec is attached to a Catalog Service using this source type, the platform relies on the external system to provide and update the spec data. A null value indicates the given integration does not act as a source provider of API specs.

API GatewayAI GatewayAI ConnectivityAgent GatewayEvent GatewayMCP RegistryService MeshLLMKafkaKonnectOpen Source

Properties

Name Type Description
name string The globally unique name of the API spec provider that identifies it within the catalog. Corresponds to the API spec provider `type` when creating API specs.
display_name string A user-friendly name for the API spec provider.
description string An brief description of the API spec provider.
config_schema object Defines the shape of the API spec provider config.
resource_type string When non-null, denotes that the API spec provider is bound to the given Resource type. This means that API specs are auto-created when a Resource of the given type is mapped to a service. Furthermore,
View JSON Schema on GitHub

JSON Schema

kong-catalogintegrationapispecprovider-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/CatalogIntegrationApiSpecProvider",
  "title": "CatalogIntegrationApiSpecProvider",
  "description": "Defines how an integration behaves as a source provider of Catalog Service API specs.\nAPI specs are entities that can be attached to Catalog Services.\nWhen an integration implements this capability, it can act as a source type for API spec contents.\nIn this role, the integration becomes the source of truth for the spec.\nWhen a spec is attached to a Catalog Service using this source type, the platform relies on the external system to provide and update the spec data.\nA null value indicates the given integration does not act as a source provider of API specs.\n",
  "type": "object",
  "properties": {
    "name": {
      "description": "The globally unique name of the API spec provider that identifies it within the catalog.\nCorresponds to the API spec provider `type` when creating API specs.\n",
      "type": "string",
      "example": "konnect_api"
    },
    "display_name": {
      "description": "A user-friendly name for the API spec provider.",
      "type": "string",
      "example": "Konnect API"
    },
    "description": {
      "description": "An brief description of the API spec provider.",
      "type": "string"
    },
    "config_schema": {
      "description": "Defines the shape of the API spec provider config.",
      "type": "object",
      "example": {
        "type": "simple",
        "definition": {
          "api_id": "string"
        }
      },
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "simple"
          ]
        },
        "definition": {
          "type": "object",
          "additionalProperties": {
            "type": "string",
            "enum": [
              "string",
              "number",
              "boolean"
            ],
            "x-speakeasy-unknown-values": "allow"
          }
        }
      },
      "required": [
        "type",
        "definition"
      ]
    },
    "resource_type": {
      "description": "When non-null, denotes that the API spec provider is bound to the given Resource type.\nThis means that API specs are auto-created when a Resource of the given type is mapped to a service.\nFurthermore, it couples the lifecycle of the API Spec with the given Resource mapping.\nWhen the given Resource is removed, the API spec will be deleted.\n",
      "type": "string",
      "nullable": true
    }
  },
  "nullable": true,
  "required": [
    "name",
    "display_name",
    "description",
    "config_schema",
    "resource_type"
  ]
}