Reten Docs
Users

Register User

Create a new user with role assignments.

POST /api/auth/register

Create a new user and assign roles. Only users with the CREATE_USER permission can register new users.

Auth: Required — CREATE_USER permission

Headers

HeaderRequiredValue
AuthorizationYesBearer <access_token>
x-tenant-idYesTenant UUID

Request Body

FieldTypeRequiredDescription
emailstringYesUser email (must be unique)
passwordstringYesUser password
firstNamestringYesFirst name
lastNamestringYesLast name
rolesstring[]YesArray of role names to assign

Example

curl -X POST https://api.reten.ai/api/auth/register \
  -H "Authorization: Bearer <token>" \
  -H "x-tenant-id: <tenant-id>" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "newuser@example.com",
    "password": "SecurePass123!",
    "firstName": "Jane",
    "lastName": "Doe",
    "roles": ["FDE"]
  }'
import axios from 'axios';

const response = await axios.post(
  'https://api.reten.ai/api/auth/register',
  {
    email: 'newuser@example.com',
    password: 'SecurePass123!',
    firstName: 'Jane',
    lastName: 'Doe',
    roles: ['FDE'],
  },
  {
    headers: {
      Authorization: 'Bearer <token>',
      'x-tenant-id': '<tenant-id>',
    },
  }
);

Response 201 Created

{
  "id": "770e8400-e29b-41d4-a716-446655440000",
  "email": "newuser@example.com",
  "firstName": "Jane",
  "lastName": "Doe"
}

Error Responses

StatusDescription
400Validation error
403Insufficient permissions or trying to assign a higher role
409Email already exists