Confluent | the Data Streaming Platform Clusters API

The Clusters API from Confluent | the Data Streaming Platform — 2 operation(s) for clusters.

OpenAPI Specification

confluent-the-data-streaming-platform-clusters-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Confluent Cloud REST API (selected) API Keys Clusters API
  description: 'A best-effort subset of the Confluent Cloud control-plane REST APIs:

    Organizations and Environments (org/v2), Service Accounts and Cloud

    API Keys (iam/v2), and Kafka Clusters (cmk/v2). Confluent Cloud

    additionally publishes data-plane APIs (Kafka REST v3, Schema Registry,

    Connect, ksqlDB, Flink) on per-cluster endpoints that are not modeled

    here. Authentication uses HTTP Basic with a Cloud API Key/Secret pair,

    or OAuth 2.0 (Confluent STS / external IdP).

    '
  version: 2.0.0
  contact:
    name: Confluent Cloud API Reference
    url: https://docs.confluent.io/cloud/current/api.html
servers:
- url: https://api.confluent.cloud
  description: Confluent Cloud control plane
security:
- basicAuth: []
- bearerAuth: []
tags:
- name: Clusters
paths:
  /cmk/v2/clusters:
    get:
      tags:
      - Clusters
      summary: List Kafka clusters
      parameters:
      - in: query
        name: environment
        required: true
        schema:
          type: string
      - in: query
        name: page_size
        schema:
          type: integer
          default: 10
      - in: query
        name: page_token
        schema:
          type: string
      responses:
        '200':
          description: A page of clusters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClusterList'
    post:
      tags:
      - Clusters
      summary: Create a Kafka cluster
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Cluster'
      responses:
        '201':
          description: Cluster being provisioned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cluster'
  /cmk/v2/clusters/{id}:
    get:
      tags:
      - Clusters
      summary: Get a Kafka cluster
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      - in: query
        name: environment
        required: true
        schema:
          type: string
      responses:
        '200':
          description: A cluster
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cluster'
    delete:
      tags:
      - Clusters
      summary: Delete a Kafka cluster
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      - in: query
        name: environment
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Cluster being deprovisioned
components:
  schemas:
    Cluster:
      type: object
      properties:
        api_version:
          type: string
          example: cmk/v2
        kind:
          type: string
          example: Cluster
        id:
          type: string
        metadata:
          $ref: '#/components/schemas/ResourceMetadata'
        spec:
          type: object
          properties:
            display_name:
              type: string
            availability:
              type: string
              enum:
              - SINGLE_ZONE
              - MULTI_ZONE
            cloud:
              type: string
              enum:
              - AWS
              - AZURE
              - GCP
            region:
              type: string
            config:
              type: object
              properties:
                kind:
                  type: string
                  enum:
                  - Basic
                  - Standard
                  - Dedicated
                  - Enterprise
                  - Freight
            environment:
              type: object
              properties:
                id:
                  type: string
                api_version:
                  type: string
                  example: org/v2
                kind:
                  type: string
                  example: Environment
        status:
          type: object
          properties:
            phase:
              type: string
            cku:
              type: integer
    ClusterList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Cluster'
        metadata:
          $ref: '#/components/schemas/ListMetadata'
    ResourceMetadata:
      type: object
      properties:
        self:
          type: string
          format: uri
        resource_name:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        deleted_at:
          type: string
          format: date-time
    ListMetadata:
      type: object
      properties:
        first:
          type: string
          format: uri
        last:
          type: string
          format: uri
        prev:
          type: string
          format: uri
        next:
          type: string
          format: uri
        total_size:
          type: integer
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: Cloud API Key (key) and Secret (password)
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Confluent STS or external OAuth access token