Skip to main content
This page covers customer/project inventory. For the separate plugin release registry, see Spitzli Cloud plugins.
The registry API accepts OAuth bearer tokens for the Spitzli Cloud MCP resource and the corresponding registry scopes. Browser cookies are not registry API authorization.

Discover the contract

GET /api/registry returns supported operations, collections and JSON schemas. Use that response before constructing writes.

Collections and operations

Current native collections are customers, projects and read-only audit-events. Older cms-instances examples belong to the retained TypeScript contract and are not part of this native discovery response. Creating a project does not deploy a website.

Filtering and pagination

Lists support validated search, page, limit, status and sort parameters. The maximum list limit is 50. Use the discovery schema for collection-specific filters; unsupported filters are rejected.
Keep IDs as strings. Unknown fields, unsupported filters and duplicate query parameters are rejected. JSON request bodies are limited to 64 KiB.
Registry creates are not idempotent. After an ambiguous timeout, inspect existing records before retrying. Registry archive/restore does not implement infrastructure deletion.
Source: native Registry resource adapter (crates/control-plane/src/resource_registry.rs) and query contract (crates/registry/src/query.rs).