Public self-serve registration
POST /auth/register
POST
/auth/register
Requires PUBLIC_REGISTRATION_ENABLED=true. Creates a user with approvalStatus: PENDING and isActive: false.
Returns 403 with code registration_disabled when disabled. Approval via PATCH /internal/users/{id} when RBAC allows.
Request Body required
Section titled “Request Body required ”object
email
required
string format: email
password
required
string
fullName
required
string
phoneNumber
Optional; empty string omitted
string
profilePictureUrl
string
authProvider
Identity provider for this account; OAuth flows (e.g. google) will use this when implemented
string
Responses
Section titled “ Responses ”Registration received (pending approval)
object
success
required
boolean
data
required
data
object
email
required
string format: email
status
required
Awaits platform staff approval
string
Validation error
object
success
required
boolean
error
required
object
code
required
string
Example
validation_error message
required
string
Public registration disabled (registration_disabled)
object
success
required
boolean
error
required
object
code
required
string
Example
validation_error message
required
string
Conflict (e.g. duplicate email)
object
success
required
boolean
error
required
object
code
required
string
Example
validation_error message
required
string