Send Message (Standard WA)

Gunakan endpoint ini untuk mengirim pesan teks, gambar, dokumen, atau audio menggunakan nomor WhatsApp personal/business reguler Anda (Unofficial) yang sudah terhubung via QR Code di BaBlast.


Endpoint API

hljs http
POST https://api.bablast.id/send

Headers

HeaderValueDeskripsi
AuthorizationBearer <API_KEY>Global API Key atau Device/Legacy API Key Anda
Content-Typeapplication/jsonFormat payload request

Payload Parameter (JSON)

FieldTipeWajibDeskripsi
phoneStringYaNomor tujuan WhatsApp tujuan (misal: 6281234567890).
messageStringYaIsi pesan teks yang ingin dikirimkan.
sender_codeStringKondisionalKode perangkat (misal: SND-A1B2C3). Wajib untuk memilih sender pada Global API Key multi-perangkat; hilangkan jika API Key sudah terikat ke satu sender.
fileStringTidakURL publik file media (gambar, PDF, audio, video) yang ingin dikirimkan.
delayNumberTidakPenundaan pengiriman dalam detik (default: 0).
reference_idStringTidakID transaksi/invoice dari sistem Anda. Alias referenceId dan ref_id tetap diterima, tetapi reference_id adalah format yang direkomendasikan.
metadataObjectTidakObjek JSON kustom yang akan dikirimkan kembali pada callback webhook.

Untuk kompatibilitas, reference_id juga boleh ditempatkan di dalam metadata. Jika dikirim di kedua lokasi, nilai top-level digunakan. Pada webhook, nilai tersebut selalu dipisahkan menjadi data.reference_id dan dihapus dari data.metadata.


Contoh Request

1. Device API Key Mode (Per-Perangkat - Tanpa sender_code)

Jika API Key Anda terhubung langsung ke 1 perangkat WhatsApp spesifik:

hljs bash
curl -X POST https://api.bablast.id/send \
  -H "Authorization: Bearer bk_device_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "6281234567890",
    "message": "Halo, berikut adalah pemberitahuan pembaruan pesanan Anda.",
    "reference_id": "REF-2026-001",
    "metadata": {
      "order_id": "INV-2026-9901",
      "customer_tier": "VIP"
    }
  }'

2. Global API Key Mode (Multi-Perangkat - Dengan sender_code)

Jika menggunakan Global API Key yang dapat mengakses beberapa perangkat, pilih perangkat pengirim melalui sender_code:

hljs bash
curl -X POST https://api.bablast.id/send \
  -H "Authorization: Bearer bk_live_YOUR_GLOBAL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "sender_code": "SND-A1B2C3",
    "phone": "6281234567890",
    "message": "Silakan cek berkas bukti transaksi Anda.",
    "file": "https://example.com/invoice-123.pdf",
    "reference_id": "REF-2026-002",
    "metadata": {
      "order_id": "INV-2026-9901"
    }
  }'

Struktur Respons (200 OK)

hljs json
{
  "success": true,
  "message": "Berhasil",
  "data": {
    "id": "b53f1a24-94c6-4d1a-8e2b-18a7e0291abc",
    "message_id": "b53f1a24-94c6-4d1a-8e2b-18a7e0291abc",
    "sender_code": "SND-A1B2C3",
    "recipient": "6281234567890",
    "status": "queued",
    "metadata": {
      "reference_id": "REF-2026-001",
      "order_id": "INV-2026-9901",
      "customer_tier": "VIP"
    }
  }
}

Pesan yang dikirim melalui API publik akan dimasukkan ke antrean per-sender dan diproses secara asinkron. id dan message_id pada respons awal bernilai sama dan dapat dipakai untuk pelacakan internal. Untuk korelasi dengan transaksi aplikasi Anda, gunakan reference_id yang akan muncul sebagai data.reference_id pada webhook.