All Products
Search
Document Center

Chat App Message Service:Send WhatsApp messages

Last Updated:Jan 20, 2025

API description

You can call SendChatappMessage to send WhatsApp messages.

You can call this operation up to 250 times per second per account. If the number of calls per second exceeds the limit, throttling is triggered. As a result, your business may be affected. We recommend that you take note of the limit when you call this operation.

Debugging

You can call this operation in OpenAPI Explorer. OpenAPI Explorer automatically calculates the signature value and dynamically generates the sample code of the operation for different SDKs.

Authorization information

No authorization information is disclosed in this API.

Request parameters

Parameter

Type

Required

Description

Example

ChannelType

string

Yes

The type of the channel. Set the parameter to whatsapp.

whatsapp

Type

string

Yes

The message type. Valid values:

  • template: the template message. A template message is sent based on a template that is created and approved in the Chat App Message Service console. You can send template messages at any time.

  • message: the custom message. You can send a custom WhatsApp message to a user only within 24 hours after you receive the last message from the user.

template

MessageType

string

No

The specific type of the message. Valid values when Type is set to message:

  • text: a text message.

  • image: an image message.

  • video: a video message.

  • audio: an audio message.

  • document: a document message.

  • interactive: an interactive message.

  • contacts: a contact message.

  • location: a location message.

  • sticker: a sticker message.

  • reaction: a reaction message.

Note

For more information, see Parameters of a message template.

text

TemplateCode

string

No

The code of the message template. This parameter is required only if you set the Type parameter to template.

744c4b5c79c9432497a075bdfca3****

Language

string

No

The language that is used in the message template. This parameter is required only if you set the Type parameter to template. For more information about language codes, see Language codes.

en

From

string

Yes

The mobile phone number of the message sender.

Note

You must specify a mobile phone number that is registered for a WhatsApp account and is approved in the Chat App Message Service console.

861360000****

To

string

Yes

The mobile phone number of the message receiver.

861390000****

TemplateParams

object

No

The variables of the message template.

string

No

The values of the variables that are included in the message template. The values must be in the JSON format. If the template contains a variable, this parameter is required.

{"param1":"value1","param2":"value2"}

Content

string

No

The message content.

  • If you set messageType to text, you must specify text and must not specify Caption.

  • If you set messageType to image, you must specify Link.

  • If you set messageType to video, you must specify Link.

  • If you set messageType to audioLink is required and Caption is invalid.

  • If you set messageType to documentLink and FileName are required and Caption is invalid.

  • If you set messageType to interactive, you must specify type and action.

  • If you set messageType to contacts, you must specify name.

  • If you set messageType to location, you must specify longitude and latitude.

  • If you set messageType to sticker, you must specify Link, and Caption and FileName are invalid.

  • If you set messageType to reaction, you must specify messageId and emoji.

{"text": "hello whatsapp", "link": "", "caption": "", "fileName": "" }

Payload

array

No

The payload of the button.

string

No

The payload of the button in the message template.

payloadtext1,payloadtext2,payloadtext3

FallBackId

string

No

The ID of the fallback policy. You can create a fallback policy and view the information in the Chat App Message Service console.

S_000001

FallBackContent

string

No

The content of the fallback message.

This is a fallback message.

CustSpaceId

string

No

The space ID of the RAM user.

28251486512358****

ContextMessageId

string

No

The ID of the reply message.

61851ccb2f1365b16aee****

TaskId

string

No

The task ID

100000001

FallBackDuration

integer

No

Specifies the period of time after which the fallback message is sent if the message receipt that indicates the message is delivered to clients is not received. If this parameter is left empty, the fallback message is sent only when the message fails to be sent or the message receipt that indicates the message is not delivered to clients is received.

Unit: seconds. Valid values: 60 to 43200.

120

FallBackRule

string

No

The fallback rule. Valid values:

  • undelivered: A fallback is triggered if the message is not delivered to clients. When the message is being sent, the template parameters are verified. If the parameters fail to pass the verification, the message fails to be sent. Whether the template and phone number are prohibited is not verified. By default, this value is used when FallBackRule is left empty.

  • sentFailed: A fallback is triggered even if the template parameters including variables fail to pass the verification. If the channelType, type, messageType, to, and from parameters fail to pass the verification, a fallback is not triggered.

undelivered

ProductAction

object

No

The information about the products included in the WhatsApp catalog message or multi-product message (MPM).

ThumbnailProductRetailerId

string

No

The retailer ID of the product.

S238SK

Sections

object []

No

The products. Up to 30 products and 10 categories can be added.

Title

string

No

The category of the product.

Test

ProductItems

object []

No

The products.

ProductRetailerId

string

No

The retailer ID of the product.

9I39E9E

FlowAction

object

No

The flow action.

FlowToken

string

No

The flow token.

1122***

FlowActionData

object

No

The default parameters of the flow.

string

No

The default parameter of the flow.

{"name":"test"}

Response parameters

Parameter

Type

Description

Example

object

The returned data.

RequestId

string

The ID of the request.

90E63D28-E31D-1EB2-8939-A94866411B2O

Code

string

The status code returned.

  • A value of OK indicates that the request is successful.

  • Other values indicate that the request fails. For more information, see Error codes.

OK

Message

string

The error message returned.

User not authorized to operate on the specified resource.

MessageId

string

The ID of the message that was sent.

61851ccb2f1365b16aee****

Examples

Sample success responses

JSON format

{
  "RequestId": "90E63D28-E31D-1EB2-8939-A94866*******",
  "Code": "OK",
  "Message": "User not authorized to operate on the specified resource.",
  "MessageId": "61851ccb2f1365b16aee****"
}

Error codes

HTTP status code

Error code

Error message

400

Product.Unsubscript

You have not subscribed to the specified product.

400

Ram.PermissionDeny

You are not authorized to perform the operation.

400

System.LimitControl

The system is under flow control.

400

Unknown.ResourceOwnerId

The resource does not belong to the current user.

For a list of error codes, visit the Service error codes.