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

# Kimlik Doğrulama

> Kimlik doğrulama, kullanıcıların kimliğini doğrulayarak API Hizmetlerinin gizliliğini garanti eder. Kimlik doğrulama, kullanıcıların iklim.co API Hizmetlerine erişmeden önce oturum açmasını gerektirir. Bu kılavuz, mevcut her el sıkışma yöntemi için kurulumu kapsar.

<Danger>
  🚫 Tüm yetkili uç noktalar her istekte `Authorization: Bearer <ACCESS_TOKEN>` başlığı gerektirir.<br />
  Aksi takdirde API istemcisi `401 - Yetkisiz` hatası alır ve çağrı engellenir.
</Danger>

Örnek başlık:

```ini theme={null}
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJtdXJhdG96ZGVtaXJAdGFybGEuaW8iLCJ1c2VySWQiOiJjOGI1OTQwZS01M2QyLTQwZGYtYTg4Yi0xMTBjODYxNTVjZmEiLCJyb2xlcyI6WyJBUElfVVNFUiIsIkFETUlOIl0sImxvY2FsZSI6InRyX1RSIiwidGltZVpvbmUiOiJFdXJvcGUvSXN0YW5idWwiLCJpYXQiOjE3NTMyMTA2MzQsImV4cCI6MTc1MzIxNDIzNH0.hfF1bjcNDhVthtpaZ_HkysA-zJH3VN1a6Sr59aRZbk0
```

# 1. Giriş İşlemi

> 🔐 Giriş işlemleri kullanıcı adı ve şifre kombinasyonu ile yapılır.<br />
> API Uç Noktası: `/v1/auth/login`

Örnek İstek Gövdesi:

```json theme={null}
{
  "username": "name@domain.com",
  "password": "password"
}
```

Örnek Başarılı Yanıt:

```json theme={null}
{
    "username": "name@domain.com",
    "type": "Bearer",
    "accessToken": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJtdXJhdG96ZGVtaXJAdGFybGEuaW8iLCJ1c2VySWQiOiJjOGI1OTQwZS01M2QyLTQwZGYtYTg4Yi0xMTBjODYxNTVjZmEiLCJyb2xlcyI6WyJBUElfVVNFUiIsIkFETUlOIl0sImxvY2FsZSI6InRyX1RSIiwidGltZVpvbmUiOiJFdXJvcGUvSXN0YW5idWwiLCJpYXQiOjE3NTMyMDc1OTAsImV4cCI6MTc1MzIxMTE5MH0.fTCunl7i7yQ8nAuughBpvpRfdH8VFK8uhZWeTrDOPAc",
    "refreshToken": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJtdXJhdG96ZGVtaXJAdGFybGEuaW8iLCJ1c2VySWQiOiJjOGI1OTQwZS01M2QyLTQwZGYtYTg4Yi0xMTBjODYxNTVjZmEiLCJsb2NhbGUiOiJ0cl9UUiIsInRpbWVab25lIjoiRXVyb3BlL0lzdGFuYnVsIiwiaWF0IjoxNzUzMjA3NTkwLCJleHAiOjE3NTMyOTM5OTB9.ozFiZzNPSUtzwvu3wuocA8q8t6MlqbyT6On2i0vSENQ"
}
```

<Tip>
  ⏳ Erişim belirteçleri yalnızca 1 saat geçerlidir; yenileme belirteçleri ise 1 gün boyunca kullanılabilir.
</Tip>

Olası Hata Yanıtları:

```json theme={null}
{
  "timestamp": "2025-04-14T16:58:22.22308754",
  "status": 401,
  "error": "Yetkisiz",
  "message": "Hatalı kimlik bilgileri",
  "path": "/auth/login"
}
```

```json theme={null}
{
"timestamp": "2025-04-21T16:35:54.095818",
"status": 401,
"error": "Yetkisiz",
"message": "Kullanıcı devre dışı",
"path": "/auth/login"
}
```

# 2. Erişim Belirteci Yenileme İşlemi

> 🔁 Erişim belirtecinin süresi dolduğunda, yenileme belirteci kullanılarak yenilenir.<br />
> API Uç Noktası: `/v1/auth/refresh`

Örnek İstek Gövdesi:

```json theme={null}
{
  "refreshToken": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJtdXJhdG96ZGVtaXJAdGFybGEuaW8iLCJ1c2VySWQiOiJjOGI1OTQwZS01M2QyLTQwZGYtYTg4Yi0xMTBjODYxNTVjZmEiLCJsb2NhbGUiOiJ0cl9UUiIsInRpbWVab25lIjoiRXVyb3BlL0lzdGFuYnVsIiwiaWF0IjoxNzUzMjA3NTkwLCJleHAiOjE3NTMyOTM5OTB9.ozFiZzNPSUtzwvu3wuocA8q8t6MlqbyT6On2i0vSENQ"
}
```

Cevaplar `Giriş İşlemi`'ne benzeridir.

<Warning>
  ⚠️ API isteğiniz `401 - Yetkisiz` dönerse erişim belirtecinizi yenileyip tekrar deneyin.<br />
  🔐 Yenileme isteği de `401` veriyorsa, devam etmeden önce yeniden giriş yapın.
</Warning>
