Skip to main content
The API reference is generated from the Platinur control-plane FastAPI app. The published OpenAPI file includes /api/* routes only, so UI routes, login pages, and form compatibility endpoints are not presented as public API documentation. Every workspace binds one ClickHouse analytical database. Connect workspaces bind a customer-owned service; Managed workspaces receive a dedicated service selected from the server-controlled capacity profiles during paid signup. Managed provisioning is a platform lifecycle operation, not a customer-facing portal API, so those internal routes are intentionally excluded from the published schema.

Authentication

Portal APIs authenticate with the session cookie issued at login — the same session the portal uses. Two special-purpose token headers exist outside the portal session: worker ↔ control-plane calls carry a per-workspace shared token, and the platform’s usage endpoint (GET /api/platform/usage) requires X-Platinur-Platform-Token.

Key endpoints

  • GET /api/environments, POST /api/environments/activate — environment state.
  • GET /api/status?env=staging&view=… — the status summary that powers the portal.
  • GET|POST /api/integrations, POST /api/integrations/{id}/test|scan|run — sources.
  • GET /api/model-catalog?env=…, GET /api/model-lineage?env=… — the dbt catalog.
  • POST /api/assistant/tasks — assistant requests; POST /api/dbt/runs; POST /api/evidence/rebuild?env=….
  • GET /api/promotions/current, POST /api/promotions/release-plan, POST /api/promotions/release-preflight, POST /api/promotions/release-copy, POST /api/promotions/publish, and GET /api/promotions/publish/status — resolve a dependency-closed selection, validate the release and reconstructed Staging states, then publish it using release_plan_id, title, and optional description. The older GET /api/promotions/release-preview cutoff endpoint is compatibility-only.
  • POST /api/account/delete — asynchronous Owner-only permanent workspace deletion with exact workspace-name acknowledgment and current-password verification.
POST /api/promotions/deploy-prod is legacy and returns 410 Gone — do not build on it. Production releases go through Publish (/api/promotions/publish).
POST /api/account/reset and POST /api/models/reset are retired and return 410 Gone. V1 starts over through permanent account deletion, not partial state resets or warehouse unbinding.

Regenerate the spec

From the repository root:
This writes the control-plane OpenAPI document to docs-site/api/openapi.json.

Local preview

Mintlify will render this overview page and the generated Control Plane API section from the OpenAPI file.