HELPER VPS

Documentation API VPS : créer et gérer vos serveurs en REST

Une API REST qui échange du JSON en HTTPS. Avec une seule clé API dans l'en-tête Authorization, vous faites par programme tout ce que permet l'espace client : consulter les offres, créer un serveur, gérer l'alimentation, renouveler et supprimer. Chaque compte peut envoyer jusqu'à 300 requêtes par minute.

Ce que vous pouvez faire avec l'API

L'API est utile lorsque vous gérez de nombreux serveurs ou souhaitez automatiser le déploiement. Chargez les listes de plans, de régions et d'images ; lorsque vous créez un serveur, le paiement est traité et votre serveur est créé après confirmation. Les mêmes règles que sur les pages web s'appliquent, donc les serveurs créés avec l'API apparaissent également dans la liste des serveurs de votre compte.

Si c'est votre première fois, suivez pas à pas le guide de démarrage rapide de l'API, de la création de la clé jusqu'à votre premier serveur. Cette page est la référence qui rassemble tous les endpoints et tous les champs.

Adresse de base

Toutes les requêtes ajoutent leur chemin après l'adresse ci-dessous. Les corps de requête et de réponse sont tous en JSON (UTF-8).

https://helpervps.com/api/v1

Authentification

Envoyez l'en-tête Authorization: Bearer YOUR_API_KEY. Vous pouvez créer une clé depuis le menu des clés API dans votre compte après votre premier paiement ; les clés commencent par hvp_. La clé complète n'est affichée qu'une seule fois, juste après sa création, et la création d'une nouvelle clé désactive immédiatement l'ancienne.

curl https://helpervps.com/api/v1/servers \
  -H "Authorization: Bearer YOUR_API_KEY"

Limites de requêtes

Toutes les requêtes300 par minute et par compte
Création de serveur (POST /servers)10 toutes les 10 minutes par compte
Nombre de serveurs par compteJusqu'à 10

Code serveur

Les serveurs ne sont pas identifiés par un numéro mais par un code serveur du type S-7K2M-9QX4-HB3T. Il suffit de reprendre la valeur id de la liste des serveurs ou de la réponse de création dans le chemin. Les majuscules et minuscules ne sont pas distinguées.

GET /catalog

Renvoie en une fois les offres en vente (plans), les régions (locations), les images (images) et les options (addons). Tous les codes à fournir lors de la création d'un serveur viennent d'ici. monthly est le tarif mensuel en dollars américains, et une option non proposée vaut null. Le monthly_per_gb du disque supplémentaire est affiché avec trois décimales.

Exemple de requête

curl https://helpervps.com/api/v1/catalog \
  -H "Authorization: Bearer YOUR_API_KEY"

Exemple de réponse

{
  "plans": [
    { "code": "s2", "type": "basic", "vcpu": 1, "ram_mb": 2048, "disk_gb": 50, "transfer_tb": 2, "monthly": "2.48" }
  ],
  "locations": ["frankfurt", "singapore", "seoul"],
  "images": ["ubuntu-24-04", "debian-13", "almalinux-10", "app-docker"],
  "addons": {
    "backups": { "percent_of_plan": 5.6 },
    "extra_disk": { "sizes_gb": [50, 100, 250, 500, 1000], "monthly_per_gb": "0.028" },
    "ddos_protection": { "monthly": "1.68" }
  }
}

GET /servers

Renvoie la liste de vos serveurs, du plus récent au plus ancien. Les serveurs supprimés ou dont la création a échoué n'y figurent pas.

Exemple de requête

curl https://helpervps.com/api/v1/servers \
  -H "Authorization: Bearer YOUR_API_KEY"

Exemple de réponse

[
  {
    "id": "S-7K2M-9QX4-HB3T",
    "label": "web-1",
    "state": "running",
    "ipv4": "192.0.2.15",
    "ipv6": "2001:db8::15",
    "monthly": "2.48",
    "backups": false,
    "extra_disk_gb": 0,
    "ddos_protection": false,
    "paid_until": "2026-11-18T09:00:00.000Z"
  }
]

POST /servers

Crée un serveur et traite le paiement. Utilisez les codes du catalogue pour le plan, l'emplacement et l'image tels quels. label accepte jusqu'à 40 lettres latines, chiffres, points et traits d'union ; les autres caractères sont remplacés par des traits d'union. backups, extra_disk_gb et ddos_protection sont facultatifs. En cas de succès, vous obtenez 201 avec les détails du serveur, et root_password est inclus une seule fois dans cette réponse (vous pouvez également le voir sur la page du serveur dans votre compte pendant 7 jours).

Exemple de requête

curl -X POST https://helpervps.com/api/v1/servers \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"plan":"s2","location":"frankfurt","image":"ubuntu-24-04","label":"web-1","backups":true,"extra_disk_gb":0,"ddos_protection":false}'

Exemple de réponse

{
  "id": "S-7K2M-9QX4-HB3T",
  "label": "web-1",
  "state": "creating",
  "ipv4": null,
  "ipv6": null,
  "monthly": "2.61",
  "backups": true,
  "extra_disk_gb": 0,
  "ddos_protection": false,
  "paid_until": "2026-11-18T09:00:00.000Z",
  "root_password": "..."
}

GET /servers/{id}

Renvoie l'état, les adresses, le tarif mensuel et la date d'échéance d'un serveur. Un nouveau serveur démarre à creating, passe à running une fois prêt, puis ipv4 et ipv6 sont renseignés. Une vérification toutes les quelques secondes suffit largement.

Exemple de requête

curl https://helpervps.com/api/v1/servers/S-7K2M-9QX4-HB3T \
  -H "Authorization: Bearer YOUR_API_KEY"

Exemple de réponse

{
  "id": "S-7K2M-9QX4-HB3T",
  "label": "web-1",
  "state": "running",
  "ipv4": "192.0.2.15",
  "ipv6": "2001:db8::15",
  "monthly": "2.61",
  "backups": true,
  "extra_disk_gb": 0,
  "ddos_protection": false,
  "paid_until": "2026-11-18T09:00:00.000Z"
}

POST /servers/{id}/start (stop, reboot)

start allume un serveur arrêté (stopped), stop et reboot éteignent ou redémarrent un serveur en marche (running). La réponse contient les informations mises à jour du serveur.

Exemple de requête

curl -X POST https://helpervps.com/api/v1/servers/S-7K2M-9QX4-HB3T/reboot \
  -H "Authorization: Bearer YOUR_API_KEY"

Exemple de réponse

{
  "id": "S-7K2M-9QX4-HB3T",
  "label": "web-1",
  "state": "rebooting",
  ...
}

POST /servers/{id}/renew

Payez maintenant pour prolonger la période de validité. Un serveur suspendu après expiration redémarre également avec cette demande.

Exemple de requête

curl -X POST https://helpervps.com/api/v1/servers/S-7K2M-9QX4-HB3T/renew \
  -H "Authorization: Bearer YOUR_API_KEY"

Exemple de réponse

{
  "id": "S-7K2M-9QX4-HB3T",
  "state": "running",
  "paid_until": "2026-12-18T09:00:00.000Z",
  ...
}

DELETE /servers/{id}

Supprime le serveur et ses disques. Aucun montant n'est prélevé à partir de la prochaine échéance, et la période restante du mois déjà payé n'est pas remboursée.

Exemple de requête

curl -X DELETE https://helpervps.com/api/v1/servers/S-7K2M-9QX4-HB3T \
  -H "Authorization: Bearer YOUR_API_KEY"

Exemple de réponse

{
  "id": "S-7K2M-9QX4-HB3T",
  "state": "deleted"
}

Champs de la réponse serveur

idCode serveur (S-XXXX-XXXX-XXXX). Utilisez cette valeur dans tous les chemins.
labelNom du serveur
stateL'une des valeurs creating, running, stopped, rebooting, installing, suspended, check
ipv4, ipv6Adresse du serveur. null tant qu'il n'est pas prêt
monthlyTarif mensuel options comprises (dollars américains, chaîne)
backups, extra_disk_gb, ddos_protectionOptions choisies
paid_untilHeure de fin de validité (UTC, ISO 8601). Le serveur peut être suspendu à ce moment-là.
root_passwordPrésent une seule fois, dans la réponse de création.

Valeurs d'état

creatingLe serveur est en cours de création.
runningEn marche. stop et reboot sont disponibles.
stoppedArrêté. Allumez-le avec start.
rebootingRedémarrage en cours.
installingRéinstallation en cours.
suspendedSuspendu après la fin de la période de validité. Réactivez-le avec renew.
checkNous vérifions le résultat de la configuration du serveur. Le serveur sera finalisé ou le paiement sera remboursé.

Erreurs

En cas d'erreur, vous recevez un code d'état HTTP accompagné d'un JSON de la forme {"error": "code"}. Il suffit de traiter chaque cas selon la valeur du code.

401 unauthorizedLa clé API est absente ou incorrecte.
403 not_allowedL'API s'ouvre après votre premier paiement.
400 bad_requestUn champ manque ou sa valeur est incorrecte. Utilisez les codes exactement comme dans le catalogue.
402 not_enough_balanceComplétez le paiement et renvoyez la demande.
409 limitVous avez atteint le nombre de serveurs autorisé pour ce compte.
409 not_createdLe serveur n'a pas pu être créé. Le paiement est remboursé.
202 checkingNous vérifions le résultat de la configuration du serveur. Ne renvoyez pas la même demande ; consultez plutôt votre liste de serveurs. Nous finaliserons le serveur ou rembourserons le paiement.
404 not_foundCe serveur ou ce chemin n'existe pas dans votre compte.
409 wrong_stateCette action n'est pas possible dans l'état actuel du serveur.
429 rate_limitedLimite de requêtes atteinte. Patientez un instant avant de réessayer.

À lire aussi

Les paiements sont effectués via le paiement sécurisé PayGate. Vous pouvez réinstaller et créer un nouveau mot de passe root sur la page du serveur dans votre compte ; les étapes sont dans le guide de réinstallation.

Les possibilités de l'API et des exemples d'automatisation sont sur la page API VPS, et les tarifs mensuels par offre sur la page des tarifs.