Get a tenant by ID
One tenant, by canonical ID or by the external_id you asserted it under.
id accepts the canonical tenant_… form or external_id:<value>, the key your own system knows the customer by. Since assertions create tenants keyed on external_id, the second form is usually the one you have.
Two states
state is STATE_ACTIVE for a living tenant and STATE_ERASING for one mid-erasure. An erasing tenant is on its way out: once the background work finishes, this endpoint returns NotFound. Polling here is how you follow an erasure to completion.
The record reads back your assertions
A tenant has nospec. metadata.name is the most recent name you asserted, metadata.external_id is the key you asserted it under, and metadata.updated_at tells you when the tenant was last asserted. includeInfo=true adds the subjectCount, objectiveCount, and widgetSessionCount counts, at the cost of a query each.
Related
List tenants
List a tenant's subjects
Erase a tenant
Use your own IDs
external_id: form works across the API.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Workspace ID.
"workspace_01HXKD2E5NQM3T9AYWCF133E3Q"
Tenant ID. Accepts the canonical tenant_… form or the
external_id:<value> form.
Query Parameters
When true, the info field is populated.
Response
OK
Tenant is the customer's organization as a readable record rather than an
echo. It carries no spec: a tenant is never configured, only asserted, so
everything about it lives in the metadata envelope — external_id is the key
the customer asserted it under, name is the most recent name they asserted,
and updated_at is therefore when the tenant was last asserted.
Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
The current lifecycle state of the tenant. Output only.
STATE_UNSPECIFIED, STATE_ACTIVE, STATE_ERASING TenantInfo provides read-only server-derived data about a tenant.