Control Plane

Operations of the Control Plane API. Paths are relative to your deployment's API host.

GET /api/control-plane-api/control-plane/resources/{kind}

List managed resources of a kind for the org.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
kindpathstringyesXemaResourceKind wire value.
managedKeyquerystringnoOnly for kind project: return only the project whose managedKey (<namespace>:<id>) equals this value, or an empty list. Any other kind, or a malformed key, is refused with 400.
StatusDescriptionBody
200application/json ResourceDtoDataArrayEnvelope

POST /api/control-plane-api/control-plane/resources/{kind}

Create a managed resource of a kind.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
kindpathstringyes

Request body: application/json ResourceSpecDto

StatusDescriptionBody
201application/json ResourceHandleDtoDataEnvelope

GET /api/control-plane-api/control-plane/resources/{kind}/{id}

Get a single managed resource by physical id.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyes
kindpathstringyes
StatusDescriptionBody
200application/json ResourceDtoDataEnvelope

PUT /api/control-plane-api/control-plane/resources/{kind}/{id}

Update a managed resource by physical id.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyes
kindpathstringyes

Request body: application/json ResourceSpecDto

StatusDescriptionBody
200application/json ResourceDtoDataEnvelope

DELETE /api/control-plane-api/control-plane/resources/{kind}/{id}

Delete a managed resource by physical id.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
idpathstringyes
kindpathstringyes
StatusDescriptionBody
204

GET /api/control-plane-api/control-plane/stacks

List the org's stacks with their persisted resource counts.

Authentication: bearer token (Authorization: Bearer <token>)

StatusDescriptionBody
200application/json StackSummaryDtoDataArrayEnvelope

POST /api/control-plane-api/control-plane/stacks/{name}/apply

Apply a manifest to a stack, persisting mappings + hashes.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
namepathstringyes

Request body: application/json StackManifestDto

StatusDescriptionBody
200application/json StackApplyResultDtoDataEnvelope

GET /api/control-plane-api/control-plane/stacks/{name}/export

Render the stack's managed resources as a XemaManifest.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
namepathstringyes
StatusDescriptionBody
200application/json StackExportDtoDataEnvelope

POST /api/control-plane-api/control-plane/stacks/{name}/import

Adopt existing live resources into the stack (no mutation).

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
namepathstringyes

Request body: application/json StackManifestDto

StatusDescriptionBody
200application/json object

POST /api/control-plane-api/control-plane/stacks/{name}/plan

Compute a side-effect-free plan for a manifest against a stack.

Authentication: bearer token (Authorization: Bearer <token>)

ParameterInTypeRequiredDescription
namepathstringyes

Request body: application/json StackManifestDto

StatusDescriptionBody
200application/json ResourcePlanDtoDataEnvelope