Skip to content

initialSetup

POST
/api/v1/auth/setup
curl --request POST \
--url https://example.com/api/v1/auth/setup \
--header 'Content-Type: application/json' \
--data '{ "organizationName": "example", "ownerName": "example", "username": "example", "password": "example" }'

Public. Create the organization and initial Owner account during first-run setup.

Media typeapplication/json
object
organizationName
required
string
>= 2 characters <= 120 characters
ownerName
required
string
>= 2 characters <= 120 characters
username
required
string
>= 3 characters <= 254 characters
password
required
string
>= 12 characters <= 1024 characters
Examplegenerated
{
"organizationName": "example",
"ownerName": "example",
"username": "example",
"password": "example"
}

Organization and owner created

Media typeapplication/json
object
data
required
object
user
required
object
id
required
string format: uuid
name
required
string
username
required
string
role
required

Role key. The built-in roles are owner, administrator, editor, contributor, and viewer. Custom role keys start with “custom.”. Decide authorization from the capabilities the server reports, not from the role key.

string
/^[a-z][a-z0-9.-]{1,63}$/
active
required
boolean
createdAt
required
string format: date-time
lastLoginAt
string format: date-time
capabilities

Effective capabilities of the signed-in user’s role.

Array<string>
csrfToken
required
string
authMethod
required
string
Allowed values: password totp passkey recovery_code demo
mfaEnrollmentRequired
required
boolean
Example
{
"data": {
"user": {
"role": "owner"
},
"authMethod": "password"
}
}

Setup was already completed

Validation failed