tenant.store.create
Create a store within the current tenant. handle is the store’s identifier and is unique within the tenant — repeating one is refused with conflict (reason: handle_taken), not accepted. host is the store’s public URL; it is also its routing address, and a URL another store already claims is refused the same way (reason: host_taken). theme_key names the storefront theme the store wears (a folder in the storefront’s themes/, resolved there); omit it for the reference theme.
- Scope:
tenant.store.write - System: no
- Reachable from:
POST /v1/commands/tenant.store.create(tenant credential) · MCP tooltenant.store.create· SDKclient.call('tenant.store.create', …) - Events:
tenant.store.created
Input (JSON Schema)
Section titled “Input (JSON Schema)”{ "properties": { "handle": { "minLength": 1, "type": "string" }, "host": { "type": "string" }, "name": { "minLength": 1, "type": "string" }, "theme_key": { "minLength": 1, "type": "string" } }, "required": [ "name", "handle" ], "type": "object"}Result (200)
Section titled “Result (200)”{ "additionalProperties": false, "properties": { "id": { "type": "string" } }, "required": [ "id" ], "type": "object"}Errors
Section titled “Errors”validation_failed (400) · unauthorized (401) · forbidden (403) · conflict (409) · internal (500)