Send WhatsApp document message
Send a document to a single recipient. Document messages can only be successfully delivered if the recipient has contacted the business within the last 24 hours, otherwise template message should be used.
The API response will not contain the final delivery status, use Delivery Reports instead.
Authorizations:
Request rate limit:
Request Body schema:
application/jsonfrom required | string [ 1 .. 24 ] characters Registered WhatsApp sender number. Must be in international format and comply with WhatsApp's requirements. | ||||||||||
to required | string [ 1 .. 24 ] characters Message recipient number. Must be in international format. | ||||||||||
messageId | string [ 0 .. 100 ] characters The ID that uniquely identifies the message sent. | ||||||||||
content required | object The content object to build a message that will be sent. | ||||||||||
| |||||||||||
callbackData | string [ 0 .. 4000 ] characters Custom client data that will be included in a Delivery Report. | ||||||||||
notifyUrl | string [ 0 .. 2048 ] characters The URL on your callback server to which delivery and seen reports will be sent. Delivery report format, Seen report format. | ||||||||||
urlOptions | object Sets up URL shortening and tracking feature. | ||||||||||
| |||||||||||
entityId | string [ 0 .. 255 ] characters Required for entity use in a send request for outbound traffic. Returned in notification events. For more details, see our documentation. | ||||||||||
applicationId | string [ 0 .. 255 ] characters Required for application use in a send request for outbound traffic. Returned in notification events. For more details, see our documentation. |
Responses
Message accepted for delivery
Bad request
Unauthorized
Forbidden
Too Many Requests
Internal Server Error
Request samples
- Payload
- cURL
- Java
- C#
- Go
- Python
- PHP
- JavaScript
- NodeJs
- Ruby
{- "from": "441134960000",
- "to": "441134960001",
- "messageId": "a28dd97c-1ffb-4fcf-99f1-0b557ed381da",
- "callbackData": "Callback data",
- "urlOptions": {
- "shortenUrl": true,
- "trackClicks": true,
- "removeProtocol": true,
- "customDomain": "example.com"
}
}
Response samples
- 200
- 400
- 401
- 403
- 429
- 500
{- "to": "441134960001",
- "messageCount": 1,
- "messageId": "a28dd97c-1ffb-4fcf-99f1-0b557ed381da",
- "status": {
- "groupId": 1,
- "groupName": "PENDING",
- "id": 7,
- "name": "PENDING_ENROUTE",
- "description": "Message sent to next instance"
}
}
Need assistance
Encountering issues
What's new? Check out
Unsure about a term? See
Copyright @ 2006-2025 Infobip ltd.