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

EndpointMethodDescription
/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

EndpointMethodDescription
/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

EndpointMethodDescription
/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

EndpointMethodDescription
/api/settings
GETPOST
Get / save dashboard settings