Common fields
| Field | Meaning |
|---|---|
Phone / phone | Recipient phone number or JID. |
Body / body | Main text content. |
Id | Optional custom WhatsApp message ID. If omitted, WaGo generates one. |
Forward | Marks a message as forwarded where supported. |
ContextInfo | Optional quoted-message context for replies. |
Text
Phone, Body.
Image
POST /send/image sends a base64 image data URL.
Audio
POST /send/audio sends audio. Use a data URL payload. For voice-note behavior, check the current handler fields in message.controller.go because audio behavior depends on the payload fields in that function.
Document
POST /send/document requires:
data:application/octet-stream;base64,.
Video
POST /send/video sends a base64 video data URL with optional caption.
Sticker
POST /send/sticker sends a base64 sticker payload. Use a WhatsApp-compatible image or webp payload.
Poll
Options must contain at least two choices.
Location
POST /send/location sends latitude and longitude. Use this for static location messages, not live location.
Contact
POST /send/contact sends a vCard contact message. The server builds a WhatsApp contact payload from the request fields.
Group invite and previews
| Endpoint | Use |
|---|---|
POST /send/groupinvite | Send a group-invite styled preview message. |
POST /send/preview | Send a link preview with uploaded thumbnail metadata. |
POST /send/preview2 | Send an ad-reply style preview using external ad reply context. |
Direct media URL
POST /send/mediaurl lets WaGo download media from a URL and send it. The WaGo server must be able to access the URL.
Use this when your app stores files outside WaGo and does not want to base64 encode large media into JSON.

