REST API
Base URL https://api.cloud.enzonic.com. All endpoints require a bearer token. JSON in, JSON out.
An interactive OpenAPI reference (Swagger UI) is served by the backend at /docs, and the machine-readable spec at /openapi.json.
Conventions
- Authentication: Authorization: Bearer <token> on every request.
- Request bodies are JSON; set Content-Type: application/json.
- Errors use a consistent envelope — see /docs/errors.
- Rate limit: 240 requests/minute per client.
Endpoints
| Method | Path | Description |
|---|---|---|
GET | /v1/health | Liveness + instance count |
GET | /v1/account | Current account & balance |
GET | /v1/account/transactions | Credit ledger |
GET | /v1/account/budget | Budget status |
PUT | /v1/account/budget | Update budget cap |
GET | /v1/account/logs | Activity log |
GET | /v1/keys | List your API keys |
POST | /v1/keys | Create an API key (secret once) |
DELETE | /v1/keys/:id | Revoke an API key |
GET | /v1/regions | Region availability |
GET | /v1/instances | Deployable instances |
GET | /v1/eggs | List eggs across instances |
GET | /v1/eggs/:instanceId/:eggId | Egg detail + variables |
GET | /v1/servers | List your servers |
POST | /v1/servers | Deploy a server |
GET | /v1/servers/:id | Get a server |
PATCH | /v1/servers/:id | Resize a server |
DELETE | /v1/servers/:id | Delete a server |
POST | /v1/servers/:id/power | Power signal |
GET | /v1/servers/:id/resources | Live usage |
POST | /v1/servers/:id/command | Send console command |
GET | /v1/servers/:id/console | Websocket credentials |
GET | /v1/servers/:id/files | List files |
GET | /v1/servers/:id/files/contents | Read a file |
POST | /v1/servers/:id/files/write | Write a file |
GET | /v1/servers/:id/files/download | Signed download URL |
POST | /v1/servers/:id/files/delete | Delete files |
GET | /v1/billing/config | Billing config |
POST | /v1/billing/checkout | Start top-up checkout |
GET | /v1/invoices | List invoices |
GET | /v1/invoices/:id | One invoice |
GET | /v1/admin/instances | [admin] List instances |
POST | /v1/admin/instances | [admin] Add instance |
PATCH | /v1/admin/instances/:id | [admin] Update instance |
DELETE | /v1/admin/instances/:id | [admin] Delete instance |
POST | /v1/admin/instances/:id/test | [admin] Test connectivity |
GET | /v1/admin/settings | [admin] Get settings |
PUT | /v1/admin/settings | [admin] Update settings |
GET | /v1/admin/users | [admin] List accounts |
POST | /v1/admin/users/:id/credits | [admin] Grant/deduct credits |
GET | /v1/admin/servers | [admin] List all servers |
GET | /v1/admin/logs | [admin] Platform audit log |
Example
bashcurl -X POST https://api.cloud.enzonic.com/v1/servers \ -H "Authorization: Bearer $CLOUD_API_KEY" \ -H "Content-Type: application/json" \ -d '{"name":"smp","eggId":3,"region":"USA","ramMb":2048,"cpuPercent":200,"diskMb":10240}'