platform.admin_host.set
Claim an admin hostname for a tenant, so the admin resolves its tenant from the request Host instead of an env var. Idempotent for the same tenant; a host held by another tenant is a conflict (remove it first). The hostname is normalized like a store’s: scheme/path/query dropped, lowercased, IDN-punycoded, the scheme’s default port removed.
- Scope:
platform.tenant.write - System: yes
- Reachable from: the platform CONTROL face, with a platform credential — never a tenant one. See the surfaces.
- Events:
platform.admin_host.set
Input (JSON Schema)
Section titled “Input (JSON Schema)”{ "properties": { "host": { "minLength": 1, "type": "string" }, "tenant_id": { "minLength": 1, "type": "string" } }, "required": [ "tenant_id", "host" ], "type": "object"}Result (200)
Section titled “Result (200)”{ "additionalProperties": false, "properties": { "host": { "type": "string" }, "tenant_id": { "type": "string" } }, "required": [ "host", "tenant_id" ], "type": "object"}Errors
Section titled “Errors”validation_failed (400) · unauthorized (401) · forbidden (403) · conflict (409) · internal (500)