Endpoint
POST /v1/messages
Send a message through a specific channel.
Primary auth header for public API requests.
Alternative auth header. Format: Bearer YOUR_API_KEY.
Request body
Channel ID used to send the message.
Recipient phone number in international format.
Operation type, for example text.
Typed payload for type=text.
Typed payload for type=image with url and optional caption.
Typed payload for type=video with url and optional caption.
Typed payload for type=document with url, file_name, and optional caption.
Typed payload for type=template.
Typed payload for type=buttons.
Typed payload for type=list.
Typed payload for type=audio.
curl -X POST "https://api.wazapin.id/v1/messages" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"channel_id": "wzp_wu8f3k2p",
"to": "6281234567890",
"type": "text",
"text": "Hello from Wazapin API"
}'
{
"id": "9f1fd66d-c37a-4b50-a8c2-b4dca523f9c8",
"channel_id": "wzp_wu8f3k2p",
"to_phone": "6281234567890",
"type": "text",
"status": "queued",
"provider_message_id": null,
"created_at": "2026-03-04T06:20:10Z",
"request_id": "req_123"
}
{
"error": {
"code": "validation_error",
"message": "text is required for type=text",
"details": [
{
"field": "text",
"reason": "required"
}
]
},
"request_id": "req_123"
}