Menu dokumentasiPindah ke API v2
Dokumentasi APIEnglish

Pindah dari API lama ke API v2.

API lama tetap berjalan, dan jawabannya membawa header Deprecation dengan Link ke halaman ini. Pindah ke API v2 untuk satu kunci di semua nomor WhatsApp, kunci tes, Idempotency-Key, dan error yang seragam.

Langkah

  • Buat Kunci API tes di Pengaturan › API & Webhook, dengan izin yang dibutuhkan dan saluran nomor yang dulu dipakai kunci lama.
  • Ubah kode kirim sesuai tabel di bawah, lalu uji ke nomor uji.
  • Buat kunci Live, pasang di server, dan pastikan kiriman berjalan.
  • Cabut kunci lama di menu tempat kunci itu dibuat.

Padanan endpoint

  • POST /api/v1/send-text → POST /api/v2/messages dengan channel: "whatsapp_qr", type: "text", text.body.
  • POST /api/v1/send-media → POST /api/v2/messages dengan type image, video, audio, atau document, dan media (url atau base64 + mime, filename, caption).
  • GET /api/v1/messages/{requestId} → GET /api/v2/messages/{id} (id dari jawaban kirim).
  • POST /api/v1/waba/send-text dan send-media → POST /api/v2/messages dengan channel: "whatsapp_official".
  • POST /api/v1/waba/send-template → POST /api/v2/messages dengan type: "template"; kode OTP dengan type: "otp".
  • API Integrasi: kontak dan percakapan → GET /api/v2/contacts, GET /api/v2/conversations, POST /api/v2/conversations/{id}/messages. Laporan dan balasan draf tetap di API Integrasi.

Perubahan field

  • phone → to; message → text.body.
  • Perangkat kunci lama → from (id perangkat atau id nomor dari GET /api/v2/channels), atau batasi Kunci API ke nomor itu.
  • template, variables, headerVariables, mediaUrl, buttonUrl, couponCode → objek template dengan name, variables, header_variables, media_url, button_url, coupon_code.
  • code (OTP) → otp.code dengan otp.template.
  • Header X-API-Key → Authorization: Bearer kf_live_….

Jawaban dan error

Jawaban berhasil API v2 selalu { "data": … }; daftar menambah next_cursor untuk halaman berikutnya. Error selalu { "error": { "type", "code", "message", "param", "doc_url", "request_id" } } dengan kode huruf kecil, misalnya invalid_phone (dulu INVALID_PHONE). Daftar lengkap ada di halaman Error.

Webhook

Webhook kunci lama tetap dikirim selama kunci lama aktif. Webhook v2 diatur per bisnis di Pengaturan › API & Webhook › Webhook, dengan lebih banyak event, kirim ulang otomatis, dan log. Setelah webhook v2 berjalan, cabut kunci lama agar event tidak diterima dua kali.

  • send.result → message.status (status setiap pesan keluar).
  • messages → message.received; statuses → message.status.
  • Isi data berbeda: lihat panduan Event webhook.

Kirim WhatsApp dari sistem Anda lewat API Klik Flow.

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