Vue d’ensemble
Les plans personnalisés vous permettent de définir vos propres offres commerciales : vous choisissez le plan KennHosting de base, lui donnez votre nom et fixez votre prix client.
Scope requis : reseller:plans
Créer un plan
POST /api/v1/reseller/plans
Corps de la requête :
| Champ | Type | Requis | Description |
|---|
service_plan_id | integer | Oui | ID du plan KennHosting de base (depuis le catalogue) |
label | string | Oui | Nom commercial de votre offre |
client_price | decimal | Oui | Prix que vous facturez à vos clients (XAF) |
description | string | Non | Description de votre offre |
is_active | boolean | Non | Plan visible/actif (défaut : true) |
curl -X POST "https://kennhosting.com/api/v1/reseller/plans" \
-H "Authorization: Bearer kh_live_YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"service_plan_id": 1,
"label": "Pack Démarrage",
"client_price": 30000,
"description": "Idéal pour les petits projets web"
}'
Réponse (201) :
{
"success": true,
"data": {
"id": 1,
"reseller_profile_id": 1,
"service_plan_id": 1,
"label": "Pack Démarrage",
"description": "Idéal pour les petits projets web",
"client_price": "30000.00",
"is_active": true,
"created_at": "2026-06-12T...",
"service_plan": {
"id": 1,
"slug": "starter",
"name": "STARTER",
"category": "essential",
"price": "25000.00",
"reseller_price": null,
"billing_period": "annual"
}
}
}
service_plan.price est le prix normal. service_plan.reseller_price est votre prix de gros (si configuré). Votre marge = client_price - (reseller_price ?? price).
Lister vos plans
GET /api/v1/reseller/plans
{
"success": true,
"data": [
{
"id": 1,
"label": "Pack Démarrage",
"client_price": "30000.00",
"is_active": true,
"service_plan": { "slug": "starter", "name": "STARTER" }
}
]
}
Modifier un plan
PUT /api/v1/reseller/plans/{id}
{
"label": "Pack Démarrage Plus",
"client_price": 35000,
"is_active": true
}
Supprimer un plan
DELETE /api/v1/reseller/plans/{id}
{
"success": true,
"data": { "deleted": true }
}