Tüm hatalar RFC 7807 standardını izler. Yanıt gövdesi application/problem+json formatındadır ve type, title, status, detail, request_id ile gerektiğinde reason veya errors[] alanlarını içerir.
{
"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"
}
| HTTP | type | Anlamı |
|---|---|---|
| 400 | validation_failed | Girdi doğrulaması başarısız. Alan bazında ayrıntı için errors[] bakın. |
| 401 | auth_failed | Kimlik doğrulaması başarısız. reason nedeni belirtir: 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. |
| 402 | payment_required | Ödeme gerekli. reason aşağıda. |
| 403 | forbidden_scope | Yetki eksik. reason: missing_scope. |
| 404 | not_found | Kaynak mevcut değil veya bu anahtar için görünür değil (kiracı sayımını engeller). |
| 409 | idempotency_conflict | Idempotency-Key farklı bir gövdeyle daha önce kullanılmış. |
| 429 | rate_limited | Hız sınırı aşıldı. Retry-After başlığını dikkate alın. |
| 500 | internal_error | Dahili sunucu hatası. Destek ile iletişime geçerken denetim kaydıyla eşleştirme için request_id değerini iletin. |
Ödeme gerekli sebepleri (HTTP 402)
Sipariş ödenemediğinde API, JSON gövdesinde makine tarafından okunabilir bir reason ile HTTP 402 döner.
insufficient_credit_and_no_card(Bakiye yetersiz ve kayıtlı kart yok. Çözüm: bakiyeyi yükleyin veya müşteri panelinden kart ekleyin.)card_declined(Kart banka veya ödeme ağ geçidi tarafından reddedildi. Çözüm: başka bir kart kullanın veya bankanızla iletişime geçin.)card_expired(Kart süresi dolmuş. Çözüm: müşteri panelinden yeni bir kart ekleyin.)client_not_found(Hesap kimliği bulunamadı (pratikte neredeyse hiç gerçekleşmemelidir, destek ile iletişime geçin).)

