# Hızlı başlangıç

Dört adımda ilk entegrasyon. Örnekler deneme anahtarıyla çalışır; gerçek anahtarda aynı istekler gerçek şirketlerinizle çalışır.

## 0. Deneme anahtarı

Panelde **API Anahtarları › Deneme anahtarı oluştur**. Anahtar ve gizli anahtarı ortam değişkenine koyun:

```bash
export ULAWK_ANAHTAR="ulk_DENEME_ANAHTARINIZ"
export ULAWK_GIZLI="ulsk_DENEME_GIZLI_ANAHTARINIZ"
```

## 1. Şirketi takibe alın

İstek beklemez: kayıt hemen açılır, ilanlar ve profil arka planda hazırlanır. Şirket listenizde zaten varsa `zaten_var` döner, paket hakkı harcanmaz.

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

Yanıtta `sirket_id` ve `durum_adresi` gelir (deneme ortamında `DENEME-YAVAS`).

## 2. Hazırlanmasını izleyin

`asama`: `ilanlar-cekiliyor` → `gazeteler-indiriliyor` → `profil-hazirlaniyor` → `hazir`. Birkaç dakikada bir sorgulayın.

```bash
curl https://ulawk.com/api/v1/sirketler/DENEME-YAVAS/durum/ \
  -H "X-API-Key: $ULAWK_ANAHTAR" -H "X-API-Secret: $ULAWK_GIZLI"
```

## 3. Profili okuyun

Her kayıtta `kaynak` var; `veri_durumu` her bölümün ne kadar tam olduğunu söyler.

```bash
curl https://ulawk.com/api/v1/sirketler/DENEME-100001/ \
  -H "X-API-Key: $ULAWK_ANAHTAR" -H "X-API-Secret: $ULAWK_GIZLI"
```

## 4. Değişikliklere abone olun

Seçtiğiniz kategorilerde değişiklik olunca ilanın kendisini imzalı olarak göndeririz. `gizli` yalnız bu yanıtta gelir; saklayın ve [imzayı doğrulayın](/gelistirici/webhooklar/#imza).

```bash
curl -X POST https://ulawk.com/api/v1/webhooklar/ \
  -H "X-API-Key: $ULAWK_ANAHTAR" -H "X-API-Secret: $ULAWK_GIZLI" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://sisteminiz.ornek.com/ulawk", "kategoriler": ["durum", "yetkililer"]}'
```

Ardından `POST /api/v1/webhooklar/{id}/test/` ile uydurma bir test bildirimi gönderin.

## Hepsi bir arada (Python)

```python
import os
import time

import requests

TABAN = "https://ulawk.com"
B = {"X-API-Key": os.environ["ULAWK_ANAHTAR"], "X-API-Secret": os.environ["ULAWK_GIZLI"]}

ekle = requests.post(f"{TABAN}/api/v1/sirket-ekle/", headers=B, json={"mudurluk": "İSTANBUL", "sicil_no": "555555"}, timeout=30).json()
for _ in range(30):
    durum = requests.get(ekle["durum_adresi"], headers=B, timeout=30).json()
    if durum["profil_hazir"] or durum["asama"] == "sube":
        break
    time.sleep(60)  # deneme ortamında DENEME-YAVAS hiç hazır olmaz; döngü 30 denemede biter

sirket_id = ekle["sirket_id"] if durum["profil_hazir"] else "DENEME-100001"  # deneme ortamında hazır örnek
profil = requests.get(f"{TABAN}/api/v1/sirketler/{sirket_id}/", headers=B, timeout=30).json()
for y in profil["yetkililer"] or []:
    print(y["isim"], y["sifat"], y["kaynak"]["gazete_pdf"] if y["kaynak"] else "-")
```
