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.