Layanan 01 / SMS Marketing
SMS Marketing
dengan status per pesan.
Unggah daftar nomor, tulis pesan dengan variabel, lalu kirim sekarang atau jadwalkan. Setiap pesan punya status sendiri, dan setiap batch menyimpan riwayat.
Alur campaign
Dari file daftar nomor sampai siap dikirim.
- 01
Impor
Unggah TXT, CSV, atau XLSX, lalu petakan kolom nomor dan nama.
- 02
Susun
Tulis pesan, masukkan variabel, cek perkiraan segmen.
- 03
Jadwalkan
Kirim langsung atau tentukan sendiri waktu mulainya.
- 04
Pantau
Lihat status per penerima, pesan gagal, dan hasil pengiriman.
Pemeriksaan sebelum kirim
Tiga hal yang sering terlewat saat kirim massal.
Segmen, duplikat, dan media. Komposer menampilkan perkiraan panjang pesan, impor merapikan format nomor, dan media diperiksa sebelum batch masuk antrean.
- Segmen
- SMS dihitung per segmen. GSM-7 muat 160 karakter, Unicode 70. Pesan panjang dipecah sesuai aturan gateway.
- Duplikat
- Kalau membuat batch lewat API, nomor harus unik dalam satu request. Ini mencegah pengiriman ganda ke nomor yang sama.
- Media
- RCS boleh satu file opsional, MMS wajib satu file. URL harus HTTPS dan filenya diunduh sebelum batch dibuat.
Status batch
Satu status, satu arti.
Status batch mengikuti kontrak API. Dashboard dan integrasi membaca nilai yang sama, jadi status di dashboard cocok dengan yang dikembalikan API.
- draft
- Batch sudah dibuat tapi belum masuk antrean.
- importing
- Daftar penerima lagi diproses.
- pending
- Batch nunggu giliran kirim.
- running
- Pesan sedang dikirim atau diproses gateway.
- completed
- Semua pesan sudah selesai diproses.
- failed
- Batch berhenti karena ada yang perlu dicek.
- cancelled
- Batch dihentikan sebelum selesai.
Kirim lewat API
Idempotency-Key wajib di setiap batch.
Kirim key unik bersama request. Kalau koneksi putus, ulangi dengan key yang sama supaya batch tidak terbentuk dua kali. Respons awal menyertakan batch_id untuk memantau status.
curl -s -X POST "$NOTIF_API_URL/api/v1/sms" \ -H "Authorization: Bearer $NOTIF_TOKEN" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: promo-november-001" \ -d '{ "name": "Promo November", "recipients": ["081234567890", "081234567891"], "type": "SMS", "message": "Promo spesial hari ini. Gunakan kode NOTIF20." }'{ "data": { "batch_id": "01JBCDEFGHJKMNPQRSTVWXYZ", "name": "Promo November", "type": "SMS", "status": "pending", "recipient_count": 2 }}Batas pemakaian
Batas yang bisa dicek sebelum kirim.
Geser tabel ke samping untuk melihat kolom lain.
| Item | Nilai | Catatan |
|---|---|---|
| Penerima per batch API | 1 sampai 1.000 | Nomornya harus unik dalam satu request. |
| Panjang pesan | 5.000 karakter | Berlaku untuk SMS, RCS, dan MMS. |
| Media RCS | 1 file, 25 MB | Tipe image, video, atau document. URL HTTPS maksimal 2.048 karakter. |
| Media MMS | 1 file, 25 MB | Tipe image, audio, atau document. MMS wajib pakai media. |
| Batas laju | 120 / menit | Dihitung per token dan per akun. Respons 429 bawa Retry-After. |
| Format ID | ULID | Dipakai untuk batch dan setiap pesan. |
Pertanyaan
Sebelum menekan kirim.
SMS lebih dari 160 karakter kena biaya berapa?
Dihitung per segmen. Komposer menampilkan perkiraan segmen GSM-7 atau Unicode sebelum pesan dikirim. Jumlah dan biaya aktual mengikuti gateway yang memproses pesan.
Apakah nomor duplikat dikirim dua kali?
Kalau membuat batch lewat API, nomor harus unik dalam satu request. Ini mencegah pengiriman ganda. Saat impor file, cek ringkasan penerima sebelum batch dijalankan.
Campaign bisa dijadwalkan?
Bisa. Di komposer, pilih waktu mulai selain opsi kirim sekarang. Batch akan menunggu jadwalnya sebelum diproses.
RCS dan MMS didukung?
Ya. RCS boleh satu file media opsional, MMS wajib satu file. Media diunduh dan disimpan sebelum batch dibuat.
Status pesan bisa dipantau lewat API?
Bisa. Pakai GET /api/v1/sms untuk daftar batch dan GET /api/v1/sms/batches/{id} untuk detail pesan. Tiap pesan punya status dan jumlah percobaan kirim.
Layanan lain
Siapkan campaign pertama.
Buka workspace SMS, upload daftar penerima, cek perkiraan segmen, lalu jalankan batch.