# Şirketi takibe al

`POST https://ulawk.com/api/v1/sirket-ekle/`

Şirketi sicil müdürlüğü ve sicil numarasıyla takibe alır. İstek beklemez: kayıt hemen açılır, ilanlar ve profil arka planda hazırlanır; `durum_adresi` ile izleyin. Aynı şirket (aynı müdürlük + aynı sicil kökü, `325075-0` = `325075`) listenizde varsa ikinci kayıt açılmaz, `zaten_var` döner ve paket hakkınız harcanmaz. Deneme anahtarında kayıt açılmaz; yeni sicil `DENEME-YAVAS` akışına yönlenir.

## Kimlik doğrulama

Her istekte iki başlık: `X-API-Key` ve `X-API-Secret`.

## İstek gövdesi

- `mudurluk` (string, zorunlu) — Sicil müdürlüğü (ör. İSTANBUL).
- `sicil_no` (string, zorunlu) — Sicil numarası; rakamla başlar.
- `unvan` (string) — İsteğe bağlı unvan.

```json
{
  "mudurluk": "İSTANBUL",
  "sicil_no": "555555"
}
```

## Yanıt

### 201 — Takibe alındı (`eklendi`).

- `durum` (string, zorunlu) — eklendi (201) ya da zaten_var (200, paket hakkı harcanmaz). Değerler: eklendi, zaten_var.
- `sirket_id` (integer | string, zorunlu) — Şirket kimliği: gerçek anahtarda sayısal (ör. 1234); deneme anahtarında DENEME-… metni.
- `kayit_id` (integer, null, zorunlu)
- `unvan` (string, null)
- `mudurluk` (string, zorunlu)
- `sicil_no` (string, zorunlu)
- `aciklama` (string)
- `profil` (string (uri), zorunlu)
- `durum_adresi` (string (uri), zorunlu) — Hazırlık durumunu izleme adresi.

```json
{
  "durum": "eklendi",
  "sirket_id": "DENEME-YAVAS",
  "kayit_id": null,
  "mudurluk": "İSTANBUL",
  "sicil_no": "555555",
  "aciklama": "Deneme ortamı: kayıt açılmadı, paket hakkı harcanmadı. Hazırlanma akışını DENEME-YAVAS ile izleyin.",
  "profil": "https://ulawk.com/api/v1/sirketler/DENEME-YAVAS/",
  "durum_adresi": "https://ulawk.com/api/v1/sirketler/DENEME-YAVAS/durum/"
}
```

### 200 — Zaten listenizde (`zaten_var`).

- `durum` (string, zorunlu) — eklendi (201) ya da zaten_var (200, paket hakkı harcanmaz). Değerler: eklendi, zaten_var.
- `sirket_id` (integer | string, zorunlu) — Şirket kimliği: gerçek anahtarda sayısal (ör. 1234); deneme anahtarında DENEME-… metni.
- `kayit_id` (integer, null, zorunlu)
- `unvan` (string, null)
- `mudurluk` (string, zorunlu)
- `sicil_no` (string, zorunlu)
- `aciklama` (string)
- `profil` (string (uri), zorunlu)
- `durum_adresi` (string (uri), zorunlu) — Hazırlık durumunu izleme adresi.

```json
{
  "durum": "zaten_var",
  "sirket_id": "DENEME-100001",
  "kayit_id": null,
  "unvan": "ÖRNEK DENEME SANAYİ VE TİCARET ANONİM ŞİRKETİ",
  "mudurluk": "İSTANBUL",
  "sicil_no": "DENEME-100001",
  "profil": "https://ulawk.com/api/v1/sirketler/DENEME-100001/",
  "durum_adresi": "https://ulawk.com/api/v1/sirketler/DENEME-100001/durum/"
}
```

### 400 — `eksik_alan` ya da `gecersiz_sicil`.


```json
{
  "hata": "eksik_alan",
  "detay": "'mudurluk' ve 'sicil_no' zorunludur.",
  "hata_ayrinti": {
    "kod": "eksik_alan",
    "mesaj": "'mudurluk' ve 'sicil_no' zorunludur.",
    "taraf": "istemci",
    "kaynak": null,
    "tekrar_denenebilir": false,
    "tekrar_sn": null
  }
}
```

### 402 — Paket şirket hakkınız doldu (`kota_doldu`).


```json
{
  "hata": "kota_doldu",
  "detay": "Paket şirket hakkınız doldu.",
  "hata_ayrinti": {
    "kod": "kota_doldu",
    "mesaj": "Paket şirket hakkınız doldu.",
    "taraf": "istemci",
    "kaynak": null,
    "tekrar_denenebilir": false,
    "tekrar_sn": null
  }
}
```

### 405 — POST bekleniyor (`yontem`).


```json
{
  "hata": "yontem",
  "detay": "POST bekleniyor.",
  "hata_ayrinti": {
    "kod": "yontem",
    "mesaj": "POST bekleniyor.",
    "taraf": "istemci",
    "kaynak": null,
    "tekrar_denenebilir": false,
    "tekrar_sn": null
  }
}
```

### 401 — Anahtar yok ya da geçersiz (`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 — Saatlik istek sınırı aşıldı (`hiz_siniri`); Retry-After başlığı sıfırlanmaya kalan saniyeyi verir.

Retry-After: `2311`

```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": 2311
  }
}
```

### 500 — Beklenmeyen hata (`ic_hata`, taraf ulawk); kısa süre sonra yeniden deneyin.

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
  }
}
```

## İstek

```bash
curl -X POST "https://ulawk.com/api/v1/sirket-ekle/" \
  -H "X-API-Key: ulk_DENEME_ANAHTARINIZ" \
  -H "X-API-Secret: ulsk_DENEME_GIZLI_ANAHTARINIZ" \
  -H "Content-Type: application/json" \
  -d '{"mudurluk": "İSTANBUL", "sicil_no": "555555"}'
```
