Broadcast
Broadcast memakai endpoint yang sama dengan single send. Tambahkan header dan ganti to menjadi recipients.
Membuat campaign
curl -X POST https://api.nalasend.id/meta/v20.0/109384756201/messages \
-H "Authorization: Bearer nala_live_..." \
-H "X-Nala-Broadcast: true" \
-H "X-Nala-Broadcast-Name: Promo Lebaran" \
-H "Idempotency-Key: promo-lebaran-2026" \
-H "Content-Type: application/json" \
-d '{
"messaging_product": "whatsapp",
"recipients": ["+628123456789", "+628133456789"],
"type": "template",
"template": { "name": "promo_lebaran", "language": { "code": "id" } }
}' Response sukses adalah 202 Accepted dengan campaign id di body dan header X-Nala-Broadcast-Id. Broadcast berjalan lewat queue.
Status broadcast
| Status | Arti |
|---|---|
queued | Campaign dibuat, job belum diproses. |
processing | Worker sedang mengirim. |
completed | Semua job selesai. |
partial_failed | Sebagian job gagal; hanya yang gagal bisa dikirim ulang. |
cancelled | Campaign dibatalkan; sisa reservasi dikembalikan. |
Progres dan kontrol
GET /v1/broadcasts/{id}— detail dan counter.GET /v1/broadcasts/{id}/stream— progres SSE.POST /v1/broadcasts/{id}/cancel— idempotent; job yang sudah terkirim tidak ditarik.POST /v1/broadcasts/{id}/resend-failed— hanya job gagal.
Test key tidak bisa membuat campaign. Gunakan live key untuk broadcast.
