# Hatalar

Tüm uçlar aynı hata gövdesini döner. Eski istemciler için `hata` (kod) ve `detay` (mesaj) değişmez; yapılandırılmış bilgi `hata_ayrinti`'dadır. Mesajlar Türkçedir.

```json
{
  "hata": "kaynak_erisilemiyor",
  "detay": "Ticaret Sicili Gazetesi şu an yanıt vermiyor; kısa süre sonra yeniden deneyin.",
  "hata_ayrinti": {"kod": "kaynak_erisilemiyor", "mesaj": "…", "taraf": "kaynak", "kaynak": "ttsg",
                   "tekrar_denenebilir": true, "tekrar_sn": 300}
}
```

:::sema HataAyrinti

## `taraf`: hata kimde

| `taraf` | Anlamı | Ne yapmalı |
|---|---|---|
| `istemci` | İstek, anahtar ya da paket | İsteği düzeltin; yeniden denemek işe yaramaz (429 hariç). |
| `ulawk` | Bizim taraf | `tekrar_sn` sonra yeniden deneyin. |
| `kaynak` | Resmî kaynak şu an erişilemiyor | `tekrar_sn` sonra yeniden deneyin; durum için /durum/. |

## Kodlar

| HTTP | `hata` | Ne zaman |
|---|---|---|
| 400 | `gecersiz_parametre` · `gecersiz_kategori` · `gecersiz_tarih` · `gecersiz_gun` · `eksik_alan` · `gecersiz_sicil` · `gecersiz_json` · `gecersiz_webhook` | İstek parametresi ya da gövdesi hatalı |
| 400 | `deneme_desteklenmiyor` | Uç deneme anahtarıyla kullanılamaz |
| 401 | `yetkisiz` | Anahtar yok ya da geçersiz |
| 402 | `kota_doldu` | Paket şirket hakkı doldu |
| 403 | `anahtar_gerekli` | İşlem API anahtarı ister (tarayıcı oturumu yetmez) |
| 404 | `bulunamadi` | Kayıt yok ya da erişiminiz yok |
| 404 | `arsivde_yok` | Gazete henüz arşivde değil (yeniden denenebilir) |
| 404 | `kap_eslesmesi_yok` | Şirket bir KAP üyesiyle eşleşmemiş |
| 405 | `yontem` | Yanlış HTTP yöntemi |
| 429 | `hiz_siniri` | Saatlik sınır aşıldı; Retry-After |
| 500 | `ic_hata` | Beklenmeyen hata; yeniden denenebilir |
| 502 | `webhook_teslim_hatasi` | Test bildirimi adresinize teslim edilemedi |
| 503 | `kaynak_erisilemiyor` | Resmî kaynak şu an yanıt vermiyor |

> Yaptırım taraması ve eski uçlar (`/api/v1/companies`) tarihsel nedenle sade gövde döner (`hata_ayrinti` yok).
