Hatalar RFC 7807 application/problem+json biçimini kullanır; böylece tutarlı ve makine tarafından okunabilirdir:
HTTP/1.1 400 Bad Request
Content-Type: application/problem+json
{
"type": "https://docs.grem.capital/api/errors/validation",
"title": "validation",
"status": 400,
"detail": "totalArea (m2) is required",
"requestId": "req_…"
}
requestId değerini her zaman kaydedin - bir çağrının izini sürmek için destek taleplerinde bu değeri belirtin.
Durum kodları
| Durum | Anlamı | Ne yapmalı |
|---|---|---|
400 | Doğrulama hatası | Gövdeyi ya da parametreleri detail uyarınca düzeltin. |
401 | Geçersiz ya da eksik anahtar | Authorization başlığını kontrol edin. |
402 | Yetersiz bakiye ya da kota | Bakiyeyi doldurun ya da tarifeyi yükseltin. |
403 | Kapsam eksik | Anahtar bu araç için yetkili değil. |
404 | Bulunamadı | Yol yanlış ya da kaynak yok. |
409 | Idempotence çakışması | Bu Idempotency-Key ile bir istek hâlâ sürüyor. |
422 | İş kuralı | İstek geçerli ama bu hâliyle işlenemiyor. |
429 | Hız sınırı | Bekleyin ve yeniden deneyin - bkz. Hız sınırları. |
5xx | Servis hatası | Geçici; artan beklemeyle yeniden deneyin. |
Reddedilen istek (4xx) ücretlendirilmez - çağrı başına ücret yalnızca başarıda alınır.
Hatalarla başa çıkma
- Okunabilir
detailmetnine değil, sayısal HTTPstatusdeğerine göre dallanın. 429ve5xxhatalarını üstel beklemeyle yineleyin;4xxhatalarını yinelemeyin (süren istek bitince yinelenebilecek409dışında).- Sağlayıcı ayrıntıları hatalarda hiç sızmaz - arıza genel bir
provider_errorolarak görünür.