Authentication API
Endpoints for user authentication, registration, profile management, and security.
Prefix: /api/auth
Endpoints
Registration & Login
| Method | Path | Description | Auth Required |
|---|---|---|---|
POST | /register | Create a new account | No |
POST | /login | Authenticate and get JWT token | No |
POST | /refresh | Refresh an existing JWT token | Yes |
Profile
| Method | Path | Description | Auth Required |
|---|---|---|---|
GET | /me | Get current user profile | Yes |
PUT | /me | Update profile information | Yes |
POST | /me/avatar | Upload profile avatar | Yes |
DELETE | /me/avatar | Delete profile avatar | Yes |
Two-Factor Authentication
| Method | Path | Description | Auth Required |
|---|---|---|---|
POST | /2fa/setup | Generate TOTP setup (QR code) | Yes |
POST | /2fa/verify | Verify TOTP code and enable 2FA | Yes |
POST | /2fa/disable | Disable 2FA | Yes |
Sessions
| Method | Path | Description | Auth Required |
|---|---|---|---|
GET | /sessions | List active sessions | Yes |
DELETE | /sessions/{id} | Revoke a session | Yes |
License
| Method | Path | Description | Auth Required |
|---|---|---|---|
GET | /license | Get license status | Yes |
POST | /license/activate | Activate license key | Yes |
POST | /license/deactivate | Deactivate license | Yes |
User Management (Admin)
| Method | Path | Description | Role |
|---|---|---|---|
GET | /users | List all users | Admin |
PUT | /users/{id}/role | Change user role | Admin |
PUT | /users/{id}/status | Enable/disable user | Admin |
PUT | /users/{id}/environments | Set environment access | Admin |
Example: Login
http
POST /api/auth/login
Content-Type: application/json
{
"email": "user@example.com",
"password": "your_password"
}Response:
json
{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "bearer",
"user": {
"id": 1,
"email": "user@example.com",
"username": "user",
"role": "admin",
"is_active": true
}
}