Types de tokens
L’API Revendeurs utilise deux types de tokens Sanctum, différenciés par leur préfixe :
| Préfixe | Mode | Comportement |
|---|
kh_live_ | Production | Opérations réelles — wallet live débité, ressources créées |
kh_test_ | Sandbox | Simulations — aucune ressource réelle créée, wallet sandbox débité |
Ne jamais exposer vos tokens dans du code frontend ou un dépôt Git. Régénérez immédiatement un token compromis depuis votre espace revendeur.
Utilisation
Passez le token dans l’en-tête Authorization :
Authorization: Bearer kh_live_1|xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
curl -X GET "https://kennhosting.com/api/v1/reseller/catalog" \
-H "Authorization: Bearer kh_live_YOUR_TOKEN" \
-H "Accept: application/json"
Création de tokens
Les tokens se créent depuis votre espace client → Développeur (/client/developer). Vous sélectionnez les scopes nécessaires lors de la création.
Scopes disponibles
| Scope | Accès |
|---|
reseller:catalog | Lire le catalogue KennHosting |
reseller:plans | CRUD plans personnalisés |
reseller:clients | CRUD clients revendeur |
reseller:hosting | Provision et gestion hébergements cPanel |
reseller:domains | Enregistrement et gestion domaines |
reseller:vps | Provision et gestion VPS |
reseller:email | Provision et gestion Email Pro |
reseller:wallet | Consulter wallet et transactions, recharger |
reseller:webhooks | Configurer les webhooks |
support:write | Ouvrir et répondre aux tickets B2B |
Créez des tokens avec le minimum de scopes nécessaires pour votre intégration. Un token de lecture seule ne peut pas débiter votre wallet.
Réponses d’erreur d’authentification
// Token absent ou invalide → 401
{
"success": false,
"error": {
"code": "unauthenticated",
"message": "Unauthenticated."
}
}
// Scope manquant → 403
{
"success": false,
"error": {
"code": "forbidden",
"message": "Missing scope: reseller:clients"
}
}
Limites de débit
60 requêtes par minute par token. En cas de dépassement : 429 Too Many Requests avec l’en-tête Retry-After.