Skip to main content
POST
Send Interactive Buttons
Sends a session message with up to 3 tappable reply buttons, optionally with an image, video, or document attached as the header.
Like Send Text Message, this is a session message — only deliverable within the 24-hour window after the recipient last messaged you.

Limits

  • 1 to 3 buttons, sent as a JSON array. Each is either a string or {"id":"buy_now","title":"Buy Now"}; the id comes back when the contact taps it.
  • Each title is at most 20 characters (Button title may not be greater than 20 characters.).
  • A media header can be an image, video or document — never audio. button_header_text is ignored when media is attached.
The response includes the wa_message_id, like the other send endpoints.

Body

application/x-www-form-urlencoded
apiToken
string
required

Your ChatSyncs API key (not a WhatsApp/Meta access token). Where to find it.

Example:

"API-KEY"

phone_number_id
string
required

The WhatsApp account's phone number ID. Where to find it.

Example:

"PHONE-NUMBER-ID"

phone_number
string
required

The subscriber's phone number, with country code, digits only.

Example:

"PHONE-NUMBER"

message
string
required

The message body shown above the buttons.

Example:

"Choose an option"

buttons
string
required

JSON array of 1 to 3 reply buttons. Each item is a string or an object with id and title (max 20 characters).

Example:

"[{\"id\":\"buy_now\",\"title\":\"Buy Now\"},{\"id\":\"details\",\"title\":\"View Details\"}]"

button_header_text
string

Optional text header. Ignored if a media header is sent instead.

Example:

"Limited Time Offer"

Optional footer text shown below the buttons.

Example:

"Powered by ChatSyncs"

media_url
string

Public HTTPS URL of an image, video, or document to use as the header. Use either media_url or media_id, not both.

Example:

"https://example.com/image.jpg"

media_id
string

A WhatsApp media ID from Upload Media. Requires media_type when used.

Example:

"1739230482390482"

media_type
string

One of image, video, document. Required when using media_id, or when media_url has no file extension. Audio is not supported.

Example:

"image"

media_name
string

Filename to display — only used when media_type is document.

Example:

"brochure.pdf"

Response

Standard ChatSyncs response. status is "1" on success and "0" on failure.

status
string

"1" = success, "0" = failure.

message
string

Human-readable result message.