Menu dokumentasiError
Dokumentasi APIEnglish

Kode error dan cara memperbaikinya.

Setiap jawaban gagal membawa status HTTP dan kode. API v2 selalu menulis { "error": { "type", "code", "message", "param", "doc_url", "request_id" } }; doc_url menuju baris kode itu di halaman ini.

Aturan umum

  • 4xx: perbaiki permintaannya dulu. Kirim ulang tanpa perubahan memberi hasil yang sama, kecuali 429 dan 409 request_in_progress.
  • 429: tunggu sesuai header Retry-After (detik), lalu kirim ulang.
  • 5xx atau koneksi putus: kirim ulang dengan jeda bertambah dan Idempotency-Key yang sama, agar tidak terkirim dua kali.
  • Sebutkan request_id (juga di header Request-Id) saat menghubungi dukungan Klik Flow.

Daftar kode

type mengelompokkan kode: authentication_error, permission_error, invalid_request_error, not_found_error, conflict_error, rate_limit_error, channel_error, dan api_error.

KodeHTTPArti dan cara memperbaiki
missing_keyauthentication_error401Kunci API belum dikirim. Kirim kunci di header Authorization: Bearer kf_live_… atau kf_test_….
key_invalidauthentication_error401Kunci API tidak dikenal. Kunci salah ketik atau bukan Kunci API. Buat kunci di Pengaturan › API & Webhook.
key_revokedauthentication_error401Kunci API sudah dicabut. Kunci sudah dicabut atau masa tenggang setelah diganti sudah habis. Pakai kunci barunya.
key_expiredauthentication_error401Kunci API kedaluwarsa. Masa berlaku kunci habis. Buat kunci baru.
member_inactiveauthentication_error401Pembuat kunci bukan anggota lagi. Pembuat kunci tidak lagi anggota bisnis ini. Owner perlu membuat kunci baru.
ip_not_allowedpermission_error403IP server tidak ada di daftar kunci. Tambahkan IP server Anda di daftar IP kunci, atau kosongkan daftarnya.
plan_no_apipermission_error403Paket belum memuat API untuk kunci live. Kunci live butuh paket dengan fitur API. Kunci tes bisa dipakai di semua paket.
tenant_blockedpermission_error403Akses bisnis ditangguhkan. Akses bisnis ini sedang ditangguhkan. Hubungi dukungan Klik Flow.
rate_limitedrate_limit_error429Terlalu banyak permintaan per menit. Tunggu sesuai header Retry-After (detik), lalu kirim ulang.
internal_errorapi_error500Gangguan di Klik Flow. Ada gangguan di Klik Flow. Kirim ulang dengan Idempotency-Key yang sama; sebutkan request_id bila terulang.
scope_missingpermission_error403Kunci tidak punya izin ini. Kunci ini tidak punya izin untuk aksi ini. Buat kunci dengan izin yang tertulis di referensi.
permission_missingpermission_error403Role pembuat kunci tidak punya izin ini. Role pembuat kunci tidak punya izin ini. Owner bisa menambahkannya di Pengaturan › Role & hak akses.
invalid_jsoninvalid_request_error400Body bukan JSON yang sah. Kirim body JSON dengan header Content-Type: application/json.
idempotency_key_invalidinvalid_request_error400Idempotency-Key tidak sah. Idempotency-Key 1–255 karakter tanpa spasi, misalnya UUID.
idempotency_conflictconflict_error409Idempotency-Key dipakai untuk isi lain. Idempotency-Key ini sudah dipakai untuk permintaan lain. Pakai kunci baru untuk permintaan baru.
request_in_progressconflict_error409Permintaan yang sama masih diproses. Permintaan dengan Idempotency-Key yang sama masih diproses. Coba lagi beberapa detik lagi.
invalid_requestinvalid_request_error422Field tidak sah. Field di param tidak sah. Periksa tipe dan nilainya di referensi.
invalid_phoneinvalid_request_error422Nomor tujuan tidak sah. Pakai 8–15 digit dengan kode negara, misalnya 6281234567890.
message_too_longinvalid_request_error422Pesan terlalu panjang. Maksimal 4.000 karakter untuk teks dan keterangan.
media_too_largeinvalid_request_error413File terlalu besar. Perkecil file sesuai batas jenisnya.
test_number_requiredpermission_error403Kunci tes hanya ke nomor uji. Kunci tes hanya mengirim ke nomor uji. Tambahkan nomornya di Pengaturan › API & Webhook › Nomor uji.
channel_not_allowedpermission_error403Saluran tidak boleh dipakai kunci ini. Kunci ini dibatasi ke saluran lain, atau role pembuatnya tidak boleh memakai saluran ini.
channel_unavailablechannel_error409Tidak ada nomor WhatsApp yang bisa dipakai. Tidak ada nomor WhatsApp tersambung yang boleh dipakai kunci ini. Sambungkan di Channel atau isi from.
channel_pausedpermission_error403Saluran sedang dijeda. Saluran dijeda karena melebihi kuota paket. Owner bisa membuka jedanya di Channel.
window_closedchannel_error409Di luar jendela 24 jam. Di luar 24 jam sejak pelanggan terakhir menulis. Kirim type: template.
contact_blockedchannel_error422Kontak diblokir atau berhenti berlangganan. Kontak diblokir atau berhenti berlangganan, jadi tidak dikirimi pesan.
daily_limitrate_limit_error429Batas pesan harian tercapai. Batas pesan harian tercapai. Tunggu sesuai Retry-After, atau naikkan paket.
send_failedchannel_error502Pesan gagal terkirim. Pesan dibuat tapi gagal terkirim. Lihat message, lalu kirim ulang dengan Idempotency-Key yang sama.
not_foundnot_found_error404Tidak ditemukan. Id tidak ada atau di luar cakupan pembuat kunci.
template_not_foundnot_found_error404Template tidak ditemukan atau belum disetujui. Template tidak ada atau belum disetujui. Periksa nama dan bahasanya di GET /api/v2/templates.
template_valuesinvalid_request_error422Variabel template belum lengkap. Isi semua variabel template yang disebut di message.
template_not_supportedinvalid_request_error422Jenis template belum didukung. Jenis template ini belum bisa dikirim lewat API.
otp_code_invalidinvalid_request_error422Kode OTP tidak sah. Isi otp.code 1–15 huruf, angka, atau tanda -.
new_chat_limitrate_limit_error429Batas chat ke nomor baru tercapai. Batas chat ke nomor baru hari ini tercapai untuk kunci ini.
channel_refusedchannel_error502WhatsApp menolak pesan. WhatsApp menolak pesan. Alasannya ada di message.
cursor_invalidinvalid_request_error400Cursor tidak sah. Pakai next_cursor dari jawaban sebelumnya apa adanya.
live_key_requiredpermission_error403Butuh kunci live. Mengelola webhook butuh kunci live, karena webhook menerima event sungguhan. Kunci tes tetap bisa membaca dan mengirim ke nomor uji.
webhook_limitinvalid_request_error422Batas jumlah webhook tercapai. Maksimal 5 webhook per bisnis. Hapus webhook yang tidak dipakai lebih dulu.
console_test_onlypermission_error403Konsol Coba hanya untuk kunci tes. Konsol Coba di docs hanya menerima kunci tes (kf_test_…). Panggil API dengan kunci live dari server Anda.

Kirim WhatsApp dari sistem Anda lewat API Klik Flow.

Mulai dengan paket Free. Ajak tim setelah ruang kerja siap.