List tenants
const url = 'https://example.com/v1/system/tenants?limit=25';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/v1/system/tenants?limit=25' \ --header 'Authorization: Bearer <token>'Newest first; purged tenants are left out. Takes system:tenants. Never a tenant’s content.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”1..100. Default 25.
Where the previous page ended: its nextCursor, as it came. A runtime that seals cursors takes one only for the same list, filters and caller, within a day; otherwise 400 bad-input, and the list starts again without it. Absent → first page.
Responses
Section titled “Responses”The tenants.
object
A tenant, as the operator sees it: never its content.
object
closing: readable and exportable with its own keys for its window, nothing runs. suspended: the same, reversibly. closing wins over suspended.
A test tenant: left out of usage, invoices and counts.
The repository its deployments’ images must sit at or under, <host>/<path>.
Opaque; absent when hasMore is false.
Example
{ "data": [ { "state": "active" } ]}A limit out of range, or a cursor this route did not give.
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}Missing / malformed / expired / revoked bearer token.
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}A tenant’s key or session (system-principal-required), or a system key without system:tenants (system-scope-missing).
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}See also
POST /v1/system/tenants: Create a tenantGET /v1/system/tenants/{tenantId}: Read a tenantPOST /v1/system/tenants/{tenantId}/close: Close a tenantPUT /v1/system/tenants/{tenantId}/suspended: Suspend a tenant, or restore it- Error code
system-principal-required - Error code
system-scope-missing - Every error code