VMware Tanzu Tanzu Kubernetes Clusters API
Create and manage TanzuKubernetesCluster resources
Create and manage TanzuKubernetesCluster resources
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.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.curl "https://apis.io/api/v1/apis/vmware-tanzu-tanzu-kubernetes-clusters-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.
openapi: 3.2.0
info:
title: VMware Tanzu Kubernetes Grid Tanzu Kubernetes Clusters API
description: The Tanzu Kubernetes Grid (TKG) API is a Kubernetes-native declarative API using the TanzuKubernetesCluster CRD (v1alpha1/v1alpha2) to provision and manage Tanzu Kubernetes clusters on vSphere Supervisor. Clusters are created, updated, and deleted using standard kubectl against the Supervisor cluster's Kubernetes API server.
version: v1alpha2
contact:
name: VMware Tanzu Support
url: https://tanzu.vmware.com/support
license:
name: Proprietary
url: https://tanzu.vmware.com/
servers:
- url: https://{supervisor-ip}:6443
description: vSphere Supervisor Kubernetes API server
variables:
supervisor-ip:
default: 192.168.1.100
description: vSphere Supervisor cluster API server IP
tags:
- name: Tanzu Kubernetes Clusters
description: Create and manage TanzuKubernetesCluster resources
paths:
/apis/run.tanzu.vmware.com/v1alpha2/namespaces/{namespace}/tanzukubernetesclusters:
get:
operationId: listTanzuKubernetesClusters
summary: List Tanzu Kubernetes Clusters
description: List all TanzuKubernetesCluster resources in a vSphere namespace.
tags:
- Tanzu Kubernetes Clusters
security:
- BearerAuth: []
parameters:
- name: namespace
in: path
required: true
schema:
type: string
description: vSphere namespace containing the clusters
responses:
'200':
description: List of TanzuKubernetesCluster resources
content:
application/json:
schema:
$ref: '#/components/schemas/TanzuKubernetesClusterList'
'401':
$ref: '#/components/responses/Unauthorized'
post:
operationId: createTanzuKubernetesCluster
summary: Create Tanzu Kubernetes Cluster
description: Create a new TanzuKubernetesCluster resource in the specified vSphere namespace. The Supervisor reconciles this resource and provisions the Kubernetes cluster.
tags:
- Tanzu Kubernetes Clusters
security:
- BearerAuth: []
parameters:
- name: namespace
in: path
required: true
schema:
type: string
description: vSphere namespace to create the cluster in
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TanzuKubernetesCluster'
responses:
'201':
description: Cluster resource created
content:
application/json:
schema:
$ref: '#/components/schemas/TanzuKubernetesCluster'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
/apis/run.tanzu.vmware.com/v1alpha2/namespaces/{namespace}/tanzukubernetesclusters/{cluster_name}:
get:
operationId: getTanzuKubernetesCluster
summary: Get Tanzu Kubernetes Cluster
description: Retrieve a specific TanzuKubernetesCluster resource and its status.
tags:
- Tanzu Kubernetes Clusters
security:
- BearerAuth: []
parameters:
- name: namespace
in: path
required: true
schema:
type: string
- name: cluster_name
in: path
required: true
schema:
type: string
description: TanzuKubernetesCluster resource name
responses:
'200':
description: TanzuKubernetesCluster resource
content:
application/json:
schema:
$ref: '#/components/schemas/TanzuKubernetesCluster'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
delete:
operationId: deleteTanzuKubernetesCluster
summary: Delete Tanzu Kubernetes Cluster
description: Delete a TanzuKubernetesCluster resource, triggering cluster deletion.
tags:
- Tanzu Kubernetes Clusters
security:
- BearerAuth: []
parameters:
- name: namespace
in: path
required: true
schema:
type: string
- name: cluster_name
in: path
required: true
schema:
type: string
responses:
'200':
description: Cluster deletion initiated
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
responses:
BadRequest:
description: Invalid resource specification
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Missing or invalid Bearer token
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
TanzuKubernetesCluster:
type: object
description: A TanzuKubernetesCluster CRD resource representing a workload Kubernetes cluster.
required:
- apiVersion
- kind
- metadata
- spec
properties:
apiVersion:
type: string
description: API version of the resource.
example: run.tanzu.vmware.com/v1alpha2
kind:
type: string
description: Resource kind.
default: TanzuKubernetesCluster
metadata:
$ref: '#/components/schemas/ObjectMeta'
spec:
$ref: '#/components/schemas/TanzuKubernetesClusterSpec'
status:
$ref: '#/components/schemas/TanzuKubernetesClusterStatus'
ObjectMeta:
type: object
description: Kubernetes object metadata.
properties:
name:
type: string
description: Cluster name.
example: my-workload-cluster
namespace:
type: string
description: vSphere namespace.
labels:
type: object
additionalProperties:
type: string
annotations:
type: object
additionalProperties:
type: string
NodeGroup:
type: object
description: A group of identical Kubernetes nodes.
required:
- count
- vmClass
- storageClass
- tkr
properties:
count:
type: integer
description: Number of nodes in this group.
minimum: 1
vmClass:
type: string
description: vSphere VM class for node sizing.
example: best-effort-small
storageClass:
type: string
description: StorageClass for node persistent storage.
example: wcpglobal-storage-profile
tkr:
type: object
description: Tanzu Kubernetes Release (TKR) reference.
properties:
reference:
type: object
properties:
name:
type: string
example: v1.29.0---vmware.1-tkg.1
TanzuKubernetesClusterSpec:
type: object
description: Desired state specification for the TanzuKubernetesCluster.
required:
- topology
properties:
topology:
$ref: '#/components/schemas/Topology'
settings:
$ref: '#/components/schemas/ClusterSettings'
TanzuKubernetesClusterList:
type: object
description: List of TanzuKubernetesCluster resources.
properties:
apiVersion:
type: string
default: run.tanzu.vmware.com/v1alpha2
kind:
type: string
default: TanzuKubernetesClusterList
items:
type: array
items:
$ref: '#/components/schemas/TanzuKubernetesCluster'
NodePool:
type: object
description: A worker node pool definition.
required:
- name
- count
- vmClass
- storageClass
- tkr
properties:
name:
type: string
description: Node pool name.
count:
type: integer
vmClass:
type: string
storageClass:
type: string
tkr:
type: object
Error:
type: object
properties:
code:
type: integer
message:
type: string
Topology:
type: object
description: 'Cluster topology: control plane and worker nodes.'
required:
- controlPlane
properties:
controlPlane:
$ref: '#/components/schemas/NodeGroup'
nodePools:
type: array
description: Worker node pools.
items:
$ref: '#/components/schemas/NodePool'
ClusterSettings:
type: object
description: Optional cluster configuration settings.
properties:
network:
type: object
description: Network configuration for the cluster.
properties:
serviceCidr:
type: string
description: CIDR for Kubernetes services.
example: 10.96.0.0/12
podCidr:
type: string
description: CIDR for pod networking.
example: 192.168.0.0/16
cni:
type: object
description: CNI plugin configuration.
TanzuKubernetesClusterStatus:
type: object
description: Observed state of the TanzuKubernetesCluster.
properties:
phase:
type: string
description: Cluster lifecycle phase.
enum:
- creating
- running
- updating
- deleting
- error
conditions:
type: array
description: Kubernetes conditions describing cluster health.
items:
type: object
apiEndpoint:
type: string
description: API server endpoint for the workload cluster.
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: Kubernetes Bearer token for vSphere Supervisor API authentication.
externalDocs:
description: TKG API Documentation
url: https://docs.vmware.com/en/VMware-vSphere/7.0/vmware-vsphere-with-tanzu/GUID-31BF8166-5FC8-4D43-933D-5797F3BE4A36.html