Skip to main content
POST
/
api
/
auth
/
register
{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Doe",
  "phone_number": "+255614853618",
  "password": "SecurePassword123!",
  "password_confirm": "SecurePassword123!",
  "timezone": "Africa/Dar_es_Salaam",
  "business_name": "My Business",
  "company_name": "My Company",
  "subdomain": "mybusiness",
  "country": "Tanzania"
}
{
  "message": "User created successfully. Please check your phone for the verification code to activate your account.",
  "user": {
    "id": 1,
    "email": "user@example.com",
    "first_name": "John",
    "last_name": "Doe",
    "phone_number": "+255614853618",
    "timezone": "Africa/Dar_es_Salaam",
    "is_verified": false,
    "is_active": false,
    "phone_verified": false,
    "email_notifications": true,
    "sms_notifications": false,
    "created_at": "2025-11-27T10:30:00Z",
    "updated_at": "2025-11-27T10:30:00Z"
  },
  "email_verification_sent": false,
  "sms_verification_sent": true,
  "account_active": false,
  "requires_activation": true,
  "activation_required": true,
  "tokens": null
}
Register a new user account.
email
string
required
User email address
first_name
string
required
User’s first name
last_name
string
required
User’s last name
phone_number
string
required
Phone number in E.164 format (e.g., +255614853618)
password
string
required
User password
password_confirm
string
required
Password confirmation (must match password)
timezone
string
User timezone (default: Africa/Dar_es_Salaam)
business_name
string
Business name
company_name
string
Company name
subdomain
string
Organization subdomain
country
string
Country name

Request Example

{
  "email": "user@example.com",
  "first_name": "John",
  "last_name": "Doe",
  "phone_number": "+255614853618",
  "password": "SecurePassword123!",
  "password_confirm": "SecurePassword123!",
  "timezone": "Africa/Dar_es_Salaam",
  "business_name": "My Business",
  "company_name": "My Company",
  "subdomain": "mybusiness",
  "country": "Tanzania"
}

Success Response (201)

message
string
Success message
user
object
User object with account details
email_verification_sent
boolean
Whether email verification was sent
sms_verification_sent
boolean
Whether SMS verification was sent
account_active
boolean
Whether account is active
requires_activation
boolean
Whether activation is required
activation_required
boolean
Whether activation is required
{
  "message": "User created successfully. Please check your phone for the verification code to activate your account.",
  "user": {
    "id": 1,
    "email": "user@example.com",
    "first_name": "John",
    "last_name": "Doe",
    "phone_number": "+255614853618",
    "timezone": "Africa/Dar_es_Salaam",
    "is_verified": false,
    "is_active": false,
    "phone_verified": false,
    "email_notifications": true,
    "sms_notifications": false,
    "created_at": "2025-11-27T10:30:00Z",
    "updated_at": "2025-11-27T10:30:00Z"
  },
  "email_verification_sent": false,
  "sms_verification_sent": true,
  "account_active": false,
  "requires_activation": true,
  "activation_required": true,
  "tokens": null
}

Error Response (400)

{
  "email": ["User with this email already exists. Please log in instead."],
  "password": ["This password is too common."],
  "password_confirm": ["Passwords don't match."]
}