Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.iletiniz.com/llms.txt

Use this file to discover all available pages before exploring further.

POST /v1/messages/bulk
Tek HTTP isteğiyle en fazla 200 alıcıya düz metin mesaj gönderir. Şablon ile toplu gönderim için Şablon ile Toplu Gönderim sayfasına bakın.

İstek Gövdesi

AlanTipZorunluAçıklama
providerstringHayırSağlayıcı kodu (netgsm, verimor, …). Belirtilmezse workspace varsayılanı.
senderstring (≤ 32)SMS içinTüm öğeler için ortak msgheader.
itemsarray (1–200)EvetAlıcı listesi.
items[].tostring (1–64)EvetAlıcı (kanal-bağımlı).
items[].bodystring (1–1600)EvetBu alıcıya gönderilecek mesaj.
Düz metin modunda items[].variables kullanılamaz. Değişken interpolasyonu yalnızca şablon modunda çalışır.

Örnek

curl -X POST https://api.iletiniz.com/v1/messages/bulk \
  -H "Authorization: Bearer iltz_live_xxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "sender": "FIRMA",
    "items": [
      { "to": "+905551112233", "body": "Toplantı 14:00. Ali" },
      { "to": "+905552223344", "body": "Toplantı 15:00. Veli" },
      { "to": "+905553334455", "body": "Toplantı 16:00. Ayşe" }
    ]
  }'

Yanıt

200 OK
{
  "total": 3,
  "sent": 3,
  "failed": 0,
  "provider": "netgsm",
  "created_at": "2026-05-13T20:14:00.000Z",
  "results": [
    { "to": "+905551112233", "status": "sent", "job_id": "k7m4n2p9q8r5s1t6" },
    { "to": "+905552223344", "status": "sent", "job_id": "a3b6c9d2e5f8g1h4" },
    { "to": "+905553334455", "status": "sent", "job_id": "x9y2z5a8b1c4d7e0" }
  ]
}

Kısmi Başarı

Bazı öğeler failed durumunda dönebilir (geçersiz numara, kara liste, İYS izni yok, vb.). Üst seviye HTTP yine 200’dür — istemcinin results dizisindeki her öğeyi denetlemesi beklenir.
{
  "total": 3,
  "sent": 2,
  "failed": 1,
  "provider": "netgsm",
  "created_at": "2026-05-13T20:14:00.000Z",
  "results": [
    { "to": "+905551112233", "status": "sent", "job_id": "k7m4n2p9q8r5s1t6" },
    {
      "to": "invalid-number",
      "status": "failed",
      "error": { "code": "invalid_recipient", "message": "TR cep numarası değil" }
    },
    { "to": "+905553334455", "status": "sent", "job_id": "x9y2z5a8b1c4d7e0" }
  ]
}

Performans Notları

  • Toplu çağrı, 200 ardışık tek çağrıdan çok daha hızlıdır: sağlayıcı destekliyorsa native bulk API’ye dispatch edilir, tek auth + tek rate-limit kontrolü yapılır.
  • Sağlayıcı native bulk API sunmuyorsa (Telegram, WhatsApp) paralel tek çağrılara düşülür; bu durumda kanal-spesifik rate limit’lere (örn. Telegram saniyede 30) tabidir.
  • 200’den fazla alıcı için isteği istemci tarafında parçalayın ve aralarda en az 100ms bekleyin.