Clusters API

Manage Kubernetes clusters and external provider integrations.

List Clusters

GET /api/v1/clusters
[
  {
    "id": "cls_a1b2c3d4",
    "name": "production-cluster",
    "provider": "local",
    "status": "running",
    "node_count": 3,
    "k8s_version": "1.28",
    "created_at": "2024-01-15T10:30:00Z"
  }
]

Create a Cluster

POST /api/v1/clusters
name
string
required
Cluster name
provider_id
string
Cloud provider ID (for external clusters)
region
string
required
Deployment region
plan_id
string
Node size plan
node_count
integer
Number of worker nodes (default: 1)
{
  "name": "staging-cluster",
  "provider_id": "prov_vultr",
  "region": "ewr",
  "plan_id": "vc2-2c-4gb",
  "node_count": 3
}

Get a Cluster

GET /api/v1/clusters/{id}

Delete a Cluster

DELETE /api/v1/clusters/{id}

Cluster Nodes

GET /api/v1/clusters/{id}/nodes
[
  {
    "name": "node-01",
    "status": "Ready",
    "role": "worker",
    "cpu": "4",
    "memory": "8Gi",
    "pods": 12
  }
]

Cloud Providers

List Providers

GET /api/v1/cluster/providers

Connect a Provider

POST /api/v1/cluster/providers
name
string
required
Provider name
type
string
required
Provider type: vultr, hetzner, aws, etc.
api_key
string
required
Provider API key
{
  "name": "My Vultr Account",
  "type": "vultr",
  "api_key": "your-vultr-api-key"
}

Provider Plans

GET /api/v1/cluster/providers/{id}/plans

Provider Regions

GET /api/v1/cluster/providers/{id}/regions