Hatalar¶
Kütüphanenin fırlattığı tüm istisnalar.
Hiyerarşi:
KuveytTurkError
├── ConfigurationError eksik/hatalı yapılandırma
├── SignatureError private key okunamadı / imza üretilemedi
├── TransportError ağ hatası, zaman aşımı
├── AuthenticationError token uç noktası hata döndü
├── AuthorizationRequiredError kullanıcı girişi (authorization code) gerekiyor
└── APIError API hata yanıtı döndü
├── BadRequestError 400 (imza hataları da 400 döner)
├── UnauthorizedError 401
├── ForbiddenError 403
├── NotFoundError 404
├── RateLimitError 429
├── ServerError 5xx
└── BusinessError HTTP 2xx ama ``success: false``
KuveytTurkError
¶
Kütüphanedeki tüm istisnaların tabanı.
ConfigurationError
¶
Eksik ya da hatalı yapılandırma (client_id, private key, redirect_uri...).
SignatureError
¶
Private key yüklenemedi ya da imza üretilemedi.
TransportError
¶
İstek sunucuya ulaşamadı (bağlantı hatası, zaman aşımı...).
AuthenticationError
¶
AuthenticationError(
message: str,
*,
error: str | None = None,
error_description: str | None = None,
status_code: int | None = None,
)
Identity sunucusu token vermeyi reddetti.
Attributes:
| Name | Type | Description |
|---|---|---|
error |
OAuth2 hata kodu (ör. |
|
error_description |
Sunucunun verdiği açıklama (varsa). |
|
status_code |
HTTP durum kodu. |
AuthorizationRequiredError
¶
Uç nokta müşteri girişi (authorization code) istiyor ama geçerli kullanıcı token'ı yok.
APIError
¶
APIError(
message: str,
*,
status_code: int,
method: str,
url: str,
body: Any = None,
results: list[ResultItem] | None = None,
)
API bir hata yanıtı döndürdü.
Attributes:
| Name | Type | Description |
|---|---|---|
status_code |
HTTP durum kodu. |
|
error_code |
str | None
|
Yanıttaki ilk |
error_message |
str | None
|
Yanıttaki ilk |
results |
list[ResultItem]
|
Yanıtın |
body |
Çözümlenmiş yanıt gövdesi (JSON değilse ham metin). |
|
method |
/ url
|
Hataya yol açan istek. |
BadRequestError
¶
BadRequestError(
message: str,
*,
status_code: int,
method: str,
url: str,
body: Any = None,
results: list[ResultItem] | None = None,
)
HTTP 400 — istek parametreleri hatalı ya da imza doğrulanamadı.
Gateway imza hatalarını da 400 ile bildirir ("Client signature validation error");
bu durumda private key'in karşılığı olan public key'in portaldaki uygulamada kayıtlı
olduğunu kontrol edin.
UnauthorizedError
¶
UnauthorizedError(
message: str,
*,
status_code: int,
method: str,
url: str,
body: Any = None,
results: list[ResultItem] | None = None,
)
HTTP 401 — token geçersiz/süresi dolmuş ya da uç nokta başka bir akış istiyor.
Müşteri girişi isteyen bir uç nokta client credentials token'ıyla çağrılırsa gateway
"Invalid grant type. Authorization Code is required." mesajıyla 401 döner.
ForbiddenError
¶
ForbiddenError(
message: str,
*,
status_code: int,
method: str,
url: str,
body: Any = None,
results: list[ResultItem] | None = None,
)
HTTP 403 — token'ın kapsamı uç noktaya uymuyor ("Invalid Scope") ya da yetki yok.
NotFoundError
¶
NotFoundError(
message: str,
*,
status_code: int,
method: str,
url: str,
body: Any = None,
results: list[ResultItem] | None = None,
)
HTTP 404 — uç nokta ("Path not found") ya da kaynak bulunamadı.
RateLimitError
¶
RateLimitError(
message: str,
*,
status_code: int,
method: str,
url: str,
body: Any = None,
results: list[ResultItem] | None = None,
)
HTTP 429 — istek limiti aşıldı.
ServerError
¶
ServerError(
message: str,
*,
status_code: int,
method: str,
url: str,
body: Any = None,
results: list[ResultItem] | None = None,
)
HTTP 5xx — Kuveyt Türk tarafında hata.
BusinessError
¶
BusinessError(
message: str,
*,
status_code: int,
method: str,
url: str,
body: Any = None,
results: list[ResultItem] | None = None,
)
HTTP başarılı ama yanıt zarfında success: false döndü.