Sử dụng điểm cuối /PHONE_NUMBER_ID/messages
để gửi tin nhắn văn bản, tin nhắn có chứa file phương tiện, tin nhắn có chứa thông tin liên hệ, tin nhắn có chứa thông tin vị trí và tin nhắn tương tác, cũng như các mẫu tin nhắn cho khách hàng. Tìm hiểu thêm về tin nhắn bạn có thể gửi.
Điểm cuối | Xác thực |
---|---|
(Xem phần Lấy ID số điện thoại) | Developers can authenticate their API calls with the access token generated in the App Dashboard > WhatsApp > API Setup.
Solution Partners must authenticate themselves with an access token with the |
Mỗi tin nhắn có một ID riêng (WAMID). Bạn có thể theo dõi trạng thái tin nhắn qua Webhooks bằng WAMID. Bạn cũng có thể dùng điểm cuối messages để đánh dấu một tin nhắn đến là đã đọc. WAMID này không được dài quá 128 ký tự.
Với API Đám mây, bạn không có cách nào để kiểm tra rõ ràng xem một số điện thoại có ID WhatsApp hay không. Để gửi tin nhắn cho ai đó qua API Đám mây, bạn chỉ cần gửi trực tiếp đến số điện thoại của khách hàng – sau khi khách hàng đã chọn tham gia. Hãy xem ví dụ trong Tài liệu tham khảo, Tin nhắn.
Để gửi tin nhắn, trước tiên, bạn phải tập hợp một đối tượng message có chứa nội dung bạn muốn gửi. Dưới đây là các thông số được dùng trong đối tượng message
:
Tên | Mô tả (Nhấp vào mũi tên ở cột bên trái để xem các tùy chọn được hỗ trợ.) |
---|---|
| Bắt buộc khi Một đối tượng |
| Không bắt buộc. Một chuỗi tùy ý, hữu ích để theo dõi. Ví dụ: bạn có thể chuyển ID mẫu tin nhắn vào trường này để theo dõi hành trình của khách hàng kể từ tin nhắn đầu tiên mà bạn gửi. Sau đó, bạn có thể theo dõi ROI của các loại mẫu tin nhắn khác nhau để xác định loại hiệu quả nhất. Bất kỳ ứng dụng nào mà bạn đăng ký trường webhook API Đám mây không xử lý trường này, mà chỉ trả về trong webhook thông báo đã gửi/đã phân phối/đã đọc. Tối đa 512 ký tự. Chỉ API Đám mây. |
| Bắt buộc khi Một đối tượng |
| Bắt buộc nếu trả lời bất kỳ tin nhắn nào trong cuộc trò chuyện. Một đối tượng có chứa ID của tin nhắn trước đó mà bạn đang trả lời. Ví dụ:
Chỉ API Đám mây. |
| Bắt buộc khi Một đối tượng |
| Chứa đối tượng Chỉ API Tại chỗ. |
| Bắt buộc khi Một đối tượng |
| Bắt buộc khi Một đối tượng |
| Bắt buộc khi Một đối tượng |
| Bắt buộc Dịch vụ nhắn tin được dùng cho yêu cầu. Hãy sử dụng Chỉ API Đám mây. |
| Bắt buộc nếu Cho phép xem trước URL trong tin nhắn văn bản - Xem phần Gửi URL trong tin nhắn văn bản. Đây là trường không bắt buộc nếu tin nhắn không có URL. Giá trị: Chỉ API Tại chỗ. Người dùng API Đám mây có thể sử dụng chức năng tương tự với trường |
| Không bắt buộc. Hiện tại, bạn chỉ có thể gửi tin nhắn cho cá nhân. Hãy đặt trường này thành Giá trị mặc định: |
| Trạng thái của tin nhắn. Bạn có thể sử dụng trường này để đánh dấu tin nhắn là
|
| Bắt buộc khi Một đối tượng API Đám mây: Hỗ trợ nhãn dán gửi đi dạng tĩnh và có hoạt ảnh của bên thứ ba, ngoài mọi loại nhãn dán gửi đến. Nhãn dán tĩnh cần phải có kích thước 512x512 pixel và không được vượt quá 100KB. Nhãn dán có hoạt ảnh phải có kích thước 512x512 pixel và không được vượt quá 500KB. API Tại chỗ: Chỉ hỗ trợ nhãn dán gửi đi dạng tĩnh của bên thứ ba, ngoài mọi loại nhãn dán gửi đến. Nhãn dán tĩnh cần phải có kích thước 512x512 pixel và không được vượt quá 100KB. Không hỗ trợ nhãn dán có hoạt ảnh. |
| Bắt buộc khi Một đối tượng |
| Bắt buộc đối với tin nhắn văn bản. Một đối tượng |
| Bắt buộc. ID WhatsApp hoặc số điện thoại của khách hàng mà bạn muốn gửi tin nhắn. Hãy xem phần Định dạng số điện thoại. Nếu cần, người dùng API Tại chỗ có thể lấy số này bằng cách gọi điểm cuối |
| Không bắt buộc. Loại tin nhắn mà bạn muốn gửi. Nếu bạn bỏ qua, giá trị mặc định sẽ là |
Dưới đây là các đối tượng được lồng vào trong đối tượng message:
Name | Description |
---|---|
| Optional. Full contact address(es) formatted as an
|
| Optional.
|
| Optional. Contact email address(es) formatted as an
|
| Required. Full contact name formatted as a
*At least one of the optional parameters needs to be included along with the |
| Optional. Contact organization information formatted as an
|
| Optional. Contact phone number(s) formatted as a
|
| Optional. Contact URL(s) formatted as a
|
Tên | Mô tả |
---|---|
| Bắt buộc. Hành động bạn muốn người dùng thực hiện sau khi đọc tin nhắn. |
| Không bắt buộc đối với loại Một đối tượng có chứa nội dung tin nhắn. Đối tượng
|
| Không bắt buộc. Một đối tượng có chứa phần dưới cùng của tin nhắn. Đối tượng
|
| Bắt buộc đối với loại Nội dung tiêu đề hiển thị ở đầu tin nhắn. Bạn không thể đặt tiêu đề nếu đối tượng interactive thuộc loại |
| Bắt buộc. Loại tin nhắn tương tác mà bạn muốn gửi. Giá trị được hỗ trợ:
|
Dưới đây là các đối tượng được lồng vào trong đối tượng interactive
:
Tên | Mô tả |
---|---|
| Bắt buộc đối với Tin nhắn có chứa danh sách. Nội dung nút. Không được là chuỗi trống và phải là duy nhất trong tin nhắn. Hỗ trợ biểu tượng cảm xúc, không hỗ trợ markdown. Độ dài tối đa: 20 ký tự. |
| Bắt buộc đối với Nút trả lời. Đối tượng button có thể chứa các thông số sau:
Bạn có thể có tối đa 3 nút. Khi đặt ID, bạn không được để khoảng trắng ở đầu hoặc ở cuối. |
| Bắt buộc đối với Tin nhắn về một sản phẩm và Tin nhắn về nhiều sản phẩm. Thông tin nhận dạng duy nhất của danh mục trên Facebook được liên kết với Tài khoản WhatsApp Business của bạn. Bạn có thể truy xuất ID này qua Công cụ quản lý thương mại trên Meta. |
| Bắt buộc đối với Tin nhắn về một sản phẩm và Tin nhắn về nhiều sản phẩm. Thông tin nhận dạng duy nhất của sản phẩm trong danh mục. Để lấy ID này, hãy chuyển đến Công cụ quản lý thương mại trên Meta và chọn Tài khoản kinh doanh của bạn trên Meta. Bạn sẽ nhìn thấy một danh sách các cửa hàng đã kết nối với tài khoản nêu trên. Hãy nhấp vào cửa hàng bạn muốn sử dụng. Ở bảng điều khiển bên trái, hãy nhấp vào Danh mục > Mặt hàng, rồi tìm mặt hàng bạn muốn nhắc đến. ID của mặt hàng đó hiển thị bên dưới tên mặt hàng. |
| Bắt buộc đối với Tin nhắn có chứa danh sách và Tin nhắn về nhiều sản phẩm. Mảng đối tượng |
| Không bắt buộc đối với Tin nhắn về quy trình. Chế độ hiện tại của Quy trình: Giá trị mặc định: |
| Bắt buộc đối với Tin nhắn về quy trình. Phải là |
| Bắt buộc đối với Tin nhắn về quy trình. Một mã do doanh nghiệp tạo để dùng làm thông tin nhận dạng. |
| Bắt buộc đối với Tin nhắn về quy trình. Thông tin nhận dạng duy nhất của Quy trình do WhatsApp cung cấp. |
| Bắt buộc đối với Tin nhắn về quy trình. Văn bản trên nút CTA, ví dụ: "Đăng ký". Độ dài tối đa: 20 ký tự (không có biểu tượng cảm xúc). |
| Không bắt buộc đối với Tin nhắn về quy trình.
Giá trị mặc định: |
| Không bắt buộc đối với Tin nhắn về quy trình. Chỉ bắt buộc nếu
|
Tên | Mô tả |
---|---|
| Bắt buộc nếu Chứa đối tượng media cho tài liệu này. |
| Bắt buộc nếu Chứa đối tượng media cho hình ảnh này. |
| Bắt buộc nếu Văn bản cho tiêu đề. Định dạng hỗ trợ biểu tượng cảm xúc, nhưng không hỗ trợ markdown. Độ dài tối đa: 60 ký tự. |
| Bắt buộc. Loại tiêu đề bạn muốn sử dụng. Giá trị được hỗ trợ:
|
| Bắt buộc nếu Chứa đối tượng media cho video này. |
Tên | Mô tả |
---|---|
| Bắt buộc đối với Tin nhắn về nhiều sản phẩm. Mảng đối tượng Mỗi đối tượng
|
| Bắt buộc đối với Tin nhắn có chứa danh sách. Chứa danh sách các hàng. Bạn có thể có tổng cộng 10 hàng trong các phần. Mỗi hàng phải có một tiêu đề (Độ dài tối đa: 24 ký tự) và một ID (Độ dài tối đa: 200 ký tự). Nếu muốn, bạn có thể thêm nội dung mô tả (Độ dài tối đa: 72 ký tự). Ví dụ: "rows": [ { "id":"unique-row-identifier-here", "title": "row-title-content-here", "description": "row-description-content-here", } ] |
| Bắt buộc nếu tin nhắn có nhiều phần. Tiêu đề phần. Độ dài tối đa: 24 ký tự. |
Name | Description |
---|---|
| Required. Location latitude in decimal degrees. |
| Required. Location longitude in decimal degrees. |
| Required. Name of the location. |
| Required. Address of the location. |
Hãy xem phần Lấy ID file phương tiện để biết thông tin về cách lấy ID của đối tượng media. Để biết thông tin về loại file phương tiện được hỗ trợ cho API Đám mây, hãy xem phần Loại file phương tiện được hỗ trợ.
Name | Description |
---|---|
| Required when The media object ID. Do not use this field when message |
| Required when The protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs. Do not use this field when message Cloud API users only:
|
| Optional. Media asset caption. Do not use with On-Premises API users:
|
| Optional. Describes the filename for the specific document. Use only with The extension of the filename will specify what format the document is displayed as in WhatsApp. |
| Optional. On-Premises API only. This path is optionally used with a |
Mô hình định giá theo cuộc trò chuyện đã thay đổi. Hãy xem bài viết Định giá để tìm hiểu cách hoạt động của mô hình định giá theo cuộc trò chuyện mới.
Ngoài ra, chế độ hiển thị của metric_types
đã thay đổi kể từ ngày 01/07/2023. Vui lòng xem bảng Dữ liệu phân tích cuộc trò chuyện để biết thêm chi tiết.
Name | Description |
---|---|
| Required. Name of the template. |
| Required. Contains a The
|
| Optional. Array of |
| Optional. Only used for On-Premises API. Namespace of the template. |
Dưới đây là các đối tượng được lồng vào trong đối tượng template
:
Tên | Mô tả (Nhấp vào mũi tên ở cột bên trái để xem các tùy chọn được hỗ trợ.) |
---|---|
| Bắt buộc. Cho biết loại thông số của nút. |
| Bắt buộc đối với nút Ngoài văn bản hiển thị trên nút, phần tải dữ liệu do nhà phát triển xác định sẽ được trả về khi người dùng nhấp vào nút. Hãy xem ví dụ trong phần Lệnh gọi lại khi nhấp vào nút câu trả lời nhanh. |
| Bắt buộc đối với nút URL. Hậu tố do nhà phát triển cung cấp được thêm vào URL tiền tố định sẵn trong mẫu. |
Name | Description (Click the arrow in the left column for supported options.) |
---|---|
| Required. Describes the Example of a "components": [{ "type": "body", "parameters": [{ "type": "text", "text": "name" }, { "type": "text", "text": "Hi there" }] }] |
| Required when Type of button to create. |
| Required when Array of For components of type=button, see the |
| Required when Position index of the button. You can have up to 10 buttons using index values of 0 to 9. |
Tên | Mô tả |
---|---|
| Bắt buộc. Văn bản mặc định nếu không bản địa hóa được. |
| Bắt buộc. Mã đơn vị tiền tệ theo quy định trong |
| Bắt buộc. Số tiền nhân với 1.000. |
Tên | Mô tả |
---|---|
| Bắt buộc. Văn bản mặc định. Đối với API Đám mây, chúng tôi luôn sử dụng giá trị dự phòng và không cố gắng bản địa hóa bằng các trường không bắt buộc khác. |
Tên | Mô tả |
---|---|
| Bắt buộc. Mô tả loại thông số. Giá trị được hỗ trợ:
Đối với mẫu dạng văn bản, các loại thông số được hỗ trợ duy nhất là |
| Bắt buộc khi Văn bản của tin nhắn. Giới hạn ký tự khác nhau tùy theo loại thành phần có trong tin nhắn sau đây. Đối với loại thành phần
Đối với loại thành phần
|
| Bắt buộc khi Một đối tượng |
| Bắt buộc khi Một đối tượng |
| Bắt buộc khi Một đối tượng |
| Bắt buộc khi Một đối tượng |
| Bắt buộc khi Một đối tượng |
Tên | Mô tả |
---|---|
| Bắt buộc đối với tin nhắn văn bản. Văn bản của tin nhắn văn bản - có thể chứa URL bắt đầu bằng http:// hoặc https:// và định dạng. Hãy xem các tùy chọn định dạng có sẵn ở đây. Nếu bạn thêm URL vào văn bản và muốn thêm hộp xem trước vào tin nhắn văn bản ( Độ dài tối đa: 4.096 ký tự |
| Không bắt buộc. Chỉ API Đám mây. Đặt thành Nếu bạn bỏ qua Đối với người dùng API Tại chỗ, hãy sử dụng |
Tên | Mô tả |
---|---|
| Bắt buộc. ID tin nhắn WhatsApp (WAMID) của tin nhắn sẽ hiện cảm xúc. Hệ thống sẽ không gửi cảm xúc nếu:
Nếu đây là ID của một tin nhắn đã bị xóa, hệ thống sẽ không phân phối tin nhắn đó. |
| Bắt buộc. Biểu tượng cảm xúc sẽ hiện trên tin nhắn.
|
Hãy xem các hướng dẫn sau đây để biết đầy đủ thông tin về cách gửi tin nhắn thông qua điểm cuối /messages
:
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "text",
"text": { // the text object
"preview_url": false,
"body": "MESSAGE_CONTENT"
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "reaction",
"reaction": {
"message_id": "wamid.HBgLM...",
"emoji": "\uD83D\uDE00"
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM-PHONE-NUMBER-ID/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE-NUMBER",
"type": "image",
"image": {
"id" : "MEDIA-OBJECT-ID"
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"to": "PHONE_NUMBER",
"type": "location",
"location": {
"longitude": LONG_NUMBER,
"latitude": LAT_NUMBER,
"name": LOCATION_NAME,
"address": LOCATION_ADDRESS
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"to": "PHONE_NUMBER",
"type": "contacts",
"contacts": [{
"addresses": [{
"street": "STREET",
"city": "CITY",
"state": "STATE",
"zip": "ZIP",
"country": "COUNTRY",
"country_code": "COUNTRY_CODE",
"type": "HOME"
},
{
"street": "STREET",
"city": "CITY",
"state": "STATE",
"zip": "ZIP",
"country": "COUNTRY",
"country_code": "COUNTRY_CODE",
"type": "WORK"
}],
"birthday": "YEAR_MONTH_DAY",
"emails": [{
"email": "EMAIL",
"type": "WORK"
},
{
"email": "EMAIL",
"type": "HOME"
}],
"name": {
"formatted_name": "NAME",
"first_name": "FIRST_NAME",
"last_name": "LAST_NAME",
"middle_name": "MIDDLE_NAME",
"suffix": "SUFFIX",
"prefix": "PREFIX"
},
"org": {
"company": "COMPANY",
"department": "DEPARTMENT",
"title": "TITLE"
},
"phones": [{
"phone": "PHONE_NUMBER",
"type": "HOME"
},
{
"phone": "PHONE_NUMBER",
"type": "WORK",
"wa_id": "PHONE_OR_WA_ID"
}],
"urls": [{
"url": "URL",
"type": "WORK"
},
{
"url": "URL",
"type": "HOME"
}]
}]
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "interactive",
"interactive": {
"type": "product",
"body": {
"text": "optional body text"
},
"footer": {
"text": "optional footer text"
},
"action": {
"catalog_id": "CATALOG_ID",
"product_retailer_id": "ID_TEST_ITEM_1"
}
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "interactive",
"interactive": {
"type": "product_list",
"header":{
"type": "text",
"text": "header-content"
},
"body": {
"text": "body-content"
},
"footer": {
"text": "footer-content"
},
"action": {
"catalog_id": "CATALOG_ID",
"sections": [
{
"title": "section-title",
"product_items": [
{ "product_retailer_id": "product-SKU-in-catalog" },
{ "product_retailer_id": "product-SKU-in-catalog" },
...
]
},
{
"title": "section-title",
"product_items": [
{ "product_retailer_id": "product-SKU-in-catalog" },
{ "product_retailer_id": "product-SKU-in-catalog" },
...
]
}
]
}
}
}
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "interactive",
"interactive" : {
"type" : "catalog_message",
"body" : {
"text": "Thanks for your order! Tell us what address you’d like this order delivered to."
},
"action": {
"name": "catalog_message",
"parameters": {
"thumbnail_product_retailer_id": "<Product-retailer-id>"
}
}
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "interactive",
"interactive" : {
"type": "flow",
"header": {
"type": "text",
"text": "Flow message header"
},
"body": {
"text": "Flow message body"
},
"footer": {
"text": "Flow message footer"
},
"action": {
"name": "flow",
"parameters": {
"flow_message_version": "3",
"flow_token": "AQAAAAACS5FpgQ_cAAAAAD0QI3s",
"flow_id": "<FLOW_ID>",
"flow_cta": "Book!",
"flow_action": "navigate",
"flow_action_payload": {
"screen": "<SCREEN_ID>",
"data": {
"user_name": "name",
"user_age": 25
}
}
}
}
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "interactive",
"interactive": {
"type": "list",
"header": {
"type": "text",
"text": "HEADER_TEXT"
},
"body": {
"text": "BODY_TEXT"
},
"footer": {
"text": "FOOTER_TEXT"
},
"action": {
"button": "BUTTON_TEXT",
"sections": [
{
"title": "SECTION_1_TITLE",
"rows": [
{
"id": "SECTION_1_ROW_1_ID",
"title": "SECTION_1_ROW_1_TITLE",
"description": "SECTION_1_ROW_1_DESCRIPTION"
},
{
"id": "SECTION_1_ROW_2_ID",
"title": "SECTION_1_ROW_2_TITLE",
"description": "SECTION_1_ROW_2_DESCRIPTION"
}
]
},
{
"title": "SECTION_2_TITLE",
"rows": [
{
"id": "SECTION_2_ROW_1_ID",
"title": "SECTION_2_ROW_1_TITLE",
"description": "SECTION_2_ROW_1_DESCRIPTION"
},
{
"id": "SECTION_2_ROW_2_ID",
"title": "SECTION_2_ROW_2_TITLE",
"description": "SECTION_2_ROW_2_DESCRIPTION"
}
]
}
]
}
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "interactive",
"interactive": {
"type": "button",
"body": {
"text": "BUTTON_TEXT"
},
"action": {
"buttons": [
{
"type": "reply",
"reply": {
"id": "UNIQUE_BUTTON_ID_1",
"title": "BUTTON_TITLE_1"
}
},
{
"type": "reply",
"reply": {
"id": "UNIQUE_BUTTON_ID_2",
"title": "BUTTON_TITLE_2"
}
}
]
}
}
}'
Mô hình định giá theo cuộc trò chuyện đã thay đổi. Hãy xem bài viết Định giá để tìm hiểu cách hoạt động của mô hình định giá theo cuộc trò chuyện mới.
Ngoài ra, chế độ hiển thị của metric_types
đã thay đổi kể từ ngày 01/07/2023. Vui lòng xem bảng Dữ liệu phân tích cuộc trò chuyện để biết thêm chi tiết.
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER_ID/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "PHONE_NUMBER",
"type": "template",
"template": {
"name": "TEMPLATE_NAME",
"language": {
"code": "LANGUAGE_AND_LOCALE_CODE"
},
"components": [
{
"type": "header",
"parameters": [
{
"type": "image",
"image": {
"link": "http(s)://URL"
}
}
]
},
{
"type": "body",
"parameters": [
{
"type": "text",
"text": "TEXT_STRING"
},
{
"type": "currency",
"currency": {
"fallback_value": "VALUE",
"code": "USD",
"amount_1000": NUMBER
}
},
{
"type": "date_time",
"date_time": {
"fallback_value": "MONTH DAY, YEAR"
}
}
]
},
{
"type": "button",
"sub_type": "quick_reply",
"index": "0",
"parameters": [
{
"type": "payload",
"payload": "PAYLOAD"
}
]
},
{
"type": "button",
"sub_type": "quick_reply",
"index": "1",
"parameters": [
{
"type": "payload",
"payload": "PAYLOAD"
}
]
}
]
}
}'
curl -X POST \
'https://graph.facebook.com/v19.0
/FROM_PHONE_NUMBER/messages' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"messaging_product": "whatsapp",
"context": {
"message_id": "MESSAGE_ID"
},
"to": "PHONE_NUMBER",
"type": "text",
"text": {
"preview_url": false,
"body": "your-text-message-content"
}
}’
{ "messaging_product": "whatsapp", "contacts": [ { "input": "16505555555", "wa_id": "16505555555" } ], "messages": [ { "id": "wamid.HBgLMTY1MDUwNzY1MjAVAgARGBI5QTNDQTVCM0Q0Q0Q2RTY3RTcA" } ] }
Applies to businesses in Brazil, Colombia, and Singapore, starting September 12, 2023. Applies to all businesses starting October 12, 2023.
Messages will have one of the following statuses which will be returned in each of the messages
objects
"message_status":"accepted"
: means the message was sent to the intended recipient"message_status":"held_for_quality_assessment"
: means the message send was delayed until quality can be validated and it will either be sent or dropped at this point{ "messaging_product": "whatsapp", "contacts": [ { "input": "16505555555", "wa_id": "16505555555" } ], "messages": [ { "id": "wamid.HBgLMTY1MDUwNzY1MjAVAgARGBI5QTNDQTVCM0Q0Q0Q2RTY3RTcA", "message_status": "accepted", } ] }