Files
2026-07-11 12:39:02 -05:00

1.1 KiB

AuthApi document shapes

This service expects JSON request bodies for its auth endpoints and stores user documents in MongoDB.

Inbound JSON documents

  • RegisterRequest (POST /api/auth/register)
    {
      "username": "string",
      "password": "string",
      "email": "string"
    }
    
    Usernames must be 3-24 characters containing only letters, numbers, or underscores. Passwords must contain at least 8 characters, and email is required with a valid address format.
  • LoginRequest (POST /api/auth/login)
    {
      "username": "string",
      "password": "string"
    }
    
  • RefreshRequest (POST /api/auth/refresh)
    {
      "username": "string",
      "refreshToken": "string"
    }
    
  • ChangeRoleRequest (POST /api/auth/role)
    {
      "username": "string",
      "newRole": "USER | SUPER"
    }
    

Stored documents (MongoDB)

  • User
    {
      "id": "string (ObjectId)",
      "username": "string",
      "passwordHash": "string",
      "role": "USER | SUPER",
      "email": "string",
      "refreshToken": "string (optional)",
      "refreshTokenExpiry": "string (optional, ISO-8601 datetime)"
    }