Skip to content

Overview

The Kupe API is a REST API for managing tenant resources programmatically (clusters, secrets, members, and API keys) from CI pipelines, Terraform, or your own scripts. Every mutating route accepts an API key and, where it matters, an ETag for safe concurrent updates.

https://api.kupe.cloud/api/v1

Most API routes are tenant-scoped:

/api/v1/tenants/{tenant}/...

That includes clusters, secrets, members, API keys, invoices, and tenant settings.

Plan endpoints are the exception. These are public and do not require authentication:

/api/v1/plans
/api/v1/plans/{name}
AreaWhat the API covers
ClustersCreate, inspect, update, delete, and fetch connection details
SecretsCreate secret definitions, manage sync targets, inspect sync status, and delete the definition
MembersAdd members, change roles, and remove access
API keysCreate, list, and revoke tenant-scoped API keys
Tenant settingsInspect tenant status and update plan or observability enforcement
Invoices and plansRead invoice history and public plan metadata

Tenant-scoped routes use bearer authentication. Generate an API key in the console, then send it in CI, Terraform, scripts, or any other automation. Pick the narrowest role that gets the job done.

Read-modify-write flows support optimistic locking with ETag and If-Match. Use that pattern when automation might race with another user or pipeline.

Use the API when you want:

  • direct scripting
  • custom integration logic
  • event-driven automation

Use Terraform when you want:

  • declarative state management
  • plan and apply workflows
  • drift detection and repeatable infrastructure changes

The reference section is generated from the OpenAPI spec, so it stays aligned with the API surface as the server evolves.