Skip to content

Create a tenant with a specified OWNER (SUPER_ADMIN)

If the ownerEmail already has an account it is attached as OWNER immediately; otherwise a tenant + one-time OWNER credential-setup invitation are created atomically and a setup URL returned (no plaintext password delivered).

Media typeapplication/json
object
name
required
string
slug
required
string
/^[a-z0-9-]{3,32}$/
ownerEmail
required
string format: email
Examplegenerated
json
{
"name": "example",
"slug": "example",
"ownerEmail": "hello@example.com"
}

Tenant created

Media typeapplication/json
object
tenant
object
id
string
name
string
slug
string
ownerProvisioning

Null when an existing account was attached; otherwise the setup link.

object
email
string
setupUrl
string

Invalid JSON / name / slug / ownerEmail

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}

Needs SUPER_ADMIN

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}

Slug already used

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}

Create failed

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}