Docs / Reference
Dashboard API
The web dashboard exposes a REST API consumed by the Vue 3 frontend.
Example: Create a Domain
Request
curl -X POST http://localhost:6443/api/domains \
-H "Content-Type: application/json" \
-d '{
"name": "example.com",
"port": 3000,
"backendHost": "127.0.0.1",
"upstreamType": "http",
"ssl": { "enabled": true },
"performance": { "gzip": true },
"security": { "rateLimit": false }
}'Response (201)
{
"success": true,
"data": {
"name": "example.com",
"port": 3000,
"backendHost": "127.0.0.1",
"upstreamType": "http",
"ssl": { "enabled": true },
"enabled": true
}
}All Endpoints
Nginx
| Endpoint | Method | Description |
|---|---|---|
| /api/nginx/status | GET | Get nginx running status |
| /api/nginx/start | POST | Start nginx |
| /api/nginx/stop | POST | Stop nginx |
| /api/nginx/reload | POST | Graceful reload |
| /api/nginx/configs | GET | List config files |
| /api/nginx/config/:file | GETPOST | Read / write config file |
Domains
| Endpoint | Method | Description |
|---|---|---|
| /api/domains | GETPOST | List / create domains |
| /api/domains/:name | PUTDELETE | Update / delete domain |
| /api/domains/:name/toggle | PUT | Enable or disable domain |
| /api/domains/:name/reload | POST | Reload nginx for domain |
SSL
| Endpoint | Method | Description |
|---|---|---|
| /api/ssl | GET | List certificates |
| /api/ssl/create | POST | Issue new certificate (HTTP-01 or DNS-01) |
| /api/ssl/create-confirm | POST | Confirm DNS-01 challenge |
| /api/ssl/renew/:domain | POST | Renew certificate |
Settings
| Endpoint | Method | Description |
|---|---|---|
| /api/settings | GETPOST | Get / save dashboard settings |