Share photos and screenshots with an optional caption — product shots, invoices, or proof of delivery.

At a glance

ItemDetail
typeimage
Supported formatsJPEG, PNG
Maximum file size5 MB
Media fieldcontent.media_url (aliases: media, url)
CaptionOptional content.caption
Channel supportOfficial and unofficial
The URL must be publicly accessible and return the file directly (no HTML landing page). File extension should match the actual content type.

Request body

FieldRequiredDescription
channel_idYesSender channel ID
toYesRecipient phone number
typeYesimage
content.media_urlYesHTTPS URL to the image file
content.captionNoOptional caption text

Example (URL)

curl -X POST "https://api.wazapin.com/v1/messages" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "channel_id": "wzp_abc123",
    "to": "6281234567890",
    "type": "image",
    "content": {
      "media_url": "https://cdn.example.com/images/invoice.png",
      "caption": "Bukti pembayaran kamu"
    }
  }'

Endpoint

POST https://api.wazapin.com/v1/messages Authenticate with X-Api-Key. See Authentication.

Response

On success, the API returns 201 Created with a message record (status often starts as queued).
201 Created
{
  "data": {
    "id": "9f1fd66d-c37a-4b50-a8c2-b4dca523f9c8",
    "channel_id": "wzp_abc123",
    "to_phone": "6281234567890",
    "type": "text",
    "status": "queued",
    "created_at": "2026-03-04T06:20:10Z",
    "updated_at": "2026-03-04T06:20:10Z"
  }
}
Track delivery with Webhooks or GET /v1/messages/.