Reply to an inbound message
Send a free-form text reply to an inbound WhatsApp message within the 24-hour conversation window.
Request fields
phone_number_mismatch error is returned.im_) to reply to. This ID is provided in the inbound.message.received webhook event.Error Handling
The reply endpoint returns specific error codes for 2-way messaging failures:| Error Code | Description | Action |
|---|---|---|
window_expired | The 24-hour WhatsApp conversation window has closed | Use a template-based message via Send a message instead |
invalid_reply_context | The inbound message ID in reply_to was not found | Verify the message ID from the inbound.message.received webhook |
phone_number_mismatch | The to number does not match the inbound message sender | Use the phone number from the inbound webhook |
missing_text | The text field is empty | Provide a reply message body |
invalid_phone_number | Phone number format is invalid | Validate phone number format |
insufficient_balance | Account balance is too low | Top up your account |
Related Documentation
- WhatsApp 2-Way Messaging - Receive inbound messages and send replies
- Send a message - Send templated transactional and marketing messages
- Webhooks - Receive delivery updates, inbound messages, and subscription events
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
The recipient's phone number in E.164 format. Must match the phone number that sent the original inbound message.
"+33612345678"
The reply message body sent as a free-form WhatsApp text.
"Thanks for reaching out! We'll look into your request."
The inbound message ID (prefixed with im_) to reply to. This ID is provided in the inbound.message.received webhook event.
"im_01k8aq2zggeyssvt53zgvpx63a"
The URL where webhooks will be sent for delivery events of this reply.
"https://your-app.com/webhooks/notify"
A user-defined identifier to correlate this reply with your internal systems. It is returned in the response and any webhook events that refer to this message.
80"support-ticket-42"
Callbacks
POST{$request.body#/callback_url}webhook_event
Body
Response
Your server accepted the event and will process it.
Response
OK
The reply message identifier.
"tx_01k8ap1btqf5r9fq2c8ax5fhc9"
The recipient's phone number in E.164 format.
"+33612345678"
The reply message body that was sent.
"Thanks for reaching out! We'll look into your request."
The inbound message ID this reply was sent in response to.
"im_01k8aq2zggeyssvt53zgvpx63a"
The reply creation date in RFC3339 format.
"2025-10-24T12:00:00Z"
The callback URL where webhooks will be sent.
"https://your-app.com/webhooks/notify"
The user-defined correlation identifier echoed back from the request.
80"support-ticket-42"