Dokumentasi API

REST API sederhana untuk mengirim pesan WhatsApp, mengecek perangkat, dan status pesan.

Autentikasi

Setiap request membawa token perangkat pada header Authorization. Token ada di dashboard, menu Device. Token rotator juga bisa dipakai untuk membagi pengiriman ke beberapa perangkat.

Authorization: TOKEN

Base URL: https://synerwa.net · Body: application/x-www-form-urlencoded, multipart/form-data, atau application/json

POST /send

Mengirim pesan teks atau lampiran ke satu atau banyak nomor. Pesan masuk antrian dan dikirim berurutan.

ParameterSifatKeterangan
targetwajibNomor tujuan. Beberapa dipisah koma. Format nomor|nama|var1|var2|var3 untuk personalisasi. Awalan 08 / 62 / +62 diterima.
messagewajib*Isi pesan. Mendukung {name}, {var1}–{var3}. *Boleh kosong bila mengirim file.
urlopsionalURL file publik (http/https) untuk dikirim sebagai lampiran.
fileopsionalUnggah file langsung (multipart/form-data).
filenameopsionalNama file yang tampil di penerima.
delayopsionalJeda antar target dalam detik, contoh 5 atau acak 2-8.
scheduleopsionalUnix timestamp (detik) untuk kirim terjadwal.
countryCodeopsionalKode negara default untuk nomor berawalan 0. Default 62.
curl -X POST https://synerwa.net/send \
  -H "Authorization: TOKEN" \
  -d "target=081234567890|Budi" \
  -d "message=Halo {name}, pesanan Anda sudah dikirim."

Respons sukses:

{
  "status": true,
  "detail": "success! message in queue",
  "id": ["128"],
  "process": "pending",
  "target": ["6281234567890"],
  "type": "text",
  "attachment": false
}

Tipe lampiran dideteksi dari ekstensi file: image, video, audio, document. Pesan ber-lampiran memakai kuota attachment, terpisah dari kuota teks.

POST /device

Informasi perangkat: status koneksi, paket, sisa kuota, dan masa aktif.

curl -X POST https://synerwa.net/device -H "Authorization: TOKEN"

{ "status": true, "device": "6281200000000", "device_status": "connected",
  "package": "Super", "quota": 9840, "media_quota": 9975, "expired": "2026-10-23 08:00:00" }

POST /status

Cek status satu pesan berdasarkan id dari respons /send.

curl -X POST https://synerwa.net/status -H "Authorization: TOKEN" -d "id=128"

{ "status": true, "data": { "id": 128, "target": "6281234567890", "type": "text",
  "status": "sent", "error": null, "created_at": "2026-09-23 08:00:00" } }

Nilai status: pending, sending, sent, failed.

Webhook

Isi Webhook URL di pengaturan perangkat untuk menerima pesan masuk sebagai JSON. Format lengkap ada di panduan webhook.

Error

Request gagal mengembalikan HTTP 400 dengan {"status": false, "reason": "..."}.

reasonArti
invalid tokenToken salah atau perangkat dihapus
target invalidTarget kosong
quota tidak cukupKuota teks habis
kuota attachment tidak cukupKuota lampiran habis atau paket tidak mendukung lampiran
package expiredMasa aktif paket habis

Contoh kode

PHP · Node.js & Python · OTP

Coba Synerwa gratis

Daftar, scan QR, dan kirim 1.000 pesan pertama tanpa biaya.

Buat Akun Gratis