REST API Reference
All API endpoints are served from the backend at port 8090 by default. Unless noted otherwise, every endpoint requires a valid JWT access token sent as a Bearer header.
Authorization: Bearer <access_token>Authentication
| Method | Path | Description | Auth |
|---|---|---|---|
POST | /api/auth/login | Authenticate and receive JWT tokens | No |
POST | /api/auth/refresh | Refresh an expired access token | No (refresh token) |
POST | /api/auth/logout | Invalidate the current token pair | Yes |
GET | /api/auth/user | Get the current user's profile | Yes |
POST | /api/auth/change-password | Change the authenticated user's password | Yes |
Setup
These endpoints are only available before initial setup is complete.
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/setup/status | Check whether setup has been completed | No |
POST | /api/setup/initialize | Run the setup wizard (create admin, configure DB) | No |
GET | /api/setup/environments | List environments configured during setup | No |
GET | /api/setup/config | Retrieve initial configuration | No |
Services & Environments
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/services | List all services across all environments | Yes |
GET | /api/services/{env} | List services in a specific environment | Yes |
GET | /api/services/{env}/{name} | Get details for a specific service | Yes |
GET | /api/environments | List all configured environments | Yes |
POST | /api/refresh | Force a refresh of service discovery | Yes |
GET | /api/health | Backend health check | No |
Deployments
TIP
The deploy-stream endpoint uses Server-Sent Events (SSE) to stream live deployment logs back to the client.
| Method | Path | Description | Auth | Role |
|---|---|---|---|---|
POST | /api/deployment/deploy-stream | Deploy a service with live SSE log streaming | Yes | ADMIN, OPERATOR |
POST | /api/deployment/deploy | Deploy a service (non-streaming) | Yes | ADMIN, OPERATOR |
GET | /api/deployment/env-vars/{env}/{service} | Get environment variables for a service | Yes | ADMIN, OPERATOR |
PUT | /api/deployment/env-vars/{env}/{service} | Update environment variables | Yes | ADMIN, OPERATOR |
DELETE | /api/deployment/env-vars/{env}/{service}/{key} | Delete an environment variable | Yes | ADMIN, OPERATOR |
POST | /api/deployment/migrate-env | Migrate a service between environments | Yes | ADMIN |
Container Actions
| Method | Path | Description | Auth | Role |
|---|---|---|---|---|
POST | /api/containers/{env}/{name}/start | Start a stopped container | Yes | ADMIN, OPERATOR |
POST | /api/containers/{env}/{name}/stop | Stop a running container | Yes | ADMIN, OPERATOR |
POST | /api/containers/{env}/{name}/restart | Restart a container | Yes | ADMIN, OPERATOR |
POST | /api/containers/{env}/{name}/pause | Pause a running container | Yes | ADMIN, OPERATOR |
POST | /api/containers/{env}/{name}/unpause | Unpause a paused container | Yes | ADMIN, OPERATOR |
Monitoring
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/monitoring/stats/{env}/{name} | Get live container stats (CPU, memory, network) | Yes |
GET | /api/monitoring/metrics/{env}/{name} | Get historical metrics for a container | Yes |
Docker Registry
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/registry/repositories | List all repositories in the registry | Yes |
GET | /api/registry/repositories/{name}/tags | List tags for a repository | Yes |
DELETE | /api/registry/repositories/{name}/tags/{tag} | Delete a tag | Yes (ADMIN) |
Eureka
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/eureka/services | List all registered Eureka services | Yes |
GET | /api/eureka/services/{appName} | Get instances of a specific service | Yes |
Redis
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/redis/keys | List Redis keys (with optional pattern) | Yes |
GET | /api/redis/keys/{key} | Get the value of a key | Yes |
PUT | /api/redis/keys/{key} | Set a key value | Yes |
DELETE | /api/redis/keys/{key} | Delete a key | Yes |
GET | /api/redis/info | Get Redis server info | Yes |
Database
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/database/connections | List configured database connections | Yes |
POST | /api/database/connections | Add a new database connection | Yes (ADMIN) |
PUT | /api/database/connections/{id} | Update a database connection | Yes (ADMIN) |
DELETE | /api/database/connections/{id} | Delete a database connection | Yes (ADMIN) |
POST | /api/database/schema/compare | Compare schemas between two connections | Yes |
POST | /api/database/migration/execute | Execute a schema migration | Yes (ADMIN) |
Notifications
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/notifications | List notifications for the current user | Yes |
PUT | /api/notifications/{id}/read | Mark a notification as read | Yes |
DELETE | /api/notifications/{id} | Delete a notification | Yes |
Alerts Pro
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/alerts | List all alert rules | Yes |
POST | /api/alerts | Create an alert rule | Yes (ADMIN) |
PUT | /api/alerts/{id} | Update an alert rule | Yes (ADMIN) |
DELETE | /api/alerts/{id} | Delete an alert rule | Yes (ADMIN) |
Webhooks Pro
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/webhooks | List all webhooks | Yes |
POST | /api/webhooks | Create a webhook | Yes (ADMIN) |
PUT | /api/webhooks/{id} | Update a webhook | Yes (ADMIN) |
DELETE | /api/webhooks/{id} | Delete a webhook | Yes (ADMIN) |
Audit Log Pro
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/audit-log | List audit log entries (paginated) | Yes (ADMIN) |
User Management
| Method | Path | Description | Auth | Role |
|---|---|---|---|---|
GET | /api/users | List all users | Yes | ADMIN |
POST | /api/users | Create a new user | Yes | ADMIN |
PUT | /api/users/{id} | Update a user | Yes | ADMIN |
DELETE | /api/users/{id} | Delete a user | Yes | ADMIN |
API Keys Pro
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/api-keys | List all API keys | Yes (ADMIN) |
POST | /api/api-keys | Create an API key | Yes (ADMIN) |
DELETE | /api/api-keys/{id} | Revoke an API key | Yes (ADMIN) |
Configuration
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/config | List all configuration settings | Yes (ADMIN) |
PUT | /api/config/{key} | Update a single setting | Yes (ADMIN) |
PUT | /api/config | Bulk update settings | Yes (ADMIN) |
License
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/license | Get current license details | Yes |
POST | /api/license/activate | Activate a license key | Yes (ADMIN) |
Enterprise Endpoints
Security Scanning Enterprise
| Method | Path | Description | Auth |
|---|---|---|---|
POST | /api/security/scan/{env}/{name} | Trigger a Trivy vulnerability scan | Yes (ADMIN) |
GET | /api/security/scan/{env}/{name} | Get scan results for a container | Yes |
GET | /api/security/scans | List all scan results | Yes |
SSO Configuration Enterprise
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/sso/config | Get SSO/OIDC configuration | Yes (ADMIN) |
PUT | /api/sso/config | Update SSO/OIDC configuration | Yes (ADMIN) |
SSO Authentication Enterprise
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/sso/auth | Initiate SSO login flow | No |
GET | /api/sso/callback | SSO callback handler | No |
Volumes Pro
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/volumes/{env} | List Docker volumes in an environment | Yes |
POST | /api/volumes/{env} | Create a volume | Yes (ADMIN) |
DELETE | /api/volumes/{env}/{name} | Delete a volume | Yes (ADMIN) |
Backup & Restore Enterprise
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/backups | List available backups | Yes (ADMIN) |
POST | /api/backups | Create a backup | Yes (ADMIN) |
POST | /api/backups/{id}/restore | Restore from a backup | Yes (ADMIN) |
DELETE | /api/backups/{id} | Delete a backup | Yes (ADMIN) |
Logs Pro
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /api/logs/{env}/{name} | Get container logs | Yes |
GET | /api/logs/{env}/{name}/stream | Stream container logs via SSE | Yes |