Autenticación
Cada petición lleva un token bearer en la cabecera Authorization. Los tokens tienen dos tipos.
Claves API (recomendado)
Crea una clave API en Panel → Claves API; el secreto se devuelve una sola vez. Envíalo como token bearer:
bashcurl https://api.cloud.enzonic.com/v1/servers \ -H "Authorization: Bearer $CLOUD_API_KEY"
Las claves tienen alcance a tu cuenta. Revocar una detiene inmediatamente cualquier cliente que la use. Las claves pueden caducar — pasa expiresInDays al crearlas.
Tokens de sesión (el panel web)
El panel web usa tokens de sesión internamente. No los manejarás directamente desde tu código.
Gestionar claves vía API
ts// list const { keys } = await cloud.keys.list(); // create (returns the secret once) const { secret } = await cloud.keys.create("ci-pipeline", { expiresInDays: 90 }); // revoke await cloud.keys.revoke(keys[0].id);
Aislamiento de inquilinos
Tus credenciales solo acceden a tus propios servidores. Un servidor de otra cuenta es indistinguible de uno que no existe — ambos devuelven 404 (nunca 403).
- Siempre referencias un servidor por su ID de Cloud API.
- Los despliegues siempre se atribuyen a la cuenta autenticada.
- Solo se aceptan las variables editables del egg y sus imágenes docker configuradas.
Notas de seguridad
- Trata los secretos como contraseñas. Guárdalos en variables de entorno.
- Usa una clave por app o entorno para poder revocar con precisión.
- Todo el tráfico debe ir sobre HTTPS.
Credenciales faltantes o inválidas devuelven 401 unauthorized. Consulta Errores.