# Reports

`GET https://ulawk.com/api/v1/raporlar/`

Your reports (paginated). For speed the list omits report content; findings come in the `raporlar` field of the company profile.

## Authentication

Two headers on every request: `X-API-Key` and `X-API-Secret`.

## Query parameters

- `sayfa` (integer) — Page number (from 1).
- `adet` (integer) — Records per page (default 50, max 200).

## Response

### 200 — Reports.

- `adet` (integer, zorunlu)
- `sayfa` (integer, zorunlu)
- `sayfa_adedi` (integer, zorunlu)
- `sonraki_sayfa` (integer, null, zorunlu)
- `raporlar[]` (RaporSatiri[], zorunlu)
- `raporlar[].rapor_id` (integer, zorunlu)
- `raporlar[].durum` (string, zorunlu) Değerler: hazir, hata, hazirlaniyor.
- `raporlar[].talep` (string (date-time), null, zorunlu)
- `raporlar[].tamamlanma` (string (date-time), null, zorunlu)
- `raporlar[].dosyalar` (object, zorunlu)
- `raporlar[].sirket` (object, null, zorunlu)
- `raporlar[].sirket.id` (integer, zorunlu)
- `raporlar[].sirket.unvan` (string, null, zorunlu)
- `raporlar[].sirket.sicil_no` (string, null, zorunlu)
- `raporlar[].profil` (string (uri), null, zorunlu)

```json
{
  "adet": 1,
  "sayfa": 1,
  "sayfa_adedi": 50,
  "sonraki_sayfa": null,
  "raporlar": [
    {
      "rapor_id": 1,
      "durum": "hazir",
      "talep": "2026-10-15T00:00:00+03:00",
      "tamamlanma": "2026-10-15T00:00:00+03:00",
      "dosyalar": {
        "rapor": "https://ulawk.com/api/v1/raporlar/1/rapor/",
        "rapor-word": "https://ulawk.com/api/v1/raporlar/1/rapor-word/"
      },
      "sirket": {
        "id": 1234,
        "unvan": "ÖRNEK DENEME SANAYİ VE TİCARET ANONİM ŞİRKETİ",
        "sicil_no": "100001"
      },
      "profil": "https://ulawk.com/api/v1/sirketler/1234/"
    }
  ]
}
```

### 400 — Invalid parameter (`gecersiz_parametre`, `gecersiz_kategori`, `gecersiz_tarih`…) or the endpoint does not support sandbox keys (`deneme_desteklenmiyor`).


```json
{
  "hata": "gecersiz_parametre",
  "detay": "Sayfa ve adet tam sayı olmalı.",
  "hata_ayrinti": {
    "kod": "gecersiz_parametre",
    "mesaj": "Sayfa ve adet tam sayı olmalı.",
    "taraf": "istemci",
    "kaynak": null,
    "tekrar_denenebilir": false,
    "tekrar_sn": null
  }
}
```

### 401 — Missing or invalid key (`yetkisiz`).


```json
{
  "hata": "yetkisiz",
  "detay": "Geçerli X-API-Key başlığı gerekli (panel › API).",
  "hata_ayrinti": {
    "kod": "yetkisiz",
    "mesaj": "Geçerli X-API-Key başlığı gerekli (panel › API).",
    "taraf": "istemci",
    "kaynak": null,
    "tekrar_denenebilir": false,
    "tekrar_sn": null
  }
}
```

### 429 — Hourly rate limit exceeded (`hiz_siniri`); the Retry-After header gives the seconds until reset.

Retry-After: `2494`

```json
{
  "hata": "hiz_siniri",
  "detay": "Saatlik istek sınırı aşıldı (600). Bir sonraki saatte tekrar deneyin.",
  "hata_ayrinti": {
    "kod": "hiz_siniri",
    "mesaj": "Saatlik istek sınırı aşıldı (600). Bir sonraki saatte tekrar deneyin.",
    "taraf": "istemci",
    "kaynak": null,
    "tekrar_denenebilir": true,
    "tekrar_sn": 2494
  }
}
```

### 500 — Unexpected error (`ic_hata`, taraf ulawk); retry shortly.

Retry-After: `60`

```json
{
  "hata": "ic_hata",
  "detay": "Beklenmeyen bir hata oluştu; kısa süre sonra yeniden deneyin.",
  "hata_ayrinti": {
    "kod": "ic_hata",
    "mesaj": "Beklenmeyen bir hata oluştu; kısa süre sonra yeniden deneyin.",
    "taraf": "ulawk",
    "kaynak": null,
    "tekrar_denenebilir": true,
    "tekrar_sn": 60
  }
}
```

## Request

```bash
curl "https://ulawk.com/api/v1/raporlar/" \
  -H "X-API-Key: ulk_DENEME_ANAHTARINIZ" \
  -H "X-API-Secret: ulsk_DENEME_GIZLI_ANAHTARINIZ"
```
