> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kaisupport.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Kimlik doğrulama

> API anahtarları, izinler ve bunlar için geçerli kurallar.

Her istek bir API anahtarı gerektirir. Anahtarı `Authorization` başlığında
gönderin:

```
Authorization: Bearer kai_live_...
```

Bir anahtar tek bir çalışma alanına aittir. İsteğin hangi çalışma alanını
okuyup yazacağına anahtar karar verir, bu yüzden hiçbir istek çalışma alanı
kimliği taşımaz.

## Anahtar oluşturma

Kai'de **Ayarlar (Settings) → API** bölümüne gidin ve
**API anahtarı oluştur (Create API key)** seçeneğini seçin. Anahtarı yalnızca
bir hesap sahibi veya yönetici oluşturabilir.

Kai tam anahtarı yalnızca bir kez gösterir. Kai anahtarın gizli yarısının
sadece SHA-256 özetini saklar, bu yüzden anahtarı kimse tekrar okuyamaz, Kai
destek ekibi de okuyamaz. Bir anahtarı kaybederseniz yenisini oluşturun ve
eskisini iptal edin.

## İzinler

Bir anahtar, onu oluştururken seçtiğiniz izinleri taşır. Her uç nokta, ihtiyaç
duyduğu izni belirtir.

| İzin               | Anahtarın yapabildikleri                                 |
| ------------------ | -------------------------------------------------------- |
| `contacts:read`    | Kişileri okur ve dışa aktarır.                           |
| `contacts:write`   | Kişi oluşturur, günceller, atar ve siler.                |
| `attributes:read`  | Çalışma alanı özelliklerini okur.                        |
| `attributes:write` | Çalışma alanı özelliği oluşturur, günceller ve arşivler. |
| `members:read`     | Ekip listesini okur.                                     |

Bir yazma izni, karşılığındaki okuma iznini de kapsar. Bu nedenle
`contacts:write` kişileri okur da, çünkü her yazma işlemi yazdığı kayıtla
yanıt verir.

<Note>
  Bu izinler, kişilerin Kai'deki rolleri değildir. Bir anahtarın rolü ve
  koltuğu yoktur. Bir anahtara, işi için gereken en küçük izin kümesini verin.
</Note>

## Anahtar iptali

**Ayarlar (Settings) → API** bölümünde anahtarın yanındaki
**İptal et (Revoke)** seçeneğini seçin. O anahtarla gelen bir sonraki istek 401
döner. Kai anahtarın adını listede tutar, böylece denetim kaydı eksiksiz kalır.

## Hatalar

Kai her kimlik doğrulama hatasına aynı şekilde yanıt verir:

```json theme={null}
{ "error": { "type": "unauthorized", "message": "That API key is not valid." } }
```

Mesaj; var olmayan bir anahtar, iptal edilmiş bir anahtar ve süresi dolmuş bir
anahtar için aynıdır. Bu bilinçli bir tercihtir: her durum için farklı bir
mesaj, çağıran tarafın hangi anahtar kimliklerinin var olduğunu öğrenmesine
imkan verirdi.

Anahtar geçerli ancak izni yoksa yanıt 403 olur ve izni belirtir:

```json theme={null}
{
  "error": {
    "type": "forbidden",
    "message": "This key does not have the \"contacts:write\" permission."
  }
}
```

## Aktarım

API yalnızca HTTPS kabul eder. Bir anahtarı URL'ye, sorgu parametresine veya
kayıt satırına koymayın. Kai bir anahtarı asla e-posta ile göndermez.
