Kampanya İstatistikleri

Kampanya performansını detaylı istatistiklerle analiz edin

Endpoint

GET/api/v1/campaigns/:id/stats

Kampanya istatistiklerini ve performans metriklerini alın.

Path Parameters

idzorunlu

Kampanya ID'si

Örnek İstek

cURL
curl -X GET "https://api.wespoke.ai/api/v1/campaigns/camp_abc123/stats" \
  -H "Authorization: Bearer YOUR_API_KEY"

Örnek Yanıt

200 OK
{
  "success": true,
  "data": {
    "campaign": {
      "id": "camp_abc123",
      "name": "Yaz Kampanyası 2025",
      "status": "RUNNING",
      "totalContacts": 1000,
      "startedAt": "2025-01-20T11:00:00Z",
      "completedAt": null
    },
    "contacts": {
      "total": 1000,
      "finished": 480,
      "willRetry": 20,
      "byStatus": {
        "PENDING": 450,
        "CALLING": 2,
        "COMPLETED": 400,
        "FAILED": 30,
        "BUSY": 18,
        "NO_ANSWER": 50,
        "VOICEMAIL": 30,
        "SKIPPED": 20
      }
    },
    "calls": {
      "averageAttempts": 1.5,
      "averageDuration": 180,
      "averageCost": 0.25,
      "totalCost": 120.50,
      "successRate": 90.0,
      "totalCompletedCalls": 500,
      "successfulCalls": 450
    }
  }
}

Yanıt Alanları

contacts.total

Kampanyadaki toplam kişi sayısı

contacts.finished

Tamamlanan kişi sayısı (yeniden aranmayacak olanlar - COMPLETED, SKIPPED veya tekrar hakkı tükenmiş)

contacts.willRetry

Yeniden denenecek kişi sayısı (başarısız olmuş ama tekrar hakkı olan - FAILED, BUSY, NO_ANSWER, VOICEMAIL)

contacts.byStatus

Kişilerin durumlarına göre dağılımı (PENDING, CALLING, COMPLETED, FAILED, BUSY, NO_ANSWER, VOICEMAIL, SKIPPED)

calls.successRate

Başarılı aramaların yüzdesi (başarılı / toplam tamamlanan × 100)

calls.averageDuration

Ortalama arama süresi (saniye cinsinden)

calls.totalCost

Toplam arama maliyeti (USD)

Hata Yanıtları

404 Not Found

{
  "success": false,
  "error": {
    "message": "Campaign not found",
    "code": "CAMPAIGN_NOT_FOUND"
  }
}

💡Önemli Notlar

  • İstatistikler gerçek zamanlı olarak güncellenir
  • finished alanı ilerleme yüzdesi hesaplaması için kullanılmalıdır (yeniden aranmayacak kişiler)
  • willRetry alanı başarısız olmuş ama tekrar hakkı olan kişileri gösterir
  • Varsayılan olarak her kişi için 3 deneme hakkı vardır (maxRetries=3)
  • Tekrar denemeler arasında 5 dakika bekleme süresi vardır
  • PENDING durumundaki kampanyalar için bazı alanlar null olabilir