Start Outbound Call

Asistanınızla otomatik giden arama başlatın

Endpoint

POST/api/v1/calls/outbound

Belirtilen telefon numarasına asistanınızla otomatik giden arama başlatır.

İstek Gövdesi

phoneNumberIdrequired

Aramayı başlatacak telefon numaranızın kimliği

assistantIdrequired

Aramayı gerçekleştirecek asistanın kimliği

torequired

Aranacak telefon numarası (E.164 formatında, örn: +905551234567)

greetingMessageoptional

Asistanın arama açıldığında söyleyeceği ilk mesaj. Belirtilmezse, asistanın varsayılan selamlama mesajı kullanılır.

specialInstructionsoptional

Bu arama için asistana verilecek özel talimatlar. Asistanın sistem promptuna ek olarak kullanılır.

metadataoptional

Arama ile ilişkilendirilecek özel meta veriler (JSON objesi). Kampanya ID'si, müşteri bilgileri, notlar gibi veriler için kullanılabilir.

This metadata is saved to the database and returned in both call.started and call.ended webhooks.

Örnek İstek

cURL
curl -X POST "https://api.wespoke.ai/api/v1/calls/outbound" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "phoneNumberId": "phone_789",
    "assistantId": "asst_456",
    "to": "+905559876543",
    "greetingMessage": "Hello, I am calling from Acme Company. I would like to inform you about a special campaign for you.",
    "specialInstructions": "Use the customer's name and explain the campaign details.",
    "metadata": {
      "contactName": "John Smith",
      "tags": ["campaign", "new-customer"],
      "notes": "VIP customer"
    }
  }'

Örnek Yanıt

200 OK
{
  "success": true,
  "callId": "out-1736938800000-a1b2c3",
  "status": "ringing"
}

A simple response is returned when the call is successfully initiated. Use GET /api/v1/calls/:callId endpoint to see call details.

Arama Durumları

initiating

Arama başlatılıyor, FreeSWITCH'e gönderiliyor

ringing

Karşı taraf aranıyor (çalıyor)

connected

Karşı taraf aramayı açtı, konuşma bağlandı

in_progress

Call is actively in progress

completed

Arama başarıyla tamamlandı

failed

Arama başarısız oldu (ağ hatası, geçersiz numara, yayınlanmamış asistan vb.)

Webhook Olayları

Giden aramalar için aşağıdaki webhook olayları otomatik olarak gönderilir:

  • call.started - Arama bağlandığında (karşı taraf açtığında)
  • call.ended - Arama sonlandığında (tüm detaylar, mesajlar ve kayıt URL'si ile)

You can configure the Webhook URL from the Dashboard → Webhooks page.

Call Tracking via API:

  • GET /api/v1/calls/:callId - Arama detaylarını ve mesajları getir
  • GET /api/v1/calls/outbound/:callId - Check outbound call status
  • GET /api/v1/calls/outbound/active - Aktif giden aramaları listele
  • DELETE /api/v1/calls/outbound/:callId - Aramayı sonlandır

Hata Yanıtları

400 Bad Request - Zorunlu Alan Eksik
{
  "success": false,
  "error": {
    "message": "to, assistantId, and phoneNumberId are required",
    "code": "VALIDATION_ERROR"
  }
}
400 Bad Request - Yayınlanmamış Asistan
{
  "success": false,
  "error": "Assistant has no published version. Please publish the assistant first."
}
404 Not Found - Asistan veya Telefon Numarası Bulunamadı
{
  "success": false,
  "error": "Assistant not found"
}

or

{
  "success": false,
  "error": "Phone number not found or not active"
}