Dokumentasi API

Selamat datang di dokumentasi API WA Gateway. API kami memungkinkan Anda mengirim pesan WhatsApp, mengelola devices, dan mengotomatisasi komunikasi bisnis Anda.

Base URL

Semua request API harus dikirim ke:

https://api.wagateway.io/v1

Quick Start

Untuk mulai menggunakan API, Anda perlu:

  1. Daftar akun di WA Gateway
  2. Buat device baru di dashboard
  3. Scan QR code untuk menghubungkan WhatsApp
  4. Gunakan API Token dari dashboard untuk autentikasi

Autentikasi

API menggunakan Bearer Token untuk autentikasi. Sertakan token Anda di header setiap request.

Example Request
curl -X GET "https://api.wagateway.io/v1/devices" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json"

Keamanan Token

Jangan pernah membagikan API Token Anda. Token memberikan akses penuh ke akun Anda. Jika token bocor, segera generate token baru di dashboard.

Kirim Pesan Teks

Endpoint untuk mengirim pesan teks ke nomor WhatsApp tertentu.

POST /messages/send

Parameters

Parameter Type Required Description
phone string Yes Nomor tujuan (format: 628123456789)
message string Yes Isi pesan yang akan dikirim
deviceId string No ID device (default: device pertama)
Request Example
curl -X POST "https://api.wagateway.io/v1/messages/send" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "628123456789",
    "message": "Halo, ini adalah pesan dari API!",
    "deviceId": "device_123"
  }'
Response Example
{
  "success": true,
  "data": {
    "messageId": "msg_abc123",
    "status": "queued",
    "phone": "628123456789",
    "timestamp": "2024-01-15T10:30:00Z"
  }
}

Kirim Media

Endpoint untuk mengirim gambar, dokumen, atau file audio.

POST /messages/media
Request Example
curl -X POST "https://api.wagateway.io/v1/messages/media" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "628123456789",
    "mediaUrl": "https://example.com/image.jpg",
    "caption": "Ini gambar produk kami",
    "mediaType": "image"
  }'

Supported Media Types

  • image - JPG, PNG, GIF
  • document - PDF, DOC, XLS
  • audio - MP3, WAV
  • video - MP4, AVI

Webhooks

Terima notifikasi real-time ketika pesan terkirim, gagal, atau ada pesan masuk.

Setup Webhook URL

Konfigurasi webhook URL di dashboard atau via API:

PUT /webhooks
curl -X PUT "https://api.wagateway.io/v1/webhooks" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://yourdomain.com/webhook",
    "events": ["message.sent", "message.failed", "message.received"]
  }'

Webhook Payload Example

Webhook Event
{
  "event": "message.sent",
  "timestamp": "2024-01-15T10:30:05Z",
  "data": {
    "messageId": "msg_abc123",
    "phone": "628123456789",
    "status": "sent",
    "deviceId": "device_123"
  }
}

Error Codes

Daftar kode error yang mungkin diterima dari API.

Code Message Description
400 Bad Request Parameter tidak valid atau missing
401 Unauthorized Token tidak valid atau expired
403 Forbidden Akses ditolak (insufficient permissions)
429 Too Many Requests Rate limit exceeded
500 Internal Server Error Error pada server kami

SDK & Libraries

Official SDK untuk berbagai bahasa pemrograman.

Node.js

npm install wagateway View Documentation →

Python

pip install wagateway View Documentation →

PHP

composer require wagateway/client View Documentation →