## 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 ```http 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`) | ```bash 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) :** ```json { "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) :** ```json { "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 ```http POST /api/v1/reseller/clients/{client_id}/hosting/{cpanel_username}/suspend ``` ## Réactiver un hébergement ```http POST /api/v1/reseller/clients/{client_id}/hosting/{cpanel_username}/unsuspend ``` ## Supprimer un hébergement ```http 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`.