Confluent · Schema

cmk.v2.ClusterList

`Clusters` objects represent Apache Kafka Clusters on Confluent Cloud. The API allows you to list, create, read, update, and delete your Kafka clusters. Related guide: [Confluent Cloud Cluster Management for Apache Kafka APIs](https://docs.confluent.io/cloud/current/clusters/cluster-api.html). ## The Clusters Model ## Quotas and Limits This resource is subject to the [following quotas](https://docs.confluent.io/cloud/current/quotas/overview.html): | Quota | Description | | --- | --- | | `kafka_clusters_per_environment` | Number of clusters in one Confluent Cloud environment |

Data StreamingApache KafkaEvent StreamingStream ProcessingSchema RegistryApache FlinkData IntegrationConnectorsData GovernanceReal-Time DataMessagingCloud Infrastructure

Properties

Name Type Description
api_version string APIVersion defines the schema version of this representation of a resource.
kind string Kind defines the object this REST resource represents.
metadata object
data array A data property that contains an array of resource items. Each entry in the array is a separate resource.
View JSON Schema on GitHub

JSON Schema

confluent-cmk-v2-cluster-list-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/confluent/main/json-schema/confluent-cmk-v2-cluster-list-schema.json",
  "title": "cmk.v2.ClusterList",
  "description": "`Clusters` objects represent Apache Kafka Clusters on Confluent Cloud.\n\nThe API allows you to list, create, read, update, and delete your Kafka clusters.\n\n\nRelated guide: [Confluent Cloud Cluster Management for Apache Kafka APIs](https://docs.confluent.io/cloud/current/clusters/cluster-api.html).\n\n## The Clusters Model\n<SchemaDefinition schemaRef=\"#/components/schemas/cmk.v2.Cluster\" />\n\n## Quotas and Limits\nThis resource is subject to the [following quotas](https://docs.confluent.io/cloud/current/quotas/overview.html):\n\n| Quota | Description |\n| --- | --- |\n| `kafka_clusters_per_environment` | Number of clusters in one Confluent Cloud environment |",
  "x-generated": "2026-10-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/confluent-clusters-cmk-v2-api-openapi.yml#/components/schemas/cmk.v2.ClusterList",
  "type": "object",
  "required": [
    "api_version",
    "kind",
    "metadata",
    "data"
  ],
  "properties": {
    "api_version": {
      "type": "string",
      "enum": [
        "cmk/v2"
      ],
      "description": "APIVersion defines the schema version of this representation of a resource.",
      "readOnly": true
    },
    "kind": {
      "type": "string",
      "description": "Kind defines the object this REST resource represents.",
      "readOnly": true,
      "enum": [
        "ClusterList"
      ]
    },
    "metadata": {
      "allOf": [
        {
          "$ref": "#/$defs/ListMeta"
        },
        {
          "properties": {
            "first": {},
            "last": {},
            "prev": {},
            "next": {}
          }
        }
      ]
    },
    "data": {
      "type": "array",
      "description": "A data property that contains an array of resource items. Each entry in the array is a separate resource.",
      "items": {
        "allOf": [
          {
            "$ref": "#/$defs/cmk.v2.Cluster"
          },
          {
            "type": "object",
            "required": [
              "id",
              "metadata",
              "spec",
              "status"
            ],
            "properties": {
              "spec": {
                "type": "object",
                "required": [
                  "display_name",
                  "availability",
                  "cloud",
                  "region",
                  "config",
                  "environment"
                ]
              }
            }
          }
        ]
      },
      "uniqueItems": true
    }
  },
  "$defs": {
    "EnvScopedObjectReference": {
      "type": "object",
      "description": "ObjectReference provides information for you to locate the referred object",
      "required": [
        "id",
        "related",
        "resource_name"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "ID of the referred resource",
          "minLength": 1,
          "maxLength": 255
        },
        "environment": {
          "type": "string",
          "description": "Environment of the referred resource, if env-scoped",
          "minLength": 1,
          "maxLength": 255
        },
        "related": {
          "type": "string",
          "format": "uri",
          "description": "API URL for accessing or modifying the referred object",
          "minLength": 1,
          "readOnly": true
        },
        "resource_name": {
          "type": "string",
          "format": "uri",
          "description": "CRN reference to the referred resource",
          "minLength": 1,
          "readOnly": true
        }
      }
    },
    "GlobalObjectReference": {
      "type": "object",
      "description": "ObjectReference provides information for you to locate the referred object",
      "required": [
        "id",
        "related",
        "resource_name"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "ID of the referred resource",
          "minLength": 1,
          "maxLength": 255
        },
        "related": {
          "type": "string",
          "format": "uri",
          "description": "API URL for accessing or modifying the referred object",
          "minLength": 1,
          "readOnly": true
        },
        "resource_name": {
          "type": "string",
          "format": "uri",
          "description": "CRN reference to the referred resource",
          "minLength": 1,
          "readOnly": true
        }
      }
    },
    "ListMeta": {
      "type": "object",
      "description": "ListMeta describes metadata that resource collections may have",
      "properties": {
        "first": {
          "description": "A link to the first page of results. If a response does not contain a first link, then direct navigation to the first page is not supported.",
          "type": [
            "string",
            "null"
          ],
          "format": "uri"
        },
        "last": {
          "description": "A link to the last page of results. If a response does not contain a last link, then direct navigation to the last page is not supported.",
          "type": [
            "string",
            "null"
          ],
          "format": "uri"
        },
        "prev": {
          "description": "A link to the previous page of results. If a response does not contain a prev link, then either there is no previous data or backwards traversal through the result set is not supported.",
          "type": [
            "string",
            "null"
          ],
          "format": "uri"
        },
        "next": {
          "description": "A link to the next page of results. If a response does not contain a next link, then there is no more data available.",
          "type": [
            "string",
            "null"
          ],
          "format": "uri"
        },
        "total_size": {
          "description": "Number of records in the full result set. This response may be paginated and have a smaller number of records.",
          "type": "integer",
          "format": "int32",
          "minimum": 0
        }
      }
    },
    "ObjectMeta": {
      "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.",
      "required": [
        "self"
      ],
      "properties": {
        "self": {
          "description": "Self is a Uniform Resource Locator (URL) at which an object can be addressed. This URL encodes the service location, API version, and other particulars necessary to locate the resource at a point in time",
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "resource_name": {
          "description": "Resource Name is a Uniform Resource Identifier (URI) that is globally unique across space and time. It is represented as a Confluent Resource Name",
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "readOnly": true,
          "description": "The date and time at which this object was created. It is represented in RFC3339 format and is in UTC."
        },
        "updated_at": {
          "type": "string",
          "format": "date-time",
          "readOnly": true,
          "description": "The date and time at which this object was last updated. It is represented in RFC3339 format and is in UTC."
        },
        "deleted_at": {
          "type": "string",
          "format": "date-time",
          "readOnly": true,
          "description": "The date and time at which this object was (or will be) deleted. It is represented in RFC3339 format and is in UTC."
        }
      },
      "readOnly": true
    },
    "cmk.v2.Basic": {
      "type": "object",
      "description": "The basic cluster type.\n",
      "properties": {
        "kind": {
          "description": "Basic cluster type.\n",
          "type": "string",
          "enum": [
            "Basic"
          ]
        },
        "max_ecku": {
          "description": "The maximum number of Elastic Confluent Kafka Units (eCKUs) that Kafka clusters should auto-scale to.\nFor more details, see [Maximum eCKU requirements](https://docs.confluent.io/cloud/current/clusters/cluster-types.html#minimum-maximum-ecku-requirements).\n",
          "type": "integer",
          "format": "int32",
          "minimum": 1
        }
      },
      "required": [
        "kind"
      ]
    },
    "cmk.v2.Cluster": {
      "type": "object",
      "description": "`Clusters` objects represent Apache Kafka Clusters on Confluent Cloud.\n\nThe API allows you to list, create, read, update, and delete your Kafka clusters.\n\n\nRelated guide: [Confluent Cloud Cluster Management for Apache Kafka APIs](https://docs.confluent.io/cloud/current/clusters/cluster-api.html).\n\n## The Clusters Model\n<SchemaDefinition schemaRef=\"#/components/schemas/cmk.v2.Cluster\" />\n\n## Quotas and Limits\nThis resource is subject to the [following quotas](https://docs.confluent.io/cloud/current/quotas/overview.html):\n\n| Quota | Description |\n| --- | --- |\n| `kafka_clusters_per_environment` | Number of clusters in one Confluent Cloud environment |",
      "properties": {
        "api_version": {
          "type": "string",
          "enum": [
            "cmk/v2"
          ],
          "description": "APIVersion defines the schema version of this representation of a resource.",
          "readOnly": true
        },
        "kind": {
          "type": "string",
          "description": "Kind defines the object this REST resource represents.",
          "readOnly": true,
          "enum": [
            "Cluster"
          ]
        },
        "id": {
          "description": "ID is the \"natural identifier\" for an object within its scope/namespace; it is normally unique across time but not space. That is, you can assume that the ID will not be reclaimed and reused after an object is deleted (\"time\"); however, it may collide with IDs for other object `kinds` or objects of the same `kind` within a different scope/namespace (\"space\").",
          "type": "string",
          "maxLength": 255,
          "readOnly": true
        },
        "metadata": {
          "allOf": [
            {
              "$ref": "#/$defs/ObjectMeta"
            },
            {
              "properties": {
                "self": {},
                "resource_name": {}
              }
            }
          ]
        },
        "spec": {
          "$ref": "#/$defs/cmk.v2.ClusterSpec"
        },
        "status": {
          "$ref": "#/$defs/cmk.v2.ClusterStatus"
        }
      }
    },
    "cmk.v2.ClusterSpec": {
      "type": "object",
      "description": "The desired state of the Cluster",
      "properties": {
        "display_name": {
          "type": "string",
          "description": "The name of the cluster."
        },
        "availability": {
          "type": "string",
          "description": "The availability zone configuration of the cluster\n",
          "x-extensible-enum": [
            "MULTI_ZONE",
            "SINGLE_ZONE",
            "HIGH",
            "LOW"
          ]
        },
        "cloud": {
          "type": "string",
          "description": "The cloud service provider in which the cluster is running.",
          "x-extensible-enum": [
            "AWS",
            "GCP",
            "AZURE"
          ],
          "x-immutable": true
        },
        "region": {
          "type": "string",
          "description": "The cloud service provider region where the cluster is running.",
          "x-immutable": true
        },
        "config": {
          "description": "The configuration of the Kafka cluster.\n\nNote: Clusters can be upgraded from Basic to Standard, but cannot be downgraded from Standard to Basic.\n",
          "default": {
            "kind": "Basic"
          },
          "oneOf": [
            {
              "$ref": "#/$defs/cmk.v2.Basic"
            },
            {
              "$ref": "#/$defs/cmk.v2.Standard"
            },
            {
              "$ref": "#/$defs/cmk.v2.Dedicated"
            },
            {
              "$ref": "#/$defs/cmk.v2.Enterprise"
            },
            {
              "$ref": "#/$defs/cmk.v2.Freight"
            }
          ]
        },
        "kafka_bootstrap_endpoint": {
          "type": "string",
          "description": "The bootstrap endpoint used by Kafka clients to connect to the cluster.\n\nDEPRECATED - Please use the `endpoints` attribute instead.\n",
          "deprecated": true,
          "x-immutable": true,
          "readOnly": true
        },
        "http_endpoint": {
          "type": "string",
          "description": "The cluster HTTP request URL.\n\nDEPRECATED - Please use the `endpoints` attribute instead.\n",
          "format": "uri",
          "deprecated": true,
          "x-immutable": true,
          "readOnly": true
        },
        "api_endpoint": {
          "type": "string",
          "description": "The Kafka API cluster endpoint used by Kafka clients to connect to the cluster.\n\nDEPRECATED - Please use the `endpoints` attribute instead.\n",
          "deprecated": true,
          "x-immutable": true,
          "readOnly": true
        },
        "endpoints": {
          "description": "A map of endpoints for connecting to the Kafka cluster,\nkeyed by access_point_id. Access Point ID 'PUBLIC' and 'PRIVATE_LINK' are reserved.\nThese can be used for different network access methods or regions.\n",
          "allOf": [
            {
              "$ref": "#/$defs/cmk.v2.EndpointsMap"
            }
          ],
          "readOnly": true
        },
        "deletion_protection": {
          "type": "boolean",
          "description": "Enable deletion protection for the cluster"
        },
        "environment": {
          "allOf": [
            {
              "$ref": "#/$defs/EnvScopedObjectReference"
            }
          ],
          "description": "The environment to which this belongs."
        },
        "network": {
          "allOf": [
            {
              "$ref": "#/$defs/EnvScopedObjectReference"
            }
          ],
          "description": "The network associated with this object.",
          "x-immutable": true
        },
        "byok": {
          "allOf": [
            {
              "$ref": "#/$defs/GlobalObjectReference"
            }
          ],
          "description": "Note: For Pre-BYOK v1 clusters, API responses might show both\n`encryption_key` and `byok`.\nTo manage Pre-BYOK v1 keys, refer to:\nhttps://docs.confluent.io/cloud/current/security/encrypt/byok/legacy-byok.html\n#manage-pre-byok-api-v1-self-managed-encryption-keys\n",
          "x-immutable": true
        }
      },
      "x-enable-id": true,
      "x-enable-listmeta": true,
      "x-enable-objectmeta": true
    },
    "cmk.v2.ClusterStatus": {
      "type": "object",
      "required": [
        "phase"
      ],
      "description": "The status of the Cluster",
      "properties": {
        "phase": {
          "type": "string",
          "x-extensible-enum": [
            "PROVISIONING",
            "PROVISIONED",
            "FAILED"
          ],
          "description": "The lifecyle phase of the cluster:\n  PROVISIONED:  cluster is provisioned;\n  PROVISIONING:  cluster provisioning is in progress;\n  FAILED:  provisioning failed\n",
          "readOnly": true
        },
        "cku": {
          "description": "The number of Confluent Kafka Units (CKUs) the Dedicated cluster currently has.\n",
          "readOnly": true,
          "type": "integer",
          "format": "int32",
          "minimum": 1
        }
      },
      "readOnly": true
    },
    "cmk.v2.Dedicated": {
      "type": "object",
      "description": "A dedicated cluster with its parameters.\n",
      "properties": {
        "kind": {
          "type": "string",
          "enum": [
            "Dedicated"
          ],
          "description": "Dedicated cluster type.\n"
        },
        "cku": {
          "description": "The number of Confluent Kafka Units (CKUs) for Dedicated cluster types.\nMULTI_ZONE dedicated clusters must have at least two CKUs.\n",
          "type": "integer",
          "format": "int32",
          "minimum": 1
        },
        "encryption_key": {
          "type": "string",
          "description": "The id of the encryption key that is used to encrypt the data in the Kafka cluster.\n(e.g. for Amazon Web Services, the Amazon Resource Name of the key).\n",
          "deprecated": true,
          "x-immutable": true
        },
        "zones": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "uniqueItems": true,
          "minItems": 1,
          "maxItems": 3,
          "description": "The list of zones the cluster is in.\n\nOn AWS, zones are AWS [AZ IDs](https://docs.aws.amazon.com/ram/latest/userguide/working-with-az-ids.html)\n (e.g. use1-az3)\n\nOn GCP, zones are GCP [zones](https://cloud.google.com/compute/docs/regions-zones)\n (e.g. us-central1-c).\n",
          "readOnly": false,
          "x-immutable": true
        },
        "release_priority": {
          "type": "string",
          "x-extensible-enum": [
            "REGULAR",
            "PRIORITY"
          ],
          "description": "Specifies the release priority for cluster updates. Defaults to REGULAR. Clusters with PRIORITY are updated before clusters with REGULAR.\n",
          "default": "REGULAR"
        }
      },
      "required": [
        "kind",
        "cku"
      ]
    },
    "cmk.v2.Endpoints": {
      "type": "object",
      "description": "Given a gateway type, endpoints to connect to the Kafka cluster.\n",
      "properties": {
        "kafka_bootstrap_endpoint": {
          "type": "string",
          "description": "The bootstrap endpoint used by Kafka clients to connect to the cluster.\n"
        },
        "http_endpoint": {
          "type": "string",
          "description": "The REST endpoint for the Kafka cluster.\n",
          "format": "uri"
        },
        "connection_type": {
          "type": "string",
          "description": "The type of connection used for the endpoint.\n",
          "x-extensible-enum": [
            "PUBLIC",
            "PRIVATE_LINK",
            "PRIVATE_NETWORK_INTERFACE"
          ]
        }
      },
      "required": [
        "kafka_bootstrap_endpoint",
        "http_endpoint",
        "connection_type"
      ],
      "readOnly": true
    },
    "cmk.v2.EndpointsMap": {
      "type": "object",
      "description": "Map of endpoints for a Kafka cluster, keyed by access point ID.\n",
      "additionalProperties": {
        "$ref": "#/$defs/cmk.v2.Endpoints"
      },
      "readOnly": true
    },
    "cmk.v2.Enterprise": {
      "type": "object",
      "description": "The enterprise cluster type.\n",
      "properties": {
        "kind": {
          "description": "Enterprise cluster type.\n",
          "type": "string",
          "enum": [
            "Enterprise"
          ]
        },
        "max_ecku": {
          "description": "The maximum number of Elastic Confluent Kafka Units (eCKUs) that Kafka clusters should auto-scale to.\nKafka clusters with `HIGH` availability must have at least two eCKUs.\nFor more details, see [Maximum eCKU requirements](https://docs.confluent.io/cloud/current/clusters/cluster-types.html#minimum-maximum-ecku-requirements).\n",
          "type": "integer",
          "format": "int32",
          "minimum": 1
        }
      },
      "required": [
        "kind"
      ]
    },
    "cmk.v2.Freight": {
      "type": "object",
      "description": "A freight cluster with its parameters.\n",
      "properties": {
        "kind": {
          "type": "string",
          "enum": [
            "Freight"
          ],
          "description": "Freight cluster type.\n"
        },
        "max_ecku": {
          "description": "The maximum number of Elastic Confluent Kafka Units (eCKUs) that Kafka clusters should auto-scale to.\nKafka clusters with `HIGH` availability must have at least two eCKUs.\nFor more details, see [Maximum eCKU requirements](https://docs.confluent.io/cloud/current/clusters/cluster-types.html#minimum-maximum-ecku-requirements).\n",
          "type": "integer",
          "format": "int32",
          "minimum": 1
        },
        "zones": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "uniqueItems": true,
          "minItems": 1,
          "maxItems": 3,
          "description": "The list of zones the cluster is in.\n\nOn AWS, zones are AWS [AZ IDs](https://docs.aws.amazon.com/ram/latest/userguide/working-with-az-ids.html)\n (e.g. use1-az3)\n\nOn GCP, zones are GCP [zones](https://cloud.google.com/compute/docs/regions-zones)\n (e.g. us-central1-c).\n",
          "readOnly": true,
          "x-immutable": true
        }
      },
      "required": [
        "kind"
      ]
    },
    "cmk.v2.Standard": {
      "type": "object",
      "description": "The standard cluster type.\n",
      "properties": {
        "kind": {
          "description": "Standard cluster type.\n",
          "type": "string",
          "enum": [
            "Standard"
          ]
        },
        "max_ecku": {
          "description": "The maximum number of Elastic Confluent Kafka Units (eCKUs) that Kafka clusters should auto-scale to.\nKafka clusters with `HIGH` availability must have at least two eCKUs.\nFor more details, see [Maximum eCKU requirements](https://docs.confluent.io/cloud/current/clusters/cluster-types.html#minimum-maximum-ecku-requirements).\n",
          "type": "integer",
          "format": "int32",
          "minimum": 1
        }
      },
      "required": [
        "kind"
      ]
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/confluent-cmk-v2-cluster-list"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.