Skip to content

Kampanya API ​

Kampanyalari programatik olarak olusturun, yonetin ve analiz edin.

Endpointler ​

Kampanyalari Listele ​

http
GET /api/v1/campaigns

Query Parametreleri:

ParametreTipAciklama
typestringKampanya turu: BROADCAST, DRIP, TRIGGERED
statusstringDurum: DRAFT, SCHEDULED, SENDING, SENT, FAILED
channelstringKanal: email, sms, whatsapp
pagenumberSayfa numarasi (varsayilan: 1)
limitnumberSayfa basina kayit (varsayilan: 20, maks: 100)

Yanit:

json
{
  "data": [
    {
      "id": "camp_abc123",
      "name": "Hosgeldin Kampanyasi",
      "type": "BROADCAST",
      "channel": "email",
      "status": "SENT",
      "recipientCount": 1500,
      "sentCount": 1487,
      "openedCount": 623,
      "clickedCount": 198,
      "createdAt": "2026-01-15T10:00:00Z",
      "scheduledAt": null,
      "completedAt": "2026-01-15T10:45:00Z"
    }
  ],
  "total": 42,
  "page": 1,
  "limit": 20
}

Kampanya Detayi ​

http
GET /api/v1/campaigns/:id

Kampanya Olustur ​

http
POST /api/v1/campaigns

Body:

json
{
  "name": "Yeni Yil Kampanyasi",
  "type": "BROADCAST",
  "channel": "email",
  "subject": "Yeni yil firsatlari!",
  "htmlContent": "<h1>Mutlu Yillar!</h1><p>Ozel indirimlerimizi kacirmayin.</p>",
  "textContent": "Mutlu Yillar! Ozel indirimlerimizi kacirmayin.",
  "broadcastListId": "list_xyz789",
  "scheduledAt": "2026-12-31T20:00:00Z"
}
AlanTipZorunluAciklama
namestringEvetKampanya adi
typestringEvetBROADCAST, DRIP, TRIGGERED
channelstringEvetemail, sms, whatsapp
subjectstringE-posta icinE-posta konu satiri
htmlContentstringE-posta icinHTML icerik
textContentstringSMS icinDuz metin icerik
broadcastListIdstringHayirHedef broadcast listesi
segmentIdstringHayirHedef segment
scheduledAtdatetimeHayirZamanlama (bos ise hemen gonderilir)
abTestConfigobjectHayirA/B test yapilandirmasi

Kampanya Guncelle ​

http
PATCH /api/v1/campaigns/:id

Sadece DRAFT durumundaki kampanyalar guncellenebilir.

Kampanya Sil ​

http
DELETE /api/v1/campaigns/:id

Sadece DRAFT veya FAILED durumundaki kampanyalar silinebilir.

Kampanya Gonder ​

http
POST /api/v1/campaigns/:id/send

Kampanyayi hemen gonderime baslatir. Kampanya DRAFT veya SCHEDULED durumunda olmalidir.

Broadcast Listeleri ​

Listeleri Getir ​

http
GET /api/v1/broadcast-lists

Liste Olustur ​

http
POST /api/v1/broadcast-lists
json
{
  "name": "VIP Musteriler",
  "description": "Yuksek degerli musteriler"
}

Listeye Kisi Ekle ​

http
POST /api/v1/broadcast-lists/:id/contacts
json
{
  "contactIds": ["contact_1", "contact_2", "contact_3"]
}

Listeden Kisi Cikar ​

http
DELETE /api/v1/broadcast-lists/:id/contacts/:contactId

Kampanya Analitikleri ​

Kampanya Istatistikleri ​

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

Yanit:

json
{
  "sent": 1500,
  "delivered": 1487,
  "opened": 623,
  "clicked": 198,
  "bounced": 13,
  "unsubscribed": 5,
  "deliveryRate": 99.13,
  "openRate": 41.89,
  "clickRate": 31.78,
  "bounceRate": 0.87
}

SMS Kampanyasi Notlari ​

SMS kampanyalari icin ek alanlar:

AlanTipAciklama
smsProviderstringNETGSM, ILETI_MERKEZI, TWILIO
originatorstringGonderen basligi
estimatedCostnumberTahmini maliyet
charCountnumberKarakter sayisi
smsCountnumberSMS sayisi (uzun mesajlarda >1)

Hata Kodlari ​

KodAnlam
400Gecersiz istek — zorunlu alanlar eksik
404Kampanya bulunamadi
409Kampanya durumu uygun degil (ornegin gonderilmis kampanya silinemez)
429Gonderim hiz limiti asildi

Yetkilendirme

Tum kampanya endpointleri JWT token gerektirir. Detaylar icin Kimlik Dogrulama sayfasina bakin.

DOLU.ai - AI Destekli CRM Platformu