Vue d’ensemble
L’hébergement web utilise le quota WHM inclus dans votre forfait revendeur. Chaque compte cPanel créé consomme un slot — aucun débit wallet pour le compte lui-même.
Si vous souhaitez en même temps enregistrer le domaine via KennHosting, passez "register_domain": true — dans ce cas, le wallet est débité pour le domaine uniquement.
Scope requis : reseller:hosting
Provisionner un hébergement
POST /api/v1/reseller/clients/{client_id}/hosting
Corps de la requête :
| Champ | Type | Requis | Description |
|---|
domain | string | Oui | Domaine principal du compte cPanel |
register_domain | boolean | Non | Enregistrer le domaine via KennHosting (défaut : false) |
whm_package | string | Oui | Nom du package WHM à appliquer (voir GET /api/v1/reseller/whm/packages) |
send_welcome_email | boolean | Non | Envoyer l’email de bienvenue au client (défaut : true) |
curl -X POST "https://kennhosting.com/api/v1/reseller/clients/1/hosting" \
-H "Authorization: Bearer kh_live_YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"domain": "jean-site.cm",
"register_domain": true,
"whm_package": "starter",
"send_welcome_email": true
}'
Réponse live (201) :
{
"success": true,
"data": {
"sandbox": false,
"client_id": 1,
"domain": "jean-site.cm",
"username": "jeansi12",
"cpanel_url": "https://jean-site.cm:2083",
"domain_registered": true,
"amount_debited": 5000
}
}
Réponse sandbox (201) :
{
"success": true,
"data": {
"sandbox": true,
"client_id": 1,
"domain": "sandbox-site.cm",
"username": "sb_3cffa8e3",
"password": "sandbox_password_not_real",
"whm_package": "starter",
"domain_registered": false,
"cpanel_url": "https://sandbox-site.cm:2083",
"message": "Compte sandbox simulé — aucune ressource réelle créée."
}
}
Suspendre un hébergement
POST /api/v1/reseller/clients/{client_id}/hosting/{cpanel_username}/suspend
Réactiver un hébergement
POST /api/v1/reseller/clients/{client_id}/hosting/{cpanel_username}/unsuspend
Supprimer un hébergement
DELETE /api/v1/reseller/clients/{client_id}/hosting/{cpanel_username}
Erreurs spécifiques
| Code | Description |
|---|
whm_unavailable | WHM non configuré ou hors-ligne |
quota_exceeded | Nombre maximum de comptes atteint sur votre plan WHM |
domain_taken | Domaine déjà utilisé sur un autre compte cPanel |
En mode sandbox, aucune ressource réelle n’est créée. La réponse est une simulation avec des identifiants préfixés sb_. Le domaine n’est pas enregistré même si register_domain: true.