Logo Mengirim Pesan Docs

Mengirim Pesan

Teks, lampiran, pengiriman massal, dan cara melacak statusnya.


Teks, media, pengiriman massal, dan cara melacak statusnya.


Format nomor tujuan

Semua bentuk ini diterima dan diseragamkan otomatis:

081234567890
+62 812-3456-7890
62812-3456-7890
6281234567890

Yang ditolak: nomor terlalu pendek, mengandung huruf, atau bukan nomor Indonesia yang valid.

Untuk grup, gunakan ID grup yang berakhiran @g.us. Cara mendapatkannya: kirim satu pesan ke grup dari HP Anda, lalu lihat kolom Nomor pada pesan masuk di Riwayat Pesan.

Pesan teks

curl -X POST https://wa.flustra.id/api/v1/messages/text \
  -H "X-Api-Key: $KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "081234567890",
    "message": "Pesanan #1234 sudah dikirim. Resi: JX0987654321"
  }'

Maksimal 4096 karakter. Baris baru pakai \n.

Format WhatsApp berlaku seperti biasa:

Tulis Hasil
*tebal* tebal
_miring_ miring
~coret~ coret
```kode``` kode

Pesan dengan lampiran

curl -X POST https://wa.flustra.id/api/v1/messages/media \
  -H "X-Api-Key: $KEY" \
  -F "to=081234567890" \
  -F "caption=Invoice Agustus 2026" \
  -F "type=document" \
  -F "file=@invoice.pdf"
type Untuk
image JPG, PNG
document PDF, Word, Excel, dan lainnya
video MP4
audio MP3, OGG

Batas ukuran 16 MB — itu batas dari WhatsApp, bukan dari kami.

Mengirim ke banyak nomor

curl -X POST https://wa.flustra.id/api/v1/messages/bulk \
  -H "X-Api-Key: $KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": ["081234567890", "081298765432", "085612345678"],
    "message": "Toko tutup tanggal 17 Agustus. Pesanan diproses kembali tanggal 18."
  }'

Balasannya:

{
  "success": true,
  "data": {
    "batch_id": "01K2CDEFGH7JKMNPQRSTVWXYZ",
    "queued": 3,
    "rejected": [],
    "message_ids": ["01K2C…", "01K2C…", "01K2C…"]
  }
}

Nomor yang formatnya rusak masuk ke rejected tanpa membatalkan sisanya. Nomor ganda dibuang otomatis.

Maksimal 1000 nomor per permintaan.

Kenapa pengiriman massal lambat

Setiap pesan diberi jeda beberapa detik sebelum dikirim. Broadcast 500 nomor wajar memakan 30–60 menit.

Ini disengaja dan tidak bisa dimatikan. Mengirim beruntun tanpa jeda adalah pola paling khas robot, dan cara paling cepat membuat nomor Anda diblokir WhatsApp. Jeda inilah yang menjaga nomor Anda tetap hidup.

Pantau kemajuannya lewat batch_id:

curl -H "X-Api-Key: $KEY" \
  "https://wa.flustra.id/api/v1/messages?batch_id=01K2CDEFGH7JKMNPQRSTVWXYZ"

Melacak status pengiriman

Setiap pesan punya ID. Simpan dan gunakan untuk memeriksa statusnya:

curl -H "X-Api-Key: $KEY" \
  https://wa.flustra.id/api/v1/messages/01K2CDEFGH7JKMNPQRSTVWXYZ
Status Arti
queued Menunggu giliran di antrean
sending Sedang dikirim
sent Sampai ke server WhatsApp (satu centang)
delivered Sampai ke HP tujuan (dua centang)
read Dibaca (dua centang biru)
failed Gagal — alasannya ada di kolom error

delivered dan read hanya muncul kalau penerima mengaktifkan laporan dibaca di WhatsApp mereka.

Cara yang lebih hemat: daripada memeriksa berulang-ulang, daftarkan webhook dan biarkan kami yang mengabari saat status berubah.

Kalau pengiriman gagal

Penyebab tersering:

Penyebab Solusi
Nomor tidak terdaftar di WhatsApp Periksa nomornya
Sesi terputus dan tidak pulih Cek halaman Sesi WhatsApp
Format nomor tidak valid Periksa formatnya
Kuota bulanan habis Lihat Batas & Kuota

Pesan yang gagal karena sesi terputus dicoba ulang otomatis sampai empat kali dengan jeda menaik. Baru setelah itu ditandai gagal.

Pesan yang gagal karena nomor tidak terdaftar tidak dicoba ulang — mengulanginya tidak akan menolong.

Hal yang sering keliru

Mengira balasan 202 berarti pesan sudah terkirim. 202 berarti "kami terima dan antrekan". Status sebenarnya menyusul.

Membuat perulangan sendiri untuk kirim massal. Gunakan /messages/bulk. Kalau Anda membuat perulangan sendiri tanpa jeda, nomor Anda berisiko diblokir.

Menahan permintaan pengguna sampai WhatsApp terkirim. Kirim pesannya lalu lanjutkan; jangan buat pelanggan menunggu di halaman checkout hanya karena notifikasi WhatsApp belum selesai.