Everything you need to send messages via the WA Gateway API
# curl example
curl -X POST \
https://your-domain.com/api/messages/send \
-H "Content-Type: application/json" \
-d '{
"clientId": "YOUR_CLIENT_ID",
"sessionId": "YOUR_SESSION_ID",
"method": "sendText",
"to": "919876543210",
"text": "Hello from WA Gateway! 👋"
}'{
"clientId": "YOUR_CLIENT_ID",
"sessionId": "YOUR_SESSION_ID",
"method": "sendImage",
"to": "919876543210",
"imageUrl": "https://example.com/image.jpg",
"caption": "Check this out!"
}{
"clientId": "YOUR_CLIENT_ID",
"sessionId": "YOUR_SESSION_ID",
"method": "sendDocument",
"to": "919876543210",
"docUrl": "https://example.com/invoice.pdf",
"filename": "invoice_001.pdf"
}{
"clientId": "YOUR_CLIENT_ID",
"sessionId": "YOUR_SESSION_ID",
"method": "sendVideo",
"to": "919876543210",
"videoUrl": "https://example.com/clip.mp4",
"caption": "Watch this!"
}{
"clientId": "YOUR_CLIENT_ID",
"sessionId": "YOUR_SESSION_ID",
"method": "sendAudio",
"to": "919876543210",
"audioUrl": "https://example.com/track.mp3"
}{
"clientId": "YOUR_CLIENT_ID",
"sessionId": "YOUR_SESSION_ID",
"method": "sendVoice",
"to": "919876543210",
"audioUrl": "https://example.com/voice-note.ogg"
}{
"success": true,
"messageId": "550e8400-e29b-41d4-a716-446655440000",
"status": "sent",
"timestamp": "2026-06-28T12:00:00.000Z"
}| Parameter | Type | Required | Description |
|---|---|---|---|
| clientId | string | Required | Your unique client identifier |
| sessionId | string | Required | The session (WhatsApp number) to send from |
| method | string | Required | sendText | sendImage | sendDocument | sendVideo | sendAudio | sendVoice |
| to | string | Required | Recipient phone with country code (e.g. 919876543210) |
| text | string | sendText | Message text content |
| imageUrl | string | sendImage | Public URL of the image |
| caption | string | Optional | Caption for the image or video |
| docUrl | string | sendDocument | Public URL of the document |
| filename | string | sendDocument | Filename shown to recipient |
| videoUrl | string | sendVideo | Public URL of the video |
| audioUrl | string | sendAudio / sendVoice | Public URL of the audio or voice note |
| Code | Meaning |
|---|---|
| 400 | Missing or invalid fields |
| 401 | Unauthorized — missing or invalid token |
| 403 | Invalid clientId for this account |
| 404 | Session not found |
| 429 | Rate limit or session quota exceeded |
| 500 | Internal server error |