Sending Messages

circle-info

You can only send a text message up until 24 hours after receiving a message from the user. If you have not received a message from the user within this time, you will need to start a new conversation by sending a Template message.

To send text messages, specify text in the type field. A text message can be a maximum of 4096 characters long. It's recommended to keep the message length under 1600 characters for optimal rendering on most devices.

How to send a text message

To send a message, use this endpoint

Formatting in Text Messages

WhatsApp allows some formatting in messages. To format all or part of a message, use these formatting symbols:

Formatting
Symbol
Example

Bold

Asterisk (*)

Your total is *$10.50*.

Italics

Underscore (_)

Welcome to _WhatsApp_!

Strike-through

Tilde (~)

This is ~better~ best!

Code

Three backticks (```)

```print 'Hello World';```

How to send URLs in Text Messages

By default, the mobile WhatsApp application recognizes URLs and makes them clickable. To include a URL preview, include "preview_url": true and make sure the URL begins with http:// or https://. A hostname is required; IP addresses are not matched.

When sending a preview URL with Cloud API hosting, the preview-url should be inside the text object.

Example:

The majority of the time when you send a URL, whether with a preview or not, the receiver of the message will see a URL that they can click on.

URL previews are only rendered after one of the following has happened:

  1. The business has sent a message template to the user.

  2. The user initiates a conversation with a "click to chat" link.

  3. The user adds the business phone number to their address book and initiates a conversation.

If the end user did not initiate the conversation with you - you must use a Template message instead.

Replies

You can send any message as a reply to a previous message in a conversation by including the previous message's ID in the context object. The recipient will receive the new message along with a contextual bubble that displays the previous message's content.

Recipients will not see a contextual bubble if:

  • replying with a template message ("type":"template")

  • replying with an image, video, PTT, or audio, and the recipient is on KaiOS

Sample request:

A successful response includes an object with an identifier prefixed with wamid. Use the ID listed after wamid to track your message status.

circle-info

Note: if the previous message is more than 30 days old or doesn't correspond to any message in the conversation, the message will be sent normally instead of as a reply.

Sample response:

Last updated

Was this helpful?