Documentation

SatuApps API & Tools Handbook

Panduan resmi untuk mengintegrasikan API SatuApps dan memaksimalkan modul AI di dashboard. Ikuti langkah transparan mulai dari autentikasi, pemanggilan endpoint, hingga otomatisasi workflow.

Ringkasan Singkat

  • • Base URL: https://satuapps.com/api
  • • Auth: Bearer Token (Sanctum)
  • • Rate limit default: 20 req/min (user)
  • • Tools debit otomatis dari saldo token

1. Autentikasi

Login ke dashboard menggunakan Google (dan ke depan Facebook), lalu buat API Token di menu Settings → API Access. Setiap token terhubung dengan saldo pengguna sehingga transaksi teraudit penuh.

Request Header

Authorization: Bearer <api_token>
Accept: application/json
X-Requested-With: XMLHttpRequest

Refresh Token

Revoke token langsung dari dashboard jika perangkat hilang. Prosesnya instan tanpa downtime.

2. Jalankan Tools

Setiap modul AI dapat dipanggil via dashboard atau API. Di API gunakan endpoint /api/ai/execute dengan perintah natural language yang akan di-route otomatis ke tool yang tepat.

POST /api/ai/execute
{
    "command": "Ringkas ulang artikel ini menjadi bullet point profesional berbahasa Indonesia"
}

Response berisi job_id dan snapshot saldo. Pantau progres via endpoint Tool Runs atau dashboard.

3. Endpoint Referensi

Endpoint Metode Deskripsi Rate Limit
/api/profile GET Ambil profil user + saldo token 20/menit
/api/ai/execute POST Jalankan modul AI (Text Rewriter, AI Content Suite, dll) 20/menit

4. Workflow Rekomendasi

Step 1 – Siapkan Kredensial

Login dengan Google, lalu buat API Token khusus automation.

Step 2 – Debit Otomatis

Setiap request API otomatis memotong token sesuai harga tool. Cek Ledger di menu Wallet.

Step 3 – Monitoring

Gunakan halaman Admin → AI Usage untuk memantau job, atau tarik data via API Admin.

WhatsApp API

API WhatsApp – Bot & Automation

Gunakan engine WhatsApp milik SatuApps untuk membangun bot, autoresponder, dan automasi internal. Setiap device memiliki API Key sendiri, webhook khusus, serta batas kuota sesuai paket langganan.

Ringkasan Cepat

  • Base URL: https://satuapps.com/api/wa
  • Header: X-Device-Api-Key: <api_key>
  • Rate limit default: 60 req/menit per device
  • Webhook: ditentukan per device di dashboard

Autentikasi

Setiap API Key terhubung pada satu device. Dapatkan kunci tersebut melalui tombol API Key pada halaman /wa. Bagikan hanya ke server backend Anda.

POST https://satuapps.com/api/wa/{device_id}/send-message
X-Device-Api-Key: <api_key>
Content-Type: application/json

Lifecycle Device

  • Created: Device baru, belum pernah scan QR.
  • QR Waiting: QR aktif, menunggu scan maksimal 10 menit.
  • Online: Semua endpoint siap dipakai.
  • Offline/Banned: Gunakan tombol Reconnect untuk QR baru.

Status terbaru dikirim melalui webhook /api/wa/device-status dan muncul di dashboard real-time.

Endpoint

Kirim Pesan

POST

Kirim pesan teks, template sederhana, atau payload media (URL publik) ke nomor WhatsApp.

POST /api/wa/{device_id}/send-message
{
  "to": "6281234567890",
  "message": "Halo, ini pesan otomatis.",
  "reference_id": "INV-23001",
  "media": {
    "type": "image",
    "url": "https://example.com/invoice.png",
    "caption": "Invoice terbaru"
  }
}
{
  "status": "queued",
  "device_id": 12,
  "queued_at": "2025-11-18T12:46:05.233Z",
  "job_id": "send:12:bf8882f0-7d75-4c2c-94be-15f3b3341d90"
}

Response status=queued berarti pesan masuk ke BullMQ queue engine. Pantau hasil di Log Pesan.

Webhook

Pesan Masuk

POST

Setiap pesan masuk diteruskan ke URL webhook milik Anda (atau default /api/wa/webhook/{device_id}). Header X-Device-Api-Key membantu memverifikasi sumber.

{
  "event": "message",
  "device_id": 12,
  "direction": "in",
  "from": "6281234567890@s.whatsapp.net",
  "to": "6281111111111",
  "type": "text",
  "message": "Bisa bantu cek status order?",
  "timestamp": "2025-11-18T13:20:11.200Z",
  "message_id": "AB12CD34EF56"
}

Balas HTTP 200 dalam <2 detik agar engine tidak melakukan retry. Untuk chain otomatis, gunakan Webhook Chaining di pengaturan device.

Webhook

Status Device

POST

Setiap perubahan status (QR_WAITING, ONLINE, OFFLINE, BANNED) dikirim ke endpoint yang Anda set.

{
  "event": "status",
  "device_id": 12,
  "status": "offline",
  "phone_number": "6281111111111",
  "last_seen_at": "2025-11-18T12:59:44.000Z"
}

Gunakan event ini untuk menampilkan indikator server status di aplikasi Anda dan memicu reconnect otomatis bila perlu.

Error Handling

Semua error API menggunakan format JSON sederhana seperti Postman collection.

{
  "error": "invalid_payload",
  "message": "Field message wajib diisi",
  "hint": "Pastikan body JSON berisi to & message",
  "request_id": "req-1ecf14d9c1f2"
}
  • 401 unauthorized: API Key salah / belum dikirim.
  • 409 device_offline: Device belum online, tampilkan QR untuk user.
  • 429 quota_exceeded: Kuota paket habis, user harus upgrade.

5. Daftar Tools Aktif

Daftar di bawah ini diambil langsung dari konfigurasi Tools di dashboard (hanya yang aktif dan terlihat untuk pengguna). Gunakan kolom slug sebagai referensi saat berkomunikasi dengan asisten AI atau dokumentasi internal.

Ai

AI Article Generator

Tulis artikel berbahasa Indonesia/Inggris dengan banyak template tersedia.

Slug: ai-article-forge

Harga: 1 token

AI Image Generator

Generate gambar AI berkualitas tinggi yang langsung tersimpan di Drive.

Slug: ai-image-suite

Harga: 10 token

Downloader

Downloader Hub

Downloader YouTube, TikTok, Facebook, Instagram, X, dan Thread Tanpa watermark.

Slug: downloader-hub

Harga: 3 token

Smm

Social Media Engine

Pesan layanan social media marketing (followers, views, dan lainnya) pantau secara realtime.

Slug: smm

Harga: 1 token

Virtual

SMS OTP

Ambil nomor virtual dan baca SMS OTP untuk berbagai layanan.

Slug: sms-otp

Harga: 1 token

WhatsApp Tools

WhatsApp Automation

Bangun workflow trigger, webhook, dan broadcast untuk device WhatsApp milikmu.

Slug: wa-automation

Harga: 0 token

Butuh bantuan lanjutan?

Tim Support siap membantu integrasi webhook, queue, hingga optimasi biaya token.

Hubungi Support