FAQ API WhatsApp
Seberapa cepat saya bisa mulai mengirim pesan WhatsApp?
Instal SDK, ambil API key, dan panggil endpoint pengiriman dengan template yang sudah disetujui. Bird menyediakan nomor pengirim terkelola, sehingga tidak ada langkah penyediaan nomor sebelum pengiriman pertama Anda.
Apa saja yang termasuk dalam API WhatsApp Bird?
Satu endpoint pengiriman yang menerima template atau konten bebas, katalog template yang telah disetujui, event pengiriman dan tanda terima baca melalui API dan webhook, timeline event per pesan, pesan masuk dan media, metrik pengiriman agregat, dan nomor pengirim yang dikelola Bird untuk pengiriman pertama Anda. API key dan host regional yang sama dengan Bird Email dan SMS.
Apa arti respons 202?
Artinya Bird menerima pesan Anda dan akan mengirimkannya secara asinkron. 202 bukan konfirmasi pengiriman. Pengiriman, tanda baca, dan kegagalan akan datang kemudian sebagai event yang dapat Anda poll atau terima melalui webhook.
Bisakah saya mengirim pesan teks bebas, atau hanya template?
Keduanya. Template dapat menjangkau siapa saja kapan saja, itulah mengapa template adalah satu-satunya cara untuk memulai percakapan. Konten bebas menjangkau kontak di dalam jendela layanan pelanggan 24 jam yang dibuka oleh pesan mereka sendiri, dan hanya dari nomor yang dimiliki workspace Anda. Bird tidak melacak jendela tersebut untuk Anda, jadi pengiriman konten bebas di luar jendela akan diterima lalu gagal dengan service_window_expired.
Apakah WhatsApp masuk didukung?
Ya. Pesan dari kontak masuk melalui webhook whatsapp.received, tercatat di log WhatsApp di dasbor, dan dihitung di tab Inbound pada halaman Metrics. Pesan masuk hanya diterima di nomor Anda sendiri: nomor yang dikelola Bird digunakan bersama antar workspace, jadi pesan yang dikirim ke nomor tersebut tidak dicatat untuk workspace Anda.
Bagaimana harga WhatsApp?
Per pesan, berdasarkan kategori template (autentikasi, utilitas, atau pemasaran) dan negara penerima. Biaya dikenakan saat Bird menerima pesan, bukan saat penerima membacanya.
Apa itu harga autentikasi internasional?
Tarif per-pesan yang lebih tinggi yang dikenakan Meta ketika bisnis Anda berlokasi di luar negara penerima dan Anda mengirim template autentikasi. Kelayakan dimulai setelah Anda mengirim lebih dari 750.000 pesan template autentikasi kepada pengguna di satu negara selama periode bergulir 30 hari. Lokasi bisnis utama Anda, yang ditetapkan di Meta Business Manager, menentukan pengiriman mana yang memenuhi syarat.
Apakah ada biaya terpisah untuk nomor pengirim bersama?
Pengirim bersama selalu dikenakan tarif internasional untuk template autentikasi, terlepas dari ambang batas volume Anda. Semua nomor WhatsApp saat ini dikelola oleh Bird, sehingga tarif ini berlaku untuk pengiriman autentikasi di mana bisnis Anda berada di luar negara penerima.
Di mana saya bisa melihat pengeluaran saya?
Halaman Penggunaan dan Pengeluaran di dasbor menampilkan biaya WhatsApp Anda. Log pesan menunjukkan kategori dan biaya pada setiap pesan individual setelah dihitung harganya.
Apakah ada endpoint pengiriman batch?
Tidak. Setiap pesan WhatsApp adalah panggilan API terpisah ke POST /v1/whatsapp/messages dengan satu penerima. Untuk mengirim ke banyak penerima, lakukan loop pada endpoint pengiriman.
Berapa batas rate-nya?
Grup rate whatsapp_send berlaku untuk endpoint pengiriman. Setiap respons menyertakan header IETF RateLimit dengan kuota tersisa dan waktu reset, jadi sesuaikan kecepatan berdasarkan itu, bukan angka yang di-hardcode. Paket berbayar meningkatkan rate dasar.
Bisakah saya mengirim konten non-teks seperti gambar atau video?
Ya, sebagai konten bebas. Endpoint pengiriman mendukung gambar, video, audio, stiker, dokumen, dan lokasi di samping teks. Seperti pengiriman konten bebas lainnya, setiap pengiriman memerlukan jendela layanan pelanggan 24 jam yang terbuka dan nomor yang dimiliki workspace Anda. Parameter template sendiri tetap berbasis teks.
Apa itu template WhatsApp?
Struktur pesan yang telah disetujui sebelumnya dan didaftarkan ke WhatsApp melalui Meta. Setiap template memiliki nama, satu atau lebih bahasa, kategori (autentikasi, utilitas, atau pemasaran), dan variabel placeholder yang Anda isi saat pengiriman. Bird menyediakan katalog terkelola yang bisa langsung Anda gunakan, dan Anda dapat membuat template sendiri setelah menghubungkan WhatsApp Business Account.
Siapa yang menyetujui template?
Meta meninjau dan menyetujui setiap template, baik yang dikirimkan oleh Bird maupun oleh Anda. Sebuah template bisa aktif secara keseluruhan tetapi memiliki bahasa tertentu dalam status ditolak atau dijeda, jadi periksa status per bahasa sebelum mengirim dalam bahasa tersebut.
Apa saja kategori template?
Autentikasi (kode sandi sekali pakai dan alur login), utilitas (pembaruan pesanan, notifikasi akun), dan pemasaran (promosi dan penawaran). Kategori menentukan nomor pengirim mana yang dipilih Bird dan bagaimana pesan dihitung harganya.
Bagaimana cara mengisi variabel template?
Kirimkan array components dengan parameter body dan button saat mengirim. Parameter bisa berupa named (dicocokkan berdasarkan key seperti 'name') atau positional (dicocokkan berdasarkan indeks). Parameter named lebih aman ketika urutan variabel template mungkin berubah.
Bisakah saya membuat template sendiri?
Ya, di halaman Templates di dasbor, setelah workspace Anda menghubungkan WhatsApp Business Account milik sendiri. Builder saat ini mencakup teks isi dalam satu bahasa. Pembuatan melalui API publik belum tersedia, tetapi endpoint pengiriman menerima template apa pun yang dapat dikirim oleh workspace Anda, baik terkelola maupun milik Anda sendiri.
Apakah saya perlu menyediakan nomor WhatsApp sendiri?
Tidak. Bird menyediakan nomor pengirim terkelola. Template autentikasi dikirim dari nomor khusus, sedangkan template utilitas dan pemasaran berbagi nomor notifikasi. Halaman Numbers di dashboard menampilkan nomor yang tersedia untuk workspace Anda.
Bisakah saya menggunakan nomor sendiri?
Ya, dan menghubungkan nomor Anda sendiri adalah yang membuka kemampuan mengirim sebagai merek Anda sendiri: template Anda sendiri, konten bebas di dalam jendela layanan pelanggan yang terbuka, dan pesan masuk. Nomor yang dikelola Bird digunakan bersama antar workspace dan hanya membawa template terkelola, jadi anggap nomor tersebut sebagai jalur tanpa setup untuk pengiriman pertama, bukan sebagai kondisi akhir.
Bagaimana Bird memilih nomor pengirim?
Untuk template terkelola, berdasarkan kategorinya: autentikasi menggunakan nomor pengirim khusus, sementara utilitas dan pemasaran berbagi nomor notifikasi. Yang lainnya menyebutkan pengirimnya sendiri di field from, yang harus berupa nomor yang dimiliki workspace Anda, dan template yang Anda buat harus berada di WhatsApp Business Account yang sama dengan nomor tersebut.
Bagaimana cara mengirim pesan WhatsApp?
POST ke /v1/whatsapp/messages dengan nomor telepon E.164 penerima, slug template, dan nilai untuk variabel template. Bird memvalidasi permintaan, mengembalikan 202 dengan ID pesan, dan mengirimkan secara asinkron.
Apa yang terjadi jika saya mengulangi pengiriman setelah timeout?
Sertakan header Idempotency-Key dan permintaan yang diulang akan mengembalikan hasil asli alih-alih mengirim dua kali. Tanpa header tersebut, pengulangan dianggap sebagai pesan baru dan penerima mendapat duplikat.
Bisakah saya melampirkan tag atau metadata ke pesan?
Ya. Tag adalah hingga 20 label terstruktur yang dapat Anda filter dan kelompokkan di log pesan dan metrik. Metadata adalah JSON arbitrary (hingga 2 KB) yang dikembalikan pada pesan dan event-nya, berguna untuk menghubungkan pengiriman dengan sistem Anda sendiri.
Bagaimana cara mengetahui apakah pesan sudah terkirim?
Setiap perubahan status memicu event webhook: accepted, sent, delivered, read, failed, atau rejected. Anda juga dapat melakukan polling timeline event pesan melalui API. Status delivered berarti WhatsApp mengonfirmasi perangkat penerima telah menerimanya.
Event apa saja yang dihasilkan oleh pesan WhatsApp?
Enam event siklus hidup: whatsapp.accepted (Bird mengantrekannya), whatsapp.sent (dikirim ke WhatsApp), whatsapp.delivered (perangkat penerima menerimanya), whatsapp.read (penerima membukanya), whatsapp.failed (WhatsApp menolaknya setelah pengiriman), dan whatsapp.rejected (Bird menolaknya sebelum pengiriman, tidak dikenakan biaya).
Apakah tanda baca sama dengan pengiriman?
Tidak. Event read berarti penerima membuka pesan, tetapi status pesan tetap delivered. Read dilaporkan secara terpisah sebagai timestamp dan event whatsapp.read, bukan sebagai perubahan status.
Apa perbedaan antara failed dan rejected?
Rejected berarti Bird menolak pesan sebelum mengirimkannya ke WhatsApp, sehingga Anda tidak dikenakan biaya. Failed berarti Bird mengirimkannya tetapi WhatsApp menolak pengiriman. Keduanya menyertakan objek error dengan kode, deskripsi, dan kode error Meta jika berlaku.
Bagaimana cara mengonsumsi event?
Dua cara: tarik timeline untuk pesan tertentu dengan GET /v1/whatsapp/messages/{id}/events, atau daftarkan endpoint webhook ke tipe event whatsapp.* dan terima secara real-time. Halaman Messages di dashboard juga menampilkan timeline event per pesan.
Di mana saya bisa melihat metrik agregat WhatsApp?
Di halaman Metrics pada aplikasi dashboard WhatsApp. Halaman ini menampilkan tingkat pengiriman, tingkat kegagalan, volume yang diterima, dan latensi pengiriman (pemrosesan dan end-to-end) untuk semua yang dikirim oleh workspace Anda.
Rincian apa saja yang tersedia?
Berdasarkan nomor pengirim, berdasarkan template, berdasarkan kategori template, dan berdasarkan tag. Tingkat kegagalan yang terlihat baik secara keseluruhan sering kali ternyata disebabkan oleh satu template atau satu tag yang menghasilkan sebagian besar error.
Angka latensi apa saja yang dilacak?
Dua: latensi pemrosesan (sisi Bird, dari penerimaan hingga pengiriman) dan latensi total (end-to-end, dari penerimaan hingga tanda terima pengiriman). Keduanya dilaporkan pada p50, p95, dan p99.
Apakah ada API metrik publik?
Belum untuk statistik agregat. Anda dapat membuat agregasi sendiri dari event webhook atau dari API daftar pesan, yang memuat status dan timeline event untuk setiap pesan.
Apakah WhatsApp terenkripsi secara end-to-end?
WhatsApp menyediakan enkripsi end-to-end untuk pesan antara pengirim dan perangkat penerima. Panggilan API Anda ke Bird melalui HTTPS, dan event webhook yang dikirim Bird kepada Anda ditandatangani dengan HMAC.
Bagaimana cara memverifikasi bahwa webhook benar-benar berasal dari Bird?
Setiap event ditandatangani dengan HMAC. Verifikasi tanda tangan dengan secret endpoint Anda sebelum memproses payload, dan rotasi secret tersebut dari dasbor saat diperlukan.
Di mana data saya disimpan?
Di region tempat organisasi Anda di-hosting, baik us1 atau eu1. API key Anda membawa informasi ini di awalannya (bk_us1_, bk_eu1_), sehingga SDK dan CLI memilih endpoint yang tepat tanpa Anda perlu mengonfigurasinya.
Apa yang bisa dilakukan API key?
Hanya apa yang Anda tentukan cakupannya. Sebuah key membawa daftar scope, masing-masing pada level read atau write, sehingga key yang mengirim pesan WhatsApp tidak dapat mengelola nomor Anda atau membaca channel lain. Key juga mendukung IP allowlist dan rotasi aman dengan grace period yang dapat dikonfigurasi.
Di mana saya bisa mendapatkan dokumentasi keamanan dan kepatuhan?
Sertifikasi dan dokumentasi keamanan tersedia di trust.bird.com. Perjanjian pemrosesan data, pernyataan privasi, dan kebijakan penggunaan yang dapat diterima tersedia di bird.com/legal. Untuk kuesioner vendor, tim akun Bird Anda yang menanganinya.