REST API
URL base: https://api.cloud.enzonic.com. Todos los endpoints requieren un token bearer. JSON de entrada, JSON de salida.
Una referencia OpenAPI interactiva (Swagger UI) está disponible en el backend en /docs, y la especificación en /openapi.json.
Convenciones
- Autenticación: Authorization: Bearer <token> en cada petición.
- Los cuerpos de petición son JSON; usa Content-Type: application/json.
- Los errores usan un sobre consistente — ver /docs/errors.
- Límite de tasa: 240 peticiones/minuto por cliente.
Endpoints
| Método | Ruta | Descripción |
|---|---|---|
GET | /v1/health | Liveness + recuento de instancias |
GET | /v1/account | Cuenta actual y saldo |
GET | /v1/account/transactions | Libro mayor de crédito |
GET | /v1/account/budget | Estado del presupuesto |
PUT | /v1/account/budget | Actualizar presupuesto |
GET | /v1/account/logs | Registro de actividad |
GET | /v1/keys | Lista tus claves API |
POST | /v1/keys | Crear una clave API (secreto único) |
DELETE | /v1/keys/:id | Revocar una clave API |
GET | /v1/regions | Disponibilidad de regiones |
GET | /v1/instances | Instancias desplegables |
GET | /v1/eggs | Listar eggs de todas las instancias |
GET | /v1/eggs/:instanceId/:eggId | Detalle del egg + variables |
GET | /v1/servers | Lista tus servidores |
POST | /v1/servers | Desplegar un servidor |
GET | /v1/servers/:id | Obtener un servidor |
PATCH | /v1/servers/:id | Redimensionar un servidor |
DELETE | /v1/servers/:id | Eliminar un servidor |
POST | /v1/servers/:id/power | Señal de energía |
GET | /v1/servers/:id/resources | Uso en vivo |
POST | /v1/servers/:id/command | Enviar comando de consola |
GET | /v1/servers/:id/console | Credenciales WebSocket |
GET | /v1/servers/:id/files | Listar archivos |
GET | /v1/servers/:id/files/contents | Leer un archivo |
POST | /v1/servers/:id/files/write | Escribir un archivo |
GET | /v1/servers/:id/files/download | URL de descarga firmada |
POST | /v1/servers/:id/files/delete | Eliminar archivos |
GET | /v1/billing/config | Config de facturación |
POST | /v1/billing/checkout | Iniciar checkout de recarga |
GET | /v1/invoices | Lista tus facturas |
GET | /v1/invoices/:id | Una factura |
GET | /v1/admin/instances | [admin] Listar instancias |
POST | /v1/admin/instances | [admin] Añadir instancia |
PATCH | /v1/admin/instances/:id | [admin] Actualizar instancia |
DELETE | /v1/admin/instances/:id | [admin] Eliminar instancia |
POST | /v1/admin/instances/:id/test | [admin] Probar conectividad |
GET | /v1/admin/settings | [admin] Obtener configuración |
PUT | /v1/admin/settings | [admin] Actualizar configuración |
GET | /v1/admin/users | [admin] Listar cuentas |
POST | /v1/admin/users/:id/credits | [admin] Conceder/deducir créditos |
GET | /v1/admin/servers | [admin] Listar todos los servidores |
GET | /v1/admin/logs | [admin] Registro de auditoría global |
Ejemplo
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}'