API Dokümantasyonu

Ana sayfa

Kolai projesindeki tüm özellikler HTTP API çağrıları ile kullanılabilir. Aşağıda Swagger benzeri bir dokümantasyonla uç noktaları, parametreleri ve örnekleri bulabilirsiniz.

Kimlik Doğrulama

Çoğu uç nokta, Authorization: Bearer <access_token> başlığı gerektirir. Erişim belirtecini POST /api/auth/login ile alabilirsiniz.

POST/api/auth/loginDetayları göster

Kullanıcı girişi yapar ve erişim belirteçlerini döner.

İstek Gövdesi

{
  "email": "user@example.com",
  "password": "your-password"
}

200 Başarılı Yanıt

{
  "access_token": "...",
  "refresh_token": "...",
  "expires_in": 3600,
  "token_type": "bearer",
  "user": { "id": "...", "email": "user@example.com" }
}

400: Eksik alanlar, 401: Geçersiz kimlik bilgileri

Çağrılar

GET/api/calls/listDetayları göster

Sayfalı çağrı listesi döner. Authorization zorunlu.

Sorgu Parametreleri

page: number (varsayılan 1)
pageSize: number (varsayılan 20, en fazla 100)

200 Başarılı Yanıt

{
  "page": 1,
  "pageSize": 20,
  "total": 123,
  "items": [ /* call kayıtları */ ]
}

401: Token eksik/geçersiz; 500: Sunucu hatası

GET/api/calls/[slug]Detayları göster

Tekil çağrı kaydını döner. Authorization zorunlu.

Yol Parametreleri

slug: string (call kaydının _id değeri)

200 Başarılı Yanıt

{ /* call kaydı */ }

404: Bulunamadı; 401/500: Hata

POST/api/calls/newDetayları göster

Kullanıcı asistanı üzerinden belirtilen numaraya çıkış araması başlatır.

İstek Gövdesi

{
  "phoneNumber": "+905551112233"
  // alternatif alan adları: number | phone
}

200 Başarılı Yanıt

{
  "message": "Çağrı başlatıldı",
  "result": { /* Vapi API dönüşü */ }
}

400: Eksik telefon, 401: Yetkisiz, 404: Asistan bulunamadı, 500: Sunucu/Yapılandırma hatası

Müşteriler

GET/api/customer/listDetayları göster

Sayfalı müşteri listesi döner. Authorization zorunlu.

Sorgu Parametreleri

page: number (varsayılan 1)
pageSize: number (varsayılan 20, en fazla 100)

200 Başarılı Yanıt

{
  "page": 1,
  "pageSize": 20,
  "total": 42,
  "items": [ /* müşteri kayıtları */ ]
}

401: Token eksik/geçersiz; 500: Sunucu hatası

Örnek cURL

Akış: oturum aç, token al ve çağrı listesi çek.

# 1) Giriş yap ve access_token al
curl -s -X POST   -H "Content-Type: application/json"   -d '{"email":"user@example.com","password":"your-password"}'   https://your-domain.com/api/auth/login | jq -r .access_token

# 2) Çağrı listesi
ACCESS_TOKEN="..." # bir önceki adımın çıktısı
curl -s -X GET   -H "Authorization: Bearer ${ACCESS_TOKEN}"   'https://your-domain.com/api/calls/list?page=1&pageSize=20'

Uç noktalar src/app/api klasöründe tanımlıdır. Bu sayfa, mevcut kaynak kodu temel alınarak oluşturulmuştur.