Webhook Device Bot
SatuConnect menyediakan webhook untuk memberitahu sistem Anda ketika pesan diterima dari pelanggan. Ini memungkinkan Anda untuk membangun respons otomatis atau mengintegrasikan dengan sistem yang sudah ada.
Menyiapkan Endpoint Webhook Anda
Anda perlu menyediakan URL HTTPS yang dapat diakses publik di mana SatuConnect dapat mengirim event webhook. Konfigurasi URL ini di modul CMS SatuConnect Device pada Device Webhook Bot Di sini.
Format Request
Ketika pesan diterima oleh perangkat WhatsApp Anda, SatuConnect akan mengirim request POST ke URL webhook Anda.
Request Headers
| Header | Deskripsi |
|---|---|
| Content-Type | application/json |
Request Body
Payload webhook akan berisi detail tentang pesan masuk. Struktur yang tepat tergantung pada jenis pesan yang diterima:
Parameter Umum untuk Semua Jenis Pesan
| Parameter | Type | Deskripsi |
|---|---|---|
| device_id | String | ID perangkat WhatsApp kami (contoh: "62851851xxxxxx") |
| sender | String | Nomor telepon pengirim dari sisi webhook dalam format internasional (contoh: "62896058xxxxx") |
| message | String | Konten pesan yang diterima (untuk pesan teks) |
| timestamp | String | Timestamp ISO 8601 ketika pesan diterima (format RFC3339) |
| type | String | Jenis pesan yang diterima: "text", "image", "audio", "document", "location", "contact" |
Parameter Spesifik Jenis
Parameter tambahan yang disertakan berdasarkan jenis pesan:
| Parameter | Type | Hadir Untuk | Deskripsi |
|---|---|---|---|
| media_data | String | image, audio, document | Data media yang diencode Base64 |
| mime_type | String | image, audio, document | Tipe MIME media (contoh: "image/jpeg", "audio/ogg", "application/pdf") |
| filename | String | document | Nama file dokumen |
| latitude | Number | location | Koordinat lintang lokasi yang dibagikan |
| longitude | Number | location | Koordinat bujur lokasi yang dibagikan |
| address | String | location | Alamat atau nama lokasi yang dibagikan (jika tersedia) |
| vcard | String | contact | Data vCard untuk kontak yang dibagikan |
Contoh Request Body
Pesan Teks
{
"device_id": "62851851xxxxxx",
"sender": "62896058xxxxx",
"message": "Hello, I need assistance with my order #12345",
"timestamp": "2025-06-24T14:25:30+07:00",
"type": "text"
}
Pesan Gambar
{
"device_id": "62851851xxxxxx",
"sender": "62896058xxxxx",
"message": "Check out this image",
"timestamp": "2025-06-24T14:26:15+07:00",
"type": "image",
"media_data": "base64_encoded_image_data_here",
"mime_type": "image/jpeg"
}
Pesan Dokumen
{
"device_id": "62851851xxxxxx",
"sender": "62896058xxxxx",
"message": "Here's the document you requested",
"timestamp": "2025-06-24T14:27:45+07:00",
"type": "document",
"media_data": "base64_encoded_document_data_here",
"mime_type": "application/pdf",
"filename": "invoice-12345.pdf"
}
Pesan Lokasi
{
"device_id": "62851851xxxxxx",
"sender": "62896058xxxxx",
"timestamp": "2025-06-24T14:28:30+07:00",
"type": "location",
"latitude": -6.2088,
"longitude": 106.8456,
"address": "Jakarta Central Business District"
}
Pesan Kontak
{
"device_id": "62851851xxxxxx",
"sender": "62896058xxxxx",
"timestamp": "2025-06-24T14:29:15+07:00",
"type": "contact",
"vcard": "BEGIN:VCARD\nVERSION:3.0\nN:Doe;John;;;\nFN:John Doe\nTEL;type=CELL;type=VOICE:+6281234567890\nEND:VCARD"
}