Langsung ke konten
Wbiztool

API Pesan

API Batalkan Pesan

Batalkan pesan WhatsApp yang belum terkirim. Gunakan untuk menghentikan pengingat terjadwal setelah janji temu dibatalkan, atau untuk menarik kembali pesan dalam antrean yang terkirim karena kesalahan.

POSThttps://wbiztool.com/api/v1/cancel_msg/

Body: JSON atau field formulir

Anda dapat membatalkan pesan apa pun yang masih menunggu dikirim (status 0, Created): pesan terjadwal, serta pesan yang dimasukkan ke antrean oleh Kirim pesan, Kirim ke grup, atau Kirim ke banyak nomor. Pesan yang sudah terkirim tidak dapat ditarik kembali. Jika bot sedang mengirim pesan tersebut tepat pada saat itu, pesan mungkin tetap terkirim, jadi untuk pembatalan yang penting, pastikan dengan Status pesan.

Contoh singkat#

curl -X POST https://wbiztool.com/api/v1/cancel_msg/ \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": 12345,
    "api_key": "YOUR_API_KEY",
    "msg_id": 9817263
  }'

Ganti 12345 dan YOUR_API_KEY dengan nilai Anda sendiri, dan 9817263 dengan msg_id yang Anda dapatkan saat mengirim atau menjadwalkan pesan.

Parameter request#

client_idintegerwajib

API Client ID Anda dari Settings → API keys (Pengaturan → Kunci API).

api_keystringwajib

API key Anda dari halaman yang sama.

msg_idintegerwajib

msg_id yang dikembalikan oleh request kirim atau jadwalkan. ID ini harus termasuk dalam workspace API key Anda.

Endpoint ini tidak memerlukan whatsapp_client.

Menggunakan klien resmi#

Klien Python dan Node.js memanggil endpoint ini untuk Anda.

from wbiztool_client import WbizToolClient

client = WbizToolClient(api_key="YOUR_API_KEY", client_id=12345)

result = client.cancel_message(msg_id=9817263)
print(result)

Kedua klien melempar error pada error autentikasi (HTTP 400/403): Python memunculkan requests.HTTPError, dan Node.js melempar API error: 400 - {…}. Balasan Msg has been … dikembalikan sebagai hasil biasa dengan status: 0.

Respons#

Request yang berhasil mengembalikan HTTP 200:

{
  "message": "Cancelled",
  "status": 1
}
FieldTipeDeskripsi
statusinteger1 jika pesan dibatalkan, 0 jika tidak.
messagestringCancelled jika berhasil, selain itu berisi alasannya.

Setelah dibatalkan, Status pesan melaporkan pesan tersebut sebagai 3 (Cancelled). Pesan yang dibatalkan tidak dikirim, tidak memicu webhook-nya, dan tidak lagi mengurangi sisa kredit Anda.

Error#

Sebagian besar error mengembalikan HTTP 200 dengan status bernilai 0, jadi selalu periksa status di body:

{ "message": "Msg has been Sent", "status": 0 }
PesanCara memperbaikinya
Msg has been SentPesan sudah terkirim. Pesan tidak dapat dibatalkan.
Msg has been FailedPesan sudah gagal, jadi tidak ada yang perlu dibatalkan.
Msg has been CancelledPesan sudah dibatalkan sebelumnya.
Msg has been ExpiredPesan sudah kedaluwarsa sebelum terkirim, jadi tidak ada yang perlu dibatalkan.
No msg found for given msg_idPeriksa msg_id. ID harus berupa angka dan termasuk dalam workspace yang sama dengan API key Anda.
Msg_id cant be nullTambahkan msg_id.
Auth ErrorKirim client_id dan api_key.
Invalid Client IdKirim client_id sebagai angka. Dikembalikan dengan HTTP 403.
Auth Error: invalid api keyPastikan key tersebut ada, belum dihapus, dan milik client_id ini. Dikembalikan dengan HTTP 400.
Invalid JSON format: …Body JSON tidak valid, sering kali karena koma di akhir, atau Anda mengirim field formulir tanpa client_id.
Objek kosong {}Body JSON dikirim dengan metode selain POST.

Tips#

  • Simpan setiap msg_id: Anda memerlukannya untuk membatalkan. Untuk Kirim ke banyak nomor, batalkan setiap msg_id di respons secara terpisah.
  • Batalkan lebih awal: pesan yang sudah terkirim tidak bisa ditarik, jadi batalkan pesan terjadwal segera setelah Anda tahu pesan tersebut tidak lagi diperlukan.
  • Mengubah jadwal: tidak ada endpoint untuk mengubah waktu jadwal. Batalkan pesan lalu jadwalkan pesan baru.
  • Anggap pesan berstatus final sebagai selesai: balasan Msg has been … berarti pesan sudah tidak ada di antrean, jadi Anda tidak perlu mencoba ulang.