Documents alert notifications webhooks, Marketplace template installations, SSH terminal websockets, and user account management.
Manages Telegram bots and Discord webhooks configured to dispatch alerts when server CPU/RAM thresholds are breached or deployed services crash.
- Endpoint:
GET /api/v1/notifications/channels - Access Level:
super_adminonly
[
{
"id": "channel-1234abcd",
"channel_type": "discord",
"webhook_url": "https://discord.com/api/webhooks/...",
"bot_token": null,
"chat_id": null,
"is_active": true,
"alert_rules": "{\"cpu_threshold\": 95, \"ram_threshold\": 90}"
}
]- Endpoint:
POST /api/v1/notifications/channels - Request Payload (Discord example):
{
"channel_type": "discord",
"webhook_url": "https://discord.com/api/webhooks/...",
"is_active": true,
"alert_rules": "{\"cpu_threshold\": 95}"
}- Endpoint:
PUT /api/v1/notifications/channels/{channel_id}
- Endpoint:
DELETE /api/v1/notifications/channels/{channel_id}
Offers 1-click installer configurations for popular utilities (PostgreSQL, Redis, pgAdmin, Vaultwarden, Caddy, n8n, portainer) via Docker Compose templates.
- Endpoint:
GET /api/v1/marketplace/templates
[
{
"id": "redis",
"name": "Redis Cache Server",
"description": "High performance in-memory key-value data store.",
"version": "7.0-alpine",
"image": "redis:7.0-alpine",
"ports": {"6379": "6379"},
"volumes": {"redis_data": "/data"}
}
]Triggers an automated docker-compose generator, binds volumes, and starts the container block.
- Endpoint:
POST /api/v1/marketplace/templates/{template_id}/install - Request Payload:
{"port": 6379} - Response Schema:
{"status": "success", "message": "Redis installed and running on port 6379."}
Establishes a low-latency bidirectional pipeline to the host shell terminal session using WebSockets.
- Endpoint:
WS /api/v1/system/terminal/ws - Query Parameter:
token(string, required JWT access token) - Access Level:
super_adminonly
- Pty Resize Event (Client ➡️ Server):
Client maps terminal window resizes by sending JSON strings:
{"resize": {"cols": 80, "rows": 24}} - Standard Input (Client ➡️ Server):
Client maps user keyboard strokes by sending raw text/binary strings:
"ls -la\r" - Standard Output (Server ➡️ Client): Server streams shell terminal responses back to the client as raw text strings.
Enables administrators to manage developer and viewer credentials.
- Endpoint:
GET /api/v1/users - Access Level:
super_adminonly
- Endpoint:
POST /api/v1/users - Request Payload:
{
"username": "developer_bob",
"password": "securepassword123",
"role": "developer"
}- Endpoint:
PUT /api/v1/users/{user_id}
- Endpoint:
DELETE /api/v1/users/{user_id}