REST API

Calleague uygulama API'sini Bearer token ile çağırın — çağrı başlatın, arayıp bulun, asistanları okuyun, listeleri sayfalayın ve hataları ile hız sınırlarını ele alın. Ekran görüntüsündeki gerçek işlenmiş örnekle.

Calleague REST API'si, panoda yaptıklarınızı koddan yapmanızı sağlar: sesli asistanlarınızı çalıştırın, çağrı başlatıp inceleyin ve hesabınızın verilerini okuyun. Bu sayfa temel adresi, Bearer kimlik doğrulamayı, sık kullanılan işlemleri, sayfalamayı, hata kodlarını ve hız sınırlarını kapsar — hepsi ekran görüntüsündeki gerçek istek ve yanıt çevresinde.

Buradaki her şey uygulama düzeyindedir: çalışma alanınız olarak giriş yapar ve güvenli bir bağlantı üzerinden istek gönderirsiniz. Kurulacak hiçbir şey yoktur.

Bir bakışta

KonuÖzet
TaşımaGüvenli bağlantı (HTTPS), JSON girer JSON çıkar.
Kimlik doğrulamaAPI anahtarı, Authorization: Bearer başlığı olarak.
Temel adreshttps://app.calleague.ai.
Tek bir sonuç{ "callId": "...", "status": "...", ... }.
Bir liste{ "total": N, "list": [ ... ] }.
Bir hatacode ve message içeren, 2xx olmayan bir yanıt.

REST API istek ve yanıt

Temel adres

Tüm istekler, https://app.calleague.ai/api/... ile başlayarak Calleague çalışma alanınıza gider. İstekler ve yanıtlar JSON biçimindedir. Gövde gönderen her isteğe Content-Type: application/json ekleyin.

Kimlik doğrulama

Her istek, standart Authorization başlığında Bearer token olarak bir API anahtarı taşır — ekran görüntüsünde gördüğünüz Authorization: Bearer $TOKEN satırının aynısı:

Authorization: Bearer $TOKEN

Anahtarları uygulamadaki hesap ayarlarınızdan oluşturur, adlandırır ve iptal edersiniz. Bir anahtar sizin izinlerinizi devralır; yani yapabildiğinizi yapar, fazlasını değil.

Bir anahtar oluşturun

Hesap ayarlarınızda API anahtarları alanını açın ve bir tane oluşturun. Tek başına denetleyip iptal edebilmek için entegrasyonuna göre adlandırın.

Anahtarın tam halini oluşturma anında bir kez göreceksiniz.

Bir isteği doğrulayın

Anahtarı her istekte gönderin. Çalıştığını hızlıca doğrulamanın bir yolu asistanlarınızı listelemektir:

curl -s https://app.calleague.ai/api/core/voice/agent/list \
  -H "Authorization: Bearer $TOKEN"

Anahtar geçerliyse asistanlarınızın JSON listesini göreceksiniz.

Yanıtı okuyun

Önce HTTP durumunu kontrol edin, sonra JSON gövdesini okuyun. Bir değeri kullanmadan önce var olduğunu kontrol edin.

Anahtar eksik veya yanlışsa veri yerine 401 alırsınız.

Bir anahtarı asla betiklere, depolara veya belgelere yapıştırmayın. Kendi güvenli saklama alanınızda tutun ve çalışma anında verin. Burada gösterilen anahtarlar örnektir, gerçek kimlik bilgisi değildir.

Sık kullanılan işlemler

İlk satır ekran görüntüsündeki gerçek uç noktadır. Geri kalanlar başvuracağınız tamamlayıcı işlemlerdir; tam yollarını örnek kabul edin ve çalışma alanınız için doğrulayın.

YöntemYolAmaçGövde
POST/api/core/voice/agent/callGiden çağrı başlatın.agentId, to
GET/api/core/voice/call/{callId}Bir çağrının ayrıntısına ve sonucuna bakın.
GET/api/core/voice/call/listSon çağrıları listeleyin (sayfalı, süzülebilir).
GET/api/core/voice/agent/listSesli asistanlarınızı listeleyin.
GET/api/core/voice/agent/{agentId}Bir asistanın yapılandırmasını okuyun.
POST/api/core/webhookBir webhook uç noktası kaydedin.url, events

İstek alanları — çağrı başlatma

AlanYerTürZorunluAçıklama
agentIdgövdemetinEvetÇağrıyı yürütecek sesli asistan (kimliği, örn. ag_123).
togövdemetinEvetAranacak numara, uluslararası biçimde (örn. +90312...).
metadatagövdenesneHayırÇağrıda ve olaylarında geri yansıtılan kendi anahtar/değer çiftleriniz.

Sorgu alanları — çağrıları listeleme

AlanYerTürVarsayılanAçıklama
pagesorgutam sayı1Hangi sayfanın okunacağı (1'den başlar).
pageSizesorgutam sayı20Sayfa başına öğe sayısı.
statussorgumetinDuruma göre süzün, örn. completed, failed.
agentIdsorgumetinTek bir asistanla sınırlayın.

Çağrı başlatma

Bu, ekran görüntüsündeki istek ve yanıtın aynısıdır. Kendi referansınızı (örneğin bir sipariş kimliği) taşımak için isteğe bağlı bir metadata nesnesi ekleyin.

curl -s -X POST https://app.calleague.ai/api/core/voice/agent/call \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
        "agentId": "ag_123",
        "to": "+90312...",
        "metadata": { "orderId": "A-1042" }
      }'

Başarılı bir başlatma yeni çağrıyı döndürür:

{
  "callId": "cl_8f2a",
  "status": "ringing",
  "language": "tr"
}

Bir çağrıyı arayıp bulma

Nasıl ilerlediğini görmek için tek bir çağrıyı okuyun — ya da bunun yerine haberdar edilmek için webhook'lara güvenin.

curl -s https://app.calleague.ai/api/core/voice/call/cl_8f2a \
  -H "Authorization: Bearer $TOKEN"
{
  "callId": "cl_8f2a",
  "status": "completed",
  "direction": "outbound",
  "durationSec": 84,
  "endedReason": "completed",
  "language": "tr",
  "recordingReady": true,
  "transcriptReady": true,
  "createdAt": "2026-01-01T12:00:00.000Z",
  "endedAt": "2026-01-01T12:01:24.000Z"
}

Çağrı durum değerleri

DurumAnlamı
ringingHedef numara aranıyor.
in-progressBağlandı; görüşme sürüyor.
completedNormal şekilde bitti.
failedBağlanamadı veya hata verdi.
no-answerHedef numara açmadı.

Sayfalama

Çağrıları listelemek sayfalı bir yapı döndürür — boş bir listeyi her zaman zarifçe ele alın:

curl -s "https://app.calleague.ai/api/core/voice/call/list?page=1&pageSize=20" \
  -H "Authorization: Bearer $TOKEN"
{
  "total": 0,
  "list": []
}

Sonuçlar arasında ilerlemek için, topladığınız öğe sayısı total değerine ulaşana kadar page'i artırın.

Bir liste uç noktası haklı olarak boş bir list döndürebilir. Kendi kodunuzda döngüden önce boş bir diziye düşün ve okumadan önce bir değerin var olduğunu kontrol edin — dolu bir yapı varsaymak en sık görülen entegrasyon hatasıdır.

Hata kodları

Başarısız bir istek; 2xx olmayan bir durum, bir code ve okunabilir bir message ile geri döner. Önce HTTP durumuna göre dallanın.

{
  "code": 401,
  "message": "Invalid or missing API key"
}
HTTPAnlamıNe yapmalısınız
400Hatalı istek — bozuk JSON veya eksik alan.Gövdeyi doğrulayın; Content-Type: application/json ayarlayın.
401Giriş yapılmadı — anahtar eksik, yanlış veya iptal.Authorization: Bearer başlığını ve anahtarı yeniden kontrol edin.
403İzin yok — anahtarın hesabı bu işlemi yapamıyor.Hesabı işlemi yapabilen bir anahtar kullanın.
404Bulunamadı — bilinmeyen kimlik veya yol.callId / agentId ve yolu doğrulayın.
409Çakışma — kaynağın durumu işlemi engelliyor.Kaynağı yeniden okuyun ve çözüldüğünde yeniden deneyin.
422Geçerli JSON ama geçersiz değerler.Alan değerlerini düzeltin (örn. to geçerli bir numara olmalı).
429Çok fazla istek.Yavaşlayın ve kısa bir bekleyişin ardından yeniden deneyin.
5xxBizim tarafımızda geçici bir sorun.Giderek artan bir gecikmeyle yeniden deneyin.

Hız sınırları

API, çalışma alanı başına adil kullanım sınırları uygular. İstemcinizi buna dayanacak şekilde kurun:

UygulamaNeden
Bir 429'a saygı gösterinBekleme pencereniz geçene kadar göndermeyi durdurun.
Geri çekilin ve biraz rastgelelik ekleyinHerkesin aynı anda yeniden denemesini önler.
Sürekli kontrol yerine webhook'u tercih edinTekrarlanan okumaların çoğunu ortadan kaldırır.
Mümkün olduğunda işi gruplayınAynı sonuç için daha az istek.

Bir 429'dan sonra hızlı yeniden denemeler, kısıtlamayı iyileştirmez, kötüleştirir. Bekleyin, biraz rastgelelik ekleyin ve yeniden deneyin — hemen döngüye girmeyin.

Bir şey farklı görünüyorsa

BelirtiOlası nedenÇözüm
Her istekte 401Eksik/süresi dolmuş anahtar veya yanlış başlıkAuthorization: Bearer $TOKEN satırını ve anahtarın etkin olduğunu doğrulayın
POST'ta 400Gövde JSON değil veya başlık eksikGeçerli JSON gönderin ve Content-Type: application/json ayarlayın
Kodunuz bir listede çöküyorlist boş geldiDöngüden önce boş bir diziye düşün
Var olduğunu bildiğiniz çağrıda 404Yanlış kimlik veya eski yolcallId'yi doğrulamak için yeniden listeleyin; yolu kontrol edin
Sık sık 429Çok agresif kontrolWebhook'a geçin veya istekler arasına bekleme ekleyin
Okuduğunuz bir alan eksikYeni/isteğe bağlı bir alan yokÖnce var olup olmadığını kontrol edin; tanımadığınız alanları yok sayın

Sık sorulan sorular

Sırada ne var

Son güncelleme