SendChatappMessage

更新时间:
复制 MD 格式

Sends a ChatApp message.

Operation description

QPS limit

The QPS limit for this operation is 250 per user. API calls that exceed this limit are throttled. To prevent service disruptions, ensure your calls stay within this limit.

Status changes

You can receive notifications about message status changes by using MNS or HTTP callbacks. For more information, see message receipts.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

cams:SendChatappMessage

create

*All Resource

*

None None

Request parameters

Parameter

Type

Required

Description

Example

ChannelType

string

Yes

The channel type. Valid values:

  • whatsapp

  • messenger

  • instagram

  • telegram

whatsapp

Type

string

Yes

The message type. Valid values:

  • template: A message template approved in the console. You can send this type of message at any time.

  • message: A message of any format. You can send this type of message only within 24 hours of receiving the last message from a user.

Important If you set Type to template, you must set the TemplateCode parameter. If you set Type to message, you must set the MessageType parameter.

message

MessageType

string

No

The message type to use when Type is set to message. The valid values vary based on the channel type:

WHATSAPP

  • text: A text message.

  • image: An image message.

  • video: A video message.

  • audio: An audio message.

  • document: A document message.

  • interactive: An interactive message.

  • location: A location message.

  • contacts: A contacts message.

  • reaction: A reaction message.

  • sticker: A sticker message.

  • typing_indicator: A typing indicator message.

  • pin: A message to pin or unpin. This type is available only for group messages.

  • carousel: A carousel message.

VIBER

  • text: A text message.

  • image: An image message.

  • text_image_button: A message with text, an image, and a button.

  • text_button: A message with text and a button.

  • document: A document message.

  • video: A video message.

  • text_video: A message with text and a video.

  • text_video_button: A message with text, a video, and a button.

  • text_image: A message with text and an image.

MESSENGER / INSTAGRAM

  • text: A text message.

  • image: An image message.

  • video: A video message.

  • document: A document message.

  • audio: An audio message.

  • interactive: An interactive message.

  • couponTemplate: A coupon template message.

  • regularTemplate: A regular template message.

  • quickReply: A quick reply message.

  • buttonTemplate: A button template message.

TELEGRAM

  • text: A text message.

  • image: An image message.

  • video: A video message.

  • audio: An audio message.

  • document: A document message.

  • location: A location message.

  • gif: An animated GIF message.

  • sticker: A sticker message.

text

TemplateCode

string

No

The message template code. You can find the code on the Channel Management > Manage > Template Design page.

1119***************

Language

string

No

The language of the message template. For a list of supported languages and their corresponding codes, see language code.

en

From

string

Yes

The sender's number or ID.

  • If ChannelType is whatsapp, this is the phone number registered with WhatsApp. You can find the number on the Channel Management > Manage > WABA Management > Phone Number Management page.

  • If ChannelType is messenger, this is the Facebook Page ID. You can find this ID on your Channel Management > Manage > Facebook Page page.

  • If ChannelType is instagram, this is the Instagram professional account ID (Account ID). You can find the ID on the Channel Management > Manage > Professional Account page.

861387777****

To

string

Yes

The recipient's number or ID.

  • If ChannelType is whatsapp, this is the recipient's phone number.

  • If ChannelType is messenger, this is a Page-Scoped User ID (PSID) generated when a user interacts with your Facebook Page.

  • If ChannelType is instagram, this is an Instagram-Scoped User ID (IGSID) generated when a user interacts with your Instagram business or creator account.

861388988****

TemplateParams

object

No

The parameters for the message template.

string

No

A key-value pair for a template parameter. The key is the parameter's name and the value is its corresponding value.

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

Content

string

No

The message content, in a JSON-formatted string.

Notes for WhatsApp messages:

  • If MessageType is text, the text field is required, and the Caption field is not supported.

  • If MessageType is image, the Link field is required.

  • If MessageType is video, the Link field is required.

  • If MessageType is audio, the Link field is required. The Caption field is not supported.

  • If MessageType is document, the Link and FileName fields are required. The Caption field is not supported.

  • If MessageType is interactive, the type and action fields are required.

  • If MessageType is contacts, the name field is required.

  • If MessageType is location, the longitude and latitude fields are required.

  • If MessageType is sticker, the Link field is required. The Caption and FileName fields are not supported.

  • If MessageType is reaction, the messageId and emoji fields are required.

Notes for Messenger messages:

  • If MessageType is text, the text field is required.

  • If MessageType is image, video, audio, or document, the link field is required.

Notes for Instagram messages:

  • If MessageType is text, the text field is required.

  • If MessageType is image, video, or audio, the link field is required.

{ "text": "hello,whatsapp", "link": "https://*******", "caption": "****", "fileName": "****" }

Payload

array

No

An array of custom data strings that are sent to your webhook when a user clicks a corresponding button.

payloadtext1,payloadtext2,payloadtext3

string

No

The payload for a button in the message template.

payloadtext

CustWabaId deprecated

string

No

Deprecated. Use CustSpaceId instead. The WABA ID of an ISV's customer. For a direct customer, this is the Instance ID. You can find the ID on the Channel Management page.

cams-8c8*********

FallBackId

string

No

The ID of the fallback strategy. This parameter is available only on the International Site and can be ignored if you are using the China site.

S0****

FallBackContent

string

No

The custom content of the fallback message. This parameter is available only on the International Site and can be ignored if you are using the China site.

Fallback SMS

IsvCode deprecated

string

No

Deprecated. A verification code used to authorize an ISV's sub-account. You can ignore this parameter.

123123******

CustSpaceId

string

No

The Space ID of the ISV's sub-account. For a direct customer, this is the Instance ID. You can find the ID on the Channel Management page.

cams-8c8*********

ContextMessageId

string

No

The ID of the message to which you are replying.

61851ccb2f1365b16aee****

TrackingData

string

No

Custom tracking data for a Viber message. This parameter is available only on the International Site and can be ignored if you are using the China site.

Tracking Data

Label

string

No

The Viber message type. This parameter is available only on the International Site and can be ignored if you are using the China site.

promotion

Ttl

integer

No

The time-to-live (TTL) for a Viber message. This parameter is available only on the International Site and can be ignored if you are using the China site.

50

Tag

string

No

A custom tag for the Viber message.

tag

TaskId

string

No

A custom task ID.

10000****

FallBackDuration

integer

No

The duration after which a fallback is triggered. This parameter is available only on the International Site and can be ignored if you are using the China site.

120

ProductAction

object

No

Product information that you have uploaded to Meta. This parameter applies to WhatsApp channels only.

ThumbnailProductRetailerId

string

No

The product catalog ID. You can get this ID by calling the ListProductCatalog operation.

skkks99****

Sections

array<object>

No

A list of product categories. You can specify up to 10 categories and a total of 30 products.

array<object>

No

A product category.

Title

string

No

The category name. You can find the name on the Channel Management > Manage > Catalog Management > Product Management page, or obtain it by calling the ListProduct operation.

abcd

ProductItems

array<object>

No

A list of product information.

object

No

The product information.

ProductRetailerId

string

No

The product ID. You can find the ID on the Channel Management > Manage > Catalog Management > Product Management page, or obtain it by calling the ListProduct operation.

ksi3****

FallBackRule

string

No

The fallback rule. This parameter is available only on the International Site and can be ignored if you are using the China site.

undelivered

FlowAction

object

No

The Flow message object.

FlowActionData

object

No

A collection of default flow parameters.

any

No

A default flow parameter in key-value format. The key is the parameter name, and the value is the parameter value.

{ "name": "name" }

FlowToken

string

No

The custom flow token.

kde****

TemplateName

string

No

The template name. You can find the template name on the Channel Management > Manage > Template Design page.

test_name

RecipientType

string

No

The recipient type. Valid values:

  • individual: A single recipient.

  • group: A group.

individual

MessageCampaignId

string

No

The ID of the message campaign.

Note

This parameter is for internal testing, is not generally available, and can be ignored.

123123********

AdAccountId

string

No

The Meta ad account ID.

Note

This parameter is for internal testing, is not generally available, and can be ignored.

123123********

TokenType

string

No

The token type.

Note

This parameter is for internal testing, is not generally available, and can be ignored.

bearer

Category

string

No

The message category for direct WhatsApp sending.

Warning Specify this parameter only if you are a Meta-invited customer. Otherwise, the message may fail to send.

UTILITY

Response elements

Element

Type

Description

Example

object

The response data.

AccessDeniedDetail

string

Details about the access denial.

None

RequestId

string

The ID of the request.

90E63D28-E31D-1EB2-8939-A94866******

Message

string

The error message.

User not authorized to operate on the specified resource.

Code

string

The status code of the request.

  • A value of OK indicates a successful request.

  • For other status codes, see error codes.

OK

MessageId

string

The ID of the message.

61851ccb2f1365b16aee****

Examples

Success response

JSON format

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

Error codes

HTTP status code

Error code

Error message

Description

400 Product.Unsubscript You have not subscribed to the specified product. 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. The system is under flow control.
400 Unknown.ResourceOwnerId The resource does not belong to the current user. The resource does not belong to the current user.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.