Mobile or Access API Documentation

Dokumentasi REST API for Mobile or Access - SuperApp CSIS

Konfigurasi API

Realtime Events (Reverb / WebSocket)

Panduan listen private channel untuk update WhatsApp chat dan contact list secara realtime.

Route auth private channel web: /broadcasting/auth (middleware: web) untuk browser session + CSRF token. Untuk mobile gunakan: /api/mobile/v1/broadcasting/auth (middleware: auth:sanctum) dengan header Authorization: Bearer <token>.
Broadcaster
reverb
Auth Endpoint (Web)
/broadcasting/auth
Auth Endpoint (Mobile)
/api/mobile/v1/broadcasting/auth
Chat Channel
private-wa.chat.{contactId}
Contact Channel
private-wa.contacts.{clientId}
Channel Event Payload Ringkas
wa.chat.{contactId} .NewMessage { type: 'create|update', message: {...} }
wa.chat.{contactId} .NewComment { id, conversation_id, contact_id, comment, user, created_at, bubble_html }
wa.chat.{contactId} .ConversationAccountUpdated { conversation_id, contact_id, account_id, phone }
wa.contacts.{clientId} .ContactStateUpdated { contact_id, status, assigned_to }
wa.contacts.{clientId} .ContactPreviewUpdated { contact_id, preview, time }

Contoh Listen (Laravel Echo + Reverb)

window.Echo.private(`wa.chat.${contactId}`)
  .listen('.NewMessage', (payload) => console.log('NewMessage', payload))
  .listen('.NewComment', (payload) => console.log('NewComment', payload))
  .listen('.ConversationAccountUpdated', (payload) => console.log('ConversationAccountUpdated', payload));

window.Echo.private(`wa.contacts.${clientId}`)
  .listen('.ContactStateUpdated', (payload) => console.log('ContactStateUpdated', payload))
  .listen('.ContactPreviewUpdated', (payload) => console.log('ContactPreviewUpdated', payload));