Management APIs / Cloud Connect

Enroll a Cloud Connect cluster or standalone runtime

POSThttps://api.spice.ai/v1/cloud-connect/enroll

Token enrollment accepts a canonical kind-bound enrollment token. Standalone enrollment may instead use user Authorization plus X-Org-Name. Idempotency-Key is required for standalone enrollment.

Authorizations

  • Authorizationstring

    Bearer <token>. Authentication lists the tokens it accepts.

Header parameters

  • Idempotency-Keystring (uuid)

  • X-Org-Namestring

    Required with Bearer authorization for authenticated standalone enrollment; omitted for token enrollment.

Body

application/jsonRequired

One of

kind: standalone, with tokenobject
  • kindstringRequired

    • Value: standalone
  • tokenstringRequired

    • Pattern: ^spice-enroll-[A-Za-z0-9_-]{32}$
  • expected_orgstring

  • csr_pemstringRequired

  • enc_pubkey_pemstringRequired

  • instanceobjectRequired

  • regionstring

kind: clusterobject
  • kindstringRequired

    • Value: cluster
  • tokenstringRequired

    • Pattern: ^spice-enroll-[A-Za-z0-9_-]{32}$
  • expected_orgstring

  • csr_pemstringRequired

  • enc_pubkey_pemstringRequired

kind: standalone, without tokenobject
  • kindstringRequired

    • Value: standalone
  • csr_pemstringRequired

  • enc_pubkey_pemstringRequired

  • instanceobjectRequired

  • regionstring

Responses

200Enrollment completed or exactly replayedapplication/json

One of

kind: standaloneobject
  • kindstringRequired

    • Value: standalone
  • instance_idstringRequired

  • identity_cert_pemstringRequired

  • ca_bundle_pemstringRequired

  • gateway_addrstringRequired

  • not_afterstring (date-time)Required

  • organizationobjectRequired

    2 properties
    • idintegerRequired

    • namestringRequired

  • regionstringRequired

  • portalobjectRequired

    1 property
    • new_project_urlstring (uri)Required

  • attachmentnullRequired

  • recoveredbooleanRequired

kind: clusterobject
  • kindstringRequired

    • Value: cluster
  • connection_idstringRequired

  • identity_cert_pemstringRequired

  • ca_bundle_pemstringRequired

  • gateway_addrstringRequired

  • not_afterstring (date-time)Required

  • organizationobjectRequired

    2 properties
    • idintegerRequired

    • namestringRequired

  • regionstringRequired

  • attachmentnullRequired

400Invalid request, kind mismatch, or unsupported project field

401Invalid credential or authorization

403Authenticated caller lacks the required scope or organization role

409Conflict

Consumed token, connection already enrolled, unavailable connection, organization mismatch, or idempotency mismatch

410Enrollment token or authenticated recovery window expired

413Request body too large

500Internal or identity-provider failure; use the retryable response field

OpenAPIapi.spice.ai/openapi.json

curl -X POST "https://api.spice.ai/v1/cloud-connect/enroll" \
  -H "Content-Type: application/json" \
  -d '{
    "kind": "standalone",
    "token": "string",
    "csr_pem": "string",
    "enc_pubkey_pem": "string",
    "instance": {}
  }'
{
  "kind": "standalone",
  "instance_id": "string",
  "identity_cert_pem": "string",
  "ca_bundle_pem": "string",
  "gateway_addr": "string",
  "not_after": "2026-01-01T00:00:00Z",
  "organization": {
    "id": 0,
    "name": "string"
  },
  "region": "string",
  "portal": {
    "new_project_url": "https://example.com"
  },
  "attachment": null,
  "recovered": true
}

application/json