Update a tenant.
PATCH
/api/admin/tenants/{id}
Code sample: Shell / cURL
curl --request PATCH \ --url https://auth.example.com/api/admin/tenants/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "name": "Acme Corporation", "description": "Primary production tenant for Acme Corporation." }'Update mutable tenant display metadata. Lifecycle state changes require a dedicated lifecycle command endpoint. The path parameter identifies the target tenant, so X-Tenant-Id is not required.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ” id
required
string
Request Body required
Section titled “Request Body required ” Media type application/json
object
name
string
tenant_code
string
description
string | null
key
additional properties
Example
{ "name": "Acme Corporation", "description": "Primary production tenant for Acme Corporation."}Responses
Section titled “ Responses ”Tenant mutation response. Timestamps and lifecycle fields are assigned by the server and are not accepted in the create request body.
Media type application/json
Tenant row returned by create, update, set-default, and other tenant mutation operations.
object
id
required
string
tenant_code
required
string
name
required
string
description
required
string | null
isolation_policy
required
Physical placement scope. Both modes expand automatically.
string
lifecycle_state
required
string
is_default
required
boolean
created_at
required
Unix timestamp in seconds.
integer format: int64
updated_at
required
Unix timestamp in seconds.
integer format: int64
provisioning
Present when tenant creation is accepted for asynchronous Control provisioning.
object
mode
string
operation_id
required
string
tenant_id
required
string
operation_kind
required
string
source_tenant_id
required
string | null
isolation_policy
required
string
status
required
string
current_step
required
string
attempt_count
required
integer
next_attempt_at
required
integer | null format: int64
last_error_code
required
string | null
created_at
required
integer format: int64
updated_at
required
integer format: int64
completed_at
required
integer | null format: int64
preparation_result
required
object | null
capacity_operation_ids
required
object
key
additional properties
string
capacity_operations
Array<object>
object
data_role
required
string
operation_id
required
string
status
required
string
attempt_count
required
integer
next_attempt_at
required
integer | null format: int64
last_error_code
required
string | null
updated_at
required
integer format: int64
steps
required
Array<object>
object
step_key
required
string
status
required
string
attempt_count
required
integer
next_attempt_at
required
integer | null format: int64
last_error_code
required
string | null
observed_resource_id
required
string | null
progress_current
integer | null
progress_total
integer | null
started_at
required
integer | null format: int64
completed_at
required
integer | null format: int64
updated_at
required
integer format: int64
key
additional properties
key
additional properties
steps
required
Array<object>
object
step_key
required
string
status
required
string
attempt_count
required
integer
next_attempt_at
required
integer | null format: int64
last_error_code
required
string | null
observed_resource_id
required
string | null
progress_current
integer | null
progress_total
integer | null
started_at
required
integer | null format: int64
completed_at
required
integer | null format: int64
updated_at
required
integer format: int64
key
additional properties
key
additional properties
key
additional properties
Examples
Example controlPlane
Tenant accepted for asynchronous Control Worker provisioning.
{ "id": "acme", "tenant_code": "acme", "name": "Acme Corp", "description": "Production tenant for Acme Corp.", "isolation_policy": "tenant_exclusive", "lifecycle_state": "provisioning", "is_default": false, "created_at": 1770000000, "updated_at": 1770000000, "provisioning": { "operation_id": "tenant_create_018f3f7c85b07c5da6b61c3a6e6b9e01", "tenant_id": "acme", "operation_kind": "create", "isolation_policy": "tenant_exclusive", "status": "queued", "current_step": "request_accepted", "attempt_count": 0, "next_attempt_at": null, "last_error_code": null, "created_at": 1770000000, "updated_at": 1770000000, "completed_at": null, "capacity_operation_ids": {}, "steps": [] }}