📖 Panduan Resmi

Panduan & Peringatan.

Baca halaman ini sebelum mulai — berisi cara pakai, batasan teknis, dan peringatan penting soal status tidak resmi OpenWA.

Unofficial · Gunakan dengan bijak

OpenWA adalah layanan WhatsApp API tidak resmi. Kami bukan produk dari WhatsApp / Meta, dan tidak berafiliasi dengan mereka. OpenWA menggunakan protokol WhatsApp Web (multi-device) lewat library open-source (Baileys) — teknik yang sama dipakai aplikasi sejenis di Indonesia (Fonnte, Wablas, Wagateway, dll).

Konsekuensinya: nomor WhatsApp yang terhubung ke OpenWA memiliki risiko lebih tinggi untuk dibanned atau dibatasi oleh WhatsApp, terutama bila dipakai untuk spam, blast massal ke kontak yang tidak mengharapkan pesan, atau aktivitas yang melanggar Terms of Service WhatsApp.

Kami menyediakan tool. Bagaimana Anda menggunakannya — itu tanggung jawab Anda. Pakailah dengan bijakdan beretika kepada kontak penerima pesan.

Cara Kerja Singkat

  1. Scan QR di dashboard — sama seperti WhatsApp Web. Nomor WhatsApp Anda tetap aktif di HP, OpenWA jadi perangkat tambahan.
  2. Kirim via REST API — POST ke https://openwa.click/api/send dengan nomor tujuan + pesan.
  3. Opsional: AI reply — aktifkan auto-reply pakai Claude Haiku via XessOne AI, pesan masuk dibalas natural dalam Bahasa Indonesia.

1. Setup Nomor (Scan QR)

  1. Buka /dashboard
  2. Session default adalah main — atau klik + Tambah Nomor untuk session baru.
  3. Di HP: buka WhatsApp → Settings → Linked Devices → Link a Device.
  4. Scan QR code yang muncul di dashboard.
  5. Status berubah ke open → siap pakai.
💡 Tips: Untuk mengurangi risiko ban, gunakan nomor baru yang terpisah dari nomor pribadi utama. Aktifkan nomor itu dulu 1–2 minggu sebagai nomor biasa (chat, grup, dll) sebelum pakai OpenWA — ini disebut warm-up period.

2. Kirim Pesan Pertama

curl -X POST https://openwa.click/api/send \
  -H "Content-Type: application/json" \
  -H "x-api-key: owa_YOUR_KEY" \
  -d '{
    "session": "main",
    "to": "628123456789",
    "message": "Halo dari OpenWA!"
  }'

Format nomor: kode negara tanpa + atau spasi. Indonesia diawali 62.

3. Kirim Media (Gambar / Video / Dokumen / Sticker)

curl -X POST https://openwa.click/api/send/media \
  -H "x-api-key: owa_YOUR_KEY" \
  -d '{
    "to": "628123456789",
    "kind": "image",
    "url": "https://example.com/foto.jpg",
    "caption": "Promo hari ini"
  }'

kind: image, video, document, audio, sticker. Source: url atau base64. Gambar otomatis dikompresi (max 1920px, JPEG 82%). Sticker otomatis dikonversi ke WebP 512×512.

4. Broadcast + Template + Jadwal

# 1. Buat template
curl -X POST https://openwa.click/api/templates \
  -H "x-api-key: owa_YOUR_KEY" \
  -d '{
    "session": "main",
    "name": "greeting",
    "body": "Halo {{nama}}, terima kasih order {{produk}}!"
  }'

# 2. Kirim broadcast (terjadwal opsional)
curl -X POST https://openwa.click/api/broadcast \
  -H "x-api-key: owa_YOUR_KEY" \
  -d '{
    "session": "main",
    "name": "promo oktober",
    "templateId": "tpl_xxx",
    "scheduledAt": "2026-04-21T09:00:00Z",
    "recipients": [
      { "phone": "628111", "vars": { "nama": "Budi", "produk": "Batik" } },
      { "phone": "628222", "vars": { "nama": "Siti", "produk": "Sepatu" } }
    ]
  }'

Worker menjalankan antrian tiap 5 detik, kirim 1-per-1 dengan jeda acak 3–12 detik. Cap hari ini: 300 pesan/session/hari (warm-up) — naikkan bertahap setelah nomor aktif 1–2 minggu.

5. Mention @semua di Grup

curl -X POST https://openwa.click/api/send \
  -H "x-api-key: owa_YOUR_KEY" \
  -d '{
    "session": "main",
    "to": "120363xxxxxxx@g.us",
    "message": "Meeting jam 2 ya tim",
    "mentions": ["all"]
  }'

Kata kunci all / @everyone / @semua → OpenWA fetch semua anggota grup dan mention secara ghost (tidak tampil @628… di teks). List grup: GET /api/groups?session=main.

6. Balas Otomatis AI

curl -X PUT https://openwa.click/api/config \
  -H "x-api-key: owa_YOUR_KEY" \
  -d '{
    "session": "main",
    "autoReplyAI": true,
    "replyGroups": false,
    "systemPrompt": "Kamu CS toko batik online. Balas ramah, singkat, Bahasa Indonesia. Harga mulai Rp 150rb. Kirim Whatsapp admin 628… untuk order."
  }'

Setiap pesan masuk di-forward ke XessOne AI (Claude Haiku 4.5), jawaban kembali ±2 detik. Biaya per balasan ~Rp 17 (auto-deducted dari saldo). replyGroups: true untuk aktifkan di grup juga (hati-hati, bisa spam).

7. Webhook (Terima Pesan Masuk)

curl -X PUT https://openwa.click/api/webhook \
  -H "x-api-key: owa_YOUR_KEY" \
  -d '{
    "session": "main",
    "url": "https://your-server.com/hook",
    "secret": "s3cr3t",
    "events": "message,message.ack"
  }'

Verifikasi di server Anda: header X-OpenWA-Signature-256: sha256=<hmac>. Events tersedia: message, message.edited, message.deleted, message.ack, call.offer, group.update. Kosongkan events untuk forward semua.

8. API Key per Tim

# Admin buat key untuk tim marketing (hanya bisa kirim via session 'marketing')
curl -X POST https://openwa.click/api/keys \
  -H "x-api-key: owa_ADMIN" \
  -d '{
    "name": "tim marketing",
    "scopes": ["send"],
    "sessionId": "marketing"
  }'
# → returns plaintext key ONCE, simpan baik-baik

Scope: admin (full), send, broadcast, config, ai, media, webhook. Key bisa dibatasi ke satu sessionId — request dari session lain akan 403.

9. MCP Server (AI Agent Ready)

OpenWA expose MCP (Model Context Protocol) endpoint di POST /api/mcp — bisa dipakai Claude Desktop, Cursor, atau AI agent custom untuk call tools seperti wa_send_text, wa_create_broadcast, dll.

Transport: Streamable HTTP (JSON-RPC 2.0). Auth: x-api-key header dengan scope admin. 9 tool tersedia: send text/media, post status, list sessions/groups/templates/broadcasts, create template/broadcast. Discovery: GET /api/mcp.

Batasan & Best Practice

Jaga reputasi nomor
Risiko teknis
Tanggung jawab pengguna

Dengan menggunakan OpenWA, Anda setuju bahwa: (a) Anda bertanggung jawab penuh atas konten dan penggunaan; (b) XessOne tidak bertanggung jawab atas ban / pemblokiran akun WhatsApp Anda; (c) OpenWA disediakan "as-is" tanpa garansi uptime 100% atau kompatibilitas masa depan.

Butuh Bantuan?

Email: hello@openwa.click · WhatsApp XessOne: chat admin

Buka Dashboard