Référence des endpoints

Base : https://api.ecloudserv.fr/api/v1. Tous les endpoints exigent l'en-tête Authorization: Bearer.

Compte

GET/mescope : read
Renvoie le profil lié à la clé : id, username, discordId, role, quota et RAM utilisée.

Serveurs

GET/serversscope : read
Liste tes serveurs.
GET/servers/:idscope : read
Détail d'un serveur (nom, runtime, ressources allouées, statut).
GET/servers/:id/resourcesscope : read
Utilisation live : RAM, CPU, disque, réseau et état courant.
POST/serversscope : write
Crée un serveur. Corps JSON :
{
  "name": "mon-bot",
  "runtime": "NODEJS",      // NODEJS | PYTHON | JAVA
  "ram": 512,                 // Mo (128–8192)
  "disk": 5120,               // Mo (512–51200)
  "cpu": 100,                 // % (25–400)
  "withDatabase": false
}
POST/servers/:id/powerscope : write
Envoie un signal d'alimentation. Corps : { "signal": "start" } (valeurs : start, stop, restart, kill).

Exemple complet

# Lister puis démarrer un serveur
SERVERS=$(curl -s https://api.ecloudserv.fr/api/v1/servers \
  -H "Authorization: Bearer $ECL_KEY")

curl -X POST https://api.ecloudserv.fr/api/v1/servers/SERVER_ID/power \
  -H "Authorization: Bearer $ECL_KEY" \
  -H "Content-Type: application/json" \
  -d '{"signal":"restart"}'

Codes d'erreur

CodeSignification
401Clé manquante, invalide ou révoquée.
403Scope insuffisant (write requis) ou quota dépassé.
404Ressource introuvable.
429Trop de requêtes (rate limit).