Cloud API dibuat di atas Graph API, jadi jika Anda tidak terbiasa menangani tanggapan kesalahan Graph API, lihat dokumentasi penanganan kesalahan Graph API.
Secara umum, kami merekomendasikan Anda untuk membangun logika penanganan kesalahan aplikasi Anda di seputar nilai code
dan properti payload details
. Properti ini dan nilai-nilainya lebih merupakan indikasi dari kesalahan yang mendasar.
Judul kode, yang tidak memiliki properti khusus dalam payload tanggapan kesalahan API, disertakan sebagai bagian dari nilai message
. Namun, kami merekomendasikan agar Anda tidak mengandalkan judul untuk logika penanganan kesalahan Anda karena judul pada akhirnya tidak akan digunakan lagi.
Kesalahan Cloud API dikembalikan baik secara sinkron sebagai tanggapan Graph API, secara asinkron melalui Webhook, atau terkadang melalui kedua metode tersebut.
Ini adalah praktik yang baik ketika bekerja dengan Cloud API bahwa Anda memantau tanggapan Graph API dan webhook messages
untuk penanganan kesalahan. Jika Anda berlangganan ke kolom webhook messages
, Anda akan menerima notifikasi kesalahan karena terjadi untuk jenis kesalahan asinkron yang didukung.
Kesalahan Cloud API dapat muncul di objek webhooks berikut:
Cloud API
entry.changes.value.errors
entry.changes.value.messages.errors
On-Premises API
errors
Sintaksis Tanggapan Kesalahan
{ "error": { "message": "<MESSAGE>", "type": "<TYPE>", "code": <CODE>, "error_data": { "messaging_product": "whatsapp", "details": "<DETAILS>" }, "error_subcode": <ERROR_SUBCODE> "fbtrace_id": "<FBTRACE_ID>" } }
Properti | Jenis Nilai | Deskripsi |
---|---|---|
| Bilangan bulat | Kode kesalahan. Kami merekomendasikan Anda untuk membuat penanganan kesalahan aplikasi Anda seputar kode kesalahan alih-alih subkode atau kode status tanggapan. |
| String | Deskripsi kesalahan dan deskripsi alasan yang paling mungkin untuk kesalahan tersebut. Mungkin juga berisi informasi tentang cara mengatasi kesalahan, seperti parameter mana yang tidak valid atau nilai apa yang dapat diterima. |
| Bilangan bulat | Dihentikan. Tidak akan diberikan dalam tanggapan v16.0+. Subkode Graph API. Tidak semua tanggapan akan berisi subkode, jadi kami merekomendasikan Anda membangun logika penanganan kesalahan Anda seputar properti |
| String | Lacak ID yang bisa Anda sertakan saat menghubungi Dukungan Langsung. ID dapat membantu kami melakukan debug kesalahan. |
| String | Kombinasi dari kode kesalahan dan judulnya. Contoh: |
| String | Produk berkirim pesan. Ini akan selalu menjadi string |
| String | Jenis kesalahan. |
{ "error": { "message": "(#130429) Rate limit hit", "type": "OAuthException", "code": 130429, "error_data": { "messaging_product": "whatsapp", "details": "Message failed to send because there were too many messages sent from this phone number in a short period of time" }, "error_subcode": 2494055, "fbtrace_id": "Az8or2yhqkZfEZ-_4Qn_Bam" } }
Kode | Deskripsi | Kemungkinan Solusi | Kode Status HTTP |
---|---|---|---|
AuthException | Kami tidak dapat mengautentikasi pengguna aplikasi. | Biasanya ini berarti token akses yang disertakan telah kedaluwarsa, tidak valid, atau pengguna aplikasi telah mengubah pengaturan untuk mencegah semua aplikasi mengakses data mereka. Kami merekomendasikan Anda untuk mendapatkan token akses baru. |
Unauthorized |
API Method | Masalah kemampuan atau izin. | Gunakan debugger token akses untuk memeriksa bahwa aplikasi Anda telah diberikan izin yang diperlukan oleh endpoint. Lihat Pemecahan Masalah. |
Kesalahan Server Internal |
Permission Denied | Izin tidak diberikan atau sudah dihapus. | Gunakan debugger token akses untuk memverifikasi apakah aplikasi Anda telah mendapatkan izin yang diperlukan dari endpoint. Lihat Pemecahan Masalah. Pastikan nomor telepon yang digunakan untuk <menetapkan kode publik bisnis sudah masuk daftar putih. |
Forbidden |
Access token has expired | Token akses Anda sudah kedaluwarsa. |
Belum disahkan | |
API Permission | Izin tidak diberikan atau sudah dihapus. | Gunakan debugger token akses untuk memverifikasi apakah aplikasi Anda telah mendapatkan izin yang diperlukan dari endpoint. Lihat Pemecahan Masalah. |
Forbidden |
Kode | Deskripsi | Kemungkinan Solusi | Kode Status HTTP |
---|---|---|---|
API Too Many Calls | Aplikasi ini telah mencapai batas laju panggilan API-nya. | Muat aplikasi di bagian Dasbor Aplikasi dan lihat bagian Batas Laju Aplikasi untuk memastikan bahwa aplikasi telah mencapai batas laju. Jika sudah, coba lagi nanti atau kurangi frekuensi atau jumlah kueri API yang dibuat aplikasi. |
Bad Request |
Rate limit issues | Akun WhatsApp Business telah mencapai batas laju. | Lihat Batas Laju akun WhatsApp Business. Coba lagi nanti atau kurangi frekuensi atau jumlah kueri API yang dibuat aplikasi. |
Bad Request |
Rate limit hit | Throughput pesan Cloud API telah tercapai. | Aplikasi ini telah mencapai batas throughput API. Lihat Throughput. Coba lagi nanti atau kurangi frekuensi pengiriman pesan oleh aplikasi. |
Bad Request |
Spam rate limit hit | Pesan gagal dikirim karena ada pembatasan jumlah pesan yang dapat dikirim dari nomor telepon ini. Ini mungkin karena terlalu banyak pesan sebelumnya yang diblokir atau ditandai sebagai spam. | Periksa status kualitas Anda di Pengelola WhatsApp dan kunjungi dokumentasi Batas Laju Berbasis Kualitas untuk informasi selengkapnya. |
Bad Request |
(Business Account, Consumer Account) pair rate limit hit | Terlalu banyak pesan yang dikirim dari nomor telepon pengirim ke nomor telepon penerima yang sama dalam waktu singkat. | Tunggu dan coba lagi operasi, jika Anda berniat untuk mengirim pesan ke nomor telepon yang sama. Anda masih dapat mengirim pesan ke nomor telepon yang berbeda tanpa menunggu |
Bad Request |
Account register deregister rate limit exceeded | Pendaftaran atau Penghapusan Pendaftaran gagal karena terlalu banyak upaya untuk nomor telepon ini dalam waktu singkat | Nomor telepon bisnis ini diblokir karena sudah mencapai batas upaya pendaftaran/penghapusan pendaftarannya. Coba lagi setelah nomor tidak diblokir. Lihat "Batas" di dokumen Pendaftaran. |
Bad Request |
Kode | Deskripsi | Kemungkinan Solusi | Kode Status HTTP |
---|---|---|---|
Temporarily blocked for policies violations | Akun WhatsApp Business yang terkait dengan aplikasi telah dilarang atau dinonaktifkan karena melanggar kebijakan platform. | Lihat dokumen Penegakan Kebijakan untuk mempelajari pelanggaran kebijakan dan cara menyelesaikannya. |
Forbidden |
Akun bisnis dibatasi untuk mengirim pesan kepada pengguna di negara ini. | Akun WhatsApp Business dibatasi untuk berkirim pesan kepada pengguna di negara tertentu. | Lihat Kebijakan Berkirim Pesan WhatsApp Business untuk mengetahui detail negara yang diizinkan untuk berkirim pesan dalam kategori bisnis Anda. |
Forbidden |
Account has been locked | Akun WhatsApp Business yang terkait dengan aplikasi telah dilarang atau dinonaktifkan karena melanggar kebijakan platform, atau kami tidak dapat memverifikasi data yang disertakan dalam permintaan terhadap set data di Akun WhatsApp Business (misalnya: PIN dua langkah yang disertakan dalam permintaan itu salah). | Lihat dokumen Penegakan Kebijakan untuk mempelajari tentang pelanggaran kebijakan dan cara menyelesaikannya. Anda juga dapat menggunakan Status Kesehatan API, yang mungkin memberikan insight tambahan tentang alasan tersebut atau berbagai alasan untuk penguncian akun. |
Forbidden |
Kode | Deskripsi | Kemungkinan Solusi | Kode Status HTTP |
---|---|---|---|
API Unknown | Permintaan tidak valid atau kemungkinan kesalahan server. | Periksa halaman Status Platform WhatsApp Business untuk melihat informasi status API. Jika tidak ada pemadaman server, periksa referensi endpoint dan verifikasikan bahwa permintaan Anda diformat dengan benar serta memenuhi semua persyaratan endpoint. |
Bad Request |
API Service | Sementara tidak berfungsi akibat waktu henti atau karena kelebihan beban. | Periksa halaman Status Platform WhatsApp Business untuk melihat informasi status API sebelum mencoba lagi. |
Layanan Tidak Tersedia |
Parameter value is not valid | Nomor telepon bisnis telah dihapus. | Verifikasikan bahwa nomor telepon bisnis sudah benar. |
Bad Request |
Invalid parameter | Permintaan termasuk satu atau beberapa parameter yang tidak didukung atau salah eja. | Lihat referensi endpoint untuk menentukan parameter mana yang didukung dan bagaimana ejaannya. Pastikan saat mengatur kode publik bisnis, kodenya adalah kode publik RSA 2048-bit yang valid dalam format PEM. Pastikan ID nomor telepon yang Anda daftarkan dan ID nomor telepon yang disimpan sebelumnya semuanya cocok. Pastikan parameter Anda tidak melebihi batasan panjang untuk jenis tersebut. |
Bad Request |
User's number is part of an experiment | Pesan tidak dikirim sebagai bagian dari eksperimen. | Lihat Eksperimen Pesan Marketing. |
Bad Request |
Terjadi kesalahan | Pesan gagal dikirim karena kesalahan yang tidak diketahui. Ketika menetapkan kode publik bisnis, pesan gagal untuk menghitung tanda tangan, gagal memanggil endpoint GraphQL, atau endpoint GraphQL menampilkan kesalahan. | Coba lagi. Jika kesalahan tetap terjadi, bukalah tiket Dukungan Langsung. |
Kesalahan Server Internal |
Access denied | Izin tidak diberikan atau sudah dihapus. | Gunakan debugger token akses untuk memverifikasi apakah aplikasi Anda telah mendapatkan izin yang diperlukan dari endpoint. Lihat Pemecahan Masalah. |
Forbidden |
Required parameter is missing | Permintaan kehilangan parameter wajib. | Lihat referensi endpoint untuk menentukan parameter mana yang diperlukan. |
Bad Request |
Nilai parameter tidak valid | Satu atau beberapa nilai parameter tidak valid. | Lihat referensi endpoint untuk menentukan nilai mana yang didukung untuk setiap parameter, dan lihat Nomor Telepon untuk mempelajari cara menambahkan nomor telepon ke Akun WhatsApp Business. |
Bad Request |
Service unavailable | Layanan untuk sementara tidak tersedia. | Periksa halaman Status Platform WhatsApp Business untuk melihat informasi status API sebelum mencoba lagi. |
Internal Server Error |
Recipient cannot be sender | Nomor telepon pengirim dan penerima sama. | Kirim pesan ke nomor telepon yang berbeda dari pengirim. |
Bad Request |
Message Undeliverable | Tidak dapat menyampaikan pesan. Alasan dapat meliputi:
| Dengan menggunakan metode komunikasi non-WhatsApp, mintalah pengguna WhatsApp untuk:
|
Bad Request |
Masalah pembayaran kelayakan bisnis | Terjadi kesalahan terkait metode pembayaran Anda. | Lihat Tentang Penagihan untuk Akun WhatsApp Business Anda dan verifikasikan bahwa Anda telah menyiapkan penagihan dengan benar. Masalah umum:
|
Bad Request |
Incorrect certificate | Pesan gagal terkirim karena kesalahan pendaftaran nomor telepon. | Daftarkan nomor telepon sebelum mencoba lagi. |
Internal Server Error |
Re-engagement message | Lebih dari 24 jam telah berlalu sejak terakhir penerima membalas nomor pengirim. | Kirimkan pesan yang diinisiasi oleh pelaku bisnis kepada penerima menggunakan template pesan sebagai gantinya. |
Bad Request |
Meta memilih untuk tidak mengirimkan. | Pesan ini tidak tersampaikan untuk menjaga interaksi ekosistem yang sehat. | Jangan langsung mencoba lagi jika Anda menerima kode kesalahan ini dan menyangka hal itu dikarenakan oleh batasan. Sebaliknya, coba lagi dengan peningkatan waktu yang lebih besar hingga pesan tersampaikan, karena batas tersebut mungkin berlaku untuk periode waktu yang berbeda. Lihat Batas Pesan Template Marketing Per Pengguna untuk mendapatkan informasi tambahan. |
Bad Request |
Unsupported message type | Jenis pesan tidak didukung. | Lihat Pesan untuk jenis pesan yang didukung sebelum mencoba lagi dengan jenis pesan yang didukung. |
Bad Request |
Media download error | Tidak dapat mengunduh media yang dikirim oleh pengguna. | Kami tidak dapat mengunduh media yang disertakan dalam pesan pengguna WhatsApp. Untuk informasi selengkapnya, lihat nilai Minta pengguna WhatsApp mengirimi Anda file media menggunakan metode non-WhatsApp. |
Bad Request |
Media upload error | Tidak dapat mengunggah media yang digunakan dalam pesan. | Kami tidak dapat mengunggah media untuk satu atau lebih alasan, seperti jenis media yang tidak didukung. Untuk informasi selengkapnya, lihat nilai Kami menyarankan Anda untuk memeriksa file media apa pun yang menyebabkan kesalahan dan mengonfirmasi bahwa file tersebut memang didukung. Contohnya, di UNIX Anda dapat menggunakan inspeksi file melalui baris perintah untuk menentukan jenis MIME-nya:
Anda kemudian dapat mengonfirmasikan apakah jenis MIME-nya didukung. Lihat Jenis Media yang Didukung. |
Bad Request |
Akun dalam mode pemeliharaan | Akun Bisnis dalam mode pemeliharaan | Akun WhatsApp Business dalam mode pemeliharaan. Salah satu alasannya mungkin karena akun sedang melakukan peningkatan throughput. |
Bad Request |
Template Param Count Mismatch | Jumlah nilai parameter variabel yang disertakan dalam permintaan tidak sesuai dengan jumlah parameter variabel yang ditentukan dalam template. | Lihat Pedoman Template Pesan dan pastikan permintaan mencakup semua nilai parameter variabel yang telah ditentukan dalam template. |
Bad Request |
Template does not exist | Template tidak ada dalam bahasa yang ditentukan atau template belum disetujui. | Pastikan template Anda telah disetujui dan nama template dan bahasa locale sudah benar. Pastikan Anda mengikuti pedoman template pesan. |
Tidak Ditemukan |
Template Hydrated Text Too Long | Teks yang diterjemahkan terlalu panjang. | Periksa Pengelola WhatsApp untuk memastikan bahwa template Anda telah diterjemahkan. Lihat Peringkat Kualitas dan Status Template. |
Bad Request |
Template Format Character Policy Violated | Konten template melanggar kebijakan WhatsApp. | Lihat Alasan Penolakan untuk menentukan kemungkinan alasan pelanggaran. |
Bad Request |
Template Parameter Format Mismatch | Nilai parameter variabel salah format. | Nilai parameter variabel yang disertakan dalam permintaan tidak menggunakan format yang ditentukan dalam template. Lihat Pedoman Template Pesan. |
Bad Request |
Template is Paused | Template dijeda karena berkualitas rendah sehingga tidak dapat dikirim dalam pesan template. | Edit template untuk meningkatkan kualitasnya dan coba lagi setelah disetujui. |
Bad Request |
Template is Disabled | Template telah dijeda terlalu sering karena berkualitas rendah dan sekarang dinonaktifkan secara permanen. | Buat template baru dengan konten yang berbeda. |
Bad Request |
Flow is blocked | Alur dalam keadaan diblokir. | Perbaiki Alurnya |
Bad Request |
Flow is throttled | Alur dalam keadaan terhambat dan 10 pesan yang menggunakan alur ini sudah dikirim dalam satu jam terakhir. | Perbaiki Alurnya |
Bad Request |
Incomplete Deregistration | Upaya penghapusan pendaftaran sebelumnya gagal. | Hapus pendaftaran nomor lagi sebelum mendaftarkan. |
Internal Server Error |
Server Temporarily Unavailable | Server sementara tidak tersedia. | Periksa halaman Status Platform WhatsApp Business untuk melihat informasi status API dan periksa nilai |
Service Unavailable |
Two step verification PIN Mismatch | PIN verifikasi dua langkah salah. | Periksa bahwa PIN verifikasi dua langkah yang disertakan dalam permintaan sudah benar. Untuk mereset PIN verifikasi dua langkah:
|
Bad Request |
Phone number re-verification needed | Nomor telepon harus diverifikasi sebelum mendaftar. | Verifikasikan nomor telepon sebelum mendaftarkannya. |
Bad Request |
Too Many two step verification PIN Guesses | Terlalu banyak menebak PIN verifikasi dua langkah untuk nomor telepon ini. | Coba lagi setelah jumlah waktu yang ditentukan dalam nilai tanggapan |
Bad Request |
Two step verification PIN Guessed Too Fast | PIN verifikasi dua langkah dimasukkan terlalu cepat. | Periksa nilai tanggapan |
Bad Request |
Phone number Not Registered | Nomor telepon tidak terdaftar di Platform WhatsApp Business. | Daftarkan nomor telepon sebelum mencoba lagi. |
Bad Request |
Please wait a few minutes before attempting to register this phone number | Nomor telepon yang Anda coba daftarkan baru-baru ini dihapus, dan penghapusan belum selesai. | Tunggu 5 menit sebelum mencoba kembali permintaan. |
Bad Request |
Generic user error | Pesan gagal dikirim karena kesalahan yang tidak diketahui dengan parameter permintaan Anda. | Lihat referensi endpoint untuk menentukan apakah Anda melakukan kueri endpoint menggunakan sintaksis yang benar. Hubungi dukungan pelanggan jika Anda terus mendapatkan kode kesalahan ini sebagai tanggapan. |
Bad Request |