Codes d'erreur

API Revendeur

Toutes les erreurs suivent la RFC 7807. Le corps est en application/problem+json avec les champs type, title, status, detail, request_id et éventuellement reason ou errors[].

{
  "type": "https://www.kernelhost.com/en/reseller-api/errors/payment_required",
  "title": "Payment required",
  "status": 402,
  "detail": "The order could not be paid.",
  "request_id": "01HX7Z3K8Q...",
  "reason": "insufficient_credit_and_no_card"
}
HTTPtypeSignification
400validation_failedÉchec de la validation des entrées. Voir errors[] pour le détail par champ.
401auth_failedÉchec d'authentification. reason indique pourquoi : missing_headers, bad_key, bad_timestamp, timestamp_out_of_window, bad_nonce, bad_signature, signature_mismatch, replay_detected, unknown_or_locked_key, ip_not_allowed.
402payment_requiredPaiement requis. reason : voir ci-dessous.
403forbidden_scopePermission manquante. reason : missing_scope.
404not_foundLa ressource n'existe pas ou n'est pas visible pour cette clé (empêche l'énumération entre locataires).
409idempotency_conflictIdempotency-Key déjà utilisée avec un corps différent.
429rate_limitedLimite de débit dépassée. Respectez l'en-tête Retry-After.
500internal_errorErreur interne du serveur. Indiquez request_id pour la corrélation avec le journal d'audit lorsque vous contactez le support.

Motifs de paiement requis (HTTP 402)

Lorsque la commande ne peut pas être payée, l'API renvoie HTTP 402 avec un motif lisible par machine dans le corps JSON.

  • insufficient_credit_and_no_card (Crédit insuffisant et aucune carte enregistrée. Solution : rechargez le crédit ou ajoutez une carte dans le portail client.)
  • card_declined (Carte refusée par la banque ou la passerelle. Solution : essayez une autre carte ou contactez votre banque.)
  • card_expired (Carte expirée. Solution : ajoutez une nouvelle carte dans le portail client.)
  • client_not_found (Identifiant de compte introuvable (ne devrait pratiquement jamais se produire, contactez le support).)