Represents a collection of templates on a WhatsApp Business Account . See Templates .
Get a list of templates on a WhatsApp Business Account.
Type | Description |
---|---|
Access Tokens |
User or System User |
Permissions |
GET /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates ?category=<CATEGORY>, &content=<CONTENT>, &language=<LANGUAGE>, &name=<NAME>, &name_or_content=<NAME_OR_CONTENT>, &quality_score=<QUALITY_SCORE>, &status=<STATUS>
Placeholder | Value |
---|---|
|
WhatsApp Business Account ID. |
A list of WhatsApp Message Template nodes.
curl 'https://graph.facebook.com/v16.0/102290129340398/message_templates?category=utility' \ -H 'Authorization: Bearer EAAJB...'
{ "data": [ { "name": "order_delivery_update", "components": [ { "type": "HEADER", "format": "LOCATION" }, { "type": "BODY", "text": "Good news {{1}}! Your order #{{2}} is on its way to the location above. Thank you for your order!", "example": { "body_text": [ [ "Mark", "566701" ] ] } }, { "type": "FOOTER", "text": "To stop receiving delivery updates, tap the button below." }, { "type": "BUTTONS", "buttons": [ { "type": "QUICK_REPLY", "text": "Stop Delivery Updates" } ] } ], "language": "en_US", "status": "APPROVED", "category": "UTILITY", "id": "1667192013751005" }, ... ], "paging": { "cursors": { "before": "MAZDZD", "after": "MjQZD" } } }
Parameter | Description |
---|---|
category
array<enum {ACCOUNT_UPDATE, PAYMENT_UPDATE, PERSONAL_FINANCE_UPDATE, SHIPPING_UPDATE, RESERVATION_UPDATE, ISSUE_RESOLUTION, APPOINTMENT_UPDATE, TRANSPORTATION_UPDATE, TICKET_UPDATE, ALERT_UPDATE, AUTO_REPLY, TRANSACTIONAL, OTP, UTILITY, MARKETING, AUTHENTICATION}>
|
The category for a template |
content
string
|
The content for a template |
language
array<string>
|
A list of supported languages that are available for each template |
name
string
|
The name for a message template |
name_or_content
string
|
Returns a list of message templates where the value for |
quality_score
array<enum {GREEN, YELLOW, RED, UNKNOWN}>
|
The quality score for a template |
status
array<enum {APPROVED, IN_APPEAL, PENDING, REJECTED, PENDING_DELETION, DELETED, DISABLED, PAUSED, LIMIT_EXCEEDED, ARCHIVED}>
|
The review status for a template |
Reading from this edge will return a JSON formatted result:
{ "
data
": [], "paging
": {}, "summary
": {} }
summary
Aggregated information about the edge, such as counts. Specify the fields to fetch in the summary param (like summary=total_count
).
Field | Description |
---|---|
total_count
unsigned int32
|
The total number of message templates that belong to a WhatsApp Business Account |
message_template_count
int32
|
The current number of message templates that belong to the WhatsApp Business Account |
message_template_limit
int32
|
The maximum number of message templates that can belong to a WhatsApp Business Account |
are_translations_complete
bool
|
The status for template translations |
Error | Description |
---|---|
200 | Permissions error |
80008 | There have been too many calls to this WhatsApp Business account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting. |
100 | Invalid parameter |
190 | Invalid OAuth 2.0 Access Token |
message_templates
edge from the following paths:
Type | Description |
---|---|
Access Tokens |
User or System User |
Permissions |
POST /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates
Placeholder | Value |
---|---|
|
ID of the WhatsApp Business Account to create the template on. |
See Parameters for property descriptions.
{ "allow_category_change": <ALLOW_CATEGORY_CHANGE>, "name": "<NAME>", "language": "<LANGUAGE>", "category": "<CATEGORY>", "components": [<COMPONENTS>] }
See Return Type .
curl 'https://graph.facebook.com/ v20.0
/102290129340398/message_templates' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"name": "seasonal_promotion",
"language": "en",
"category": "MARKETING",
"components": [
{
"type": "HEADER",
"format": "TEXT",
"text": "Our {{1}} is on!",
"example": {
"header_text": [
"Summer Sale"
]
}
},
{
"type": "BODY",
"text": "Shop now through {{1}} and use code {{2}} to get {{3}} off of all merchandise.",
"example": {
"body_text": [
[
"the end of August","25OFF","25%"
]
]
}
},
{
"type": "FOOTER",
"text": "Use the buttons below to manage your marketing subscriptions"
},
{
"type":"BUTTONS",
"buttons": [
{
"type": "QUICK_REPLY",
"text": "Unsubcribe from Promos"
},
{
"type":"QUICK_REPLY",
"text": "Unsubscribe from All"
}
]
}
]
}'
{ "id": "594425479261596", "status": "PENDING", "category": "MARKETING" }
Parameter | Description |
---|---|
allow_category_change
boolean
|
Set to
|
category
enum {UTILITY, MARKETING, AUTHENTICATION}
|
Template category. See Template Categories . Required
|
components
array<JSON object>
|
Array of components that make up the template. See Template Components .
|
type
enum {GREETING, HEADER, BODY, FOOTER, BUTTONS, CAROUSEL, LIMITED_TIME_OFFER}
|
Component type. Required
|
format
enum {TEXT, IMAGE, DOCUMENT, VIDEO, LOCATION}
|
Component format. |
text
string
|
Required for components with type
|
buttons
array<JSON object>
|
Button components to be used in the template. |
type
enum {QUICK_REPLY, URL, PHONE_NUMBER, OTP, MPM, CATALOG, FLOW, VOICE_CALL}
|
Button type. Required
|
text
string
|
Button text. |
url
URI
|
url |
phone_number
phone number string
|
phone_number |
example
array<string>
|
example |
flow_id
int64
|
flow_id |
zero_tap_terms_accepted
boolean
|
zero_tap_terms_accepted |
example
JSON object
|
Placeholder examples. Templates will not be approved without examples. |
header_text
array<string>
|
header_text |
body_text
array<array<string>>
|
body_text |
header_handle
array<string>
|
header_handle |
language
string
|
Template location and locale code . Required
|
message_send_ttl_seconds
int64
|
Time to live for message template sent. If users are offline for more than TTL duration after message template is sent, message will be dropped from message queue and will not be delivered. Only allowed for authentication message templates. |
name
string
|
Template name. Required
|
sub_category
enum {ORDER_DETAILS, ORDER_STATUS}
|
Sub category of the template |
id
: numeric string,status
: enum,category
: enum,Error | Description |
---|---|
100 | Invalid parameter |
192 | Invalid phone number |
131009 | Parameter value is not valid |
200002 | HSM Template creation failed |
200 | Permissions error |
368 | The action attempted has been deemed abusive or is otherwise disallowed |
80008 | There have been too many calls to this WhatsApp Business account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting. |
190 | Invalid OAuth 2.0 Access Token |
/{whats_app_business_account_id}/message_templates
. Type | Description |
---|---|
Access Tokens |
User or System User |
Permissions |
DELETE /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates
Placeholder | Value |
---|---|
|
ID of the WhatsApp Business Account that owns the template. |
See Return Type .
curl -X DELETE 'https://graph.facebook.com/ v20.0
/102290129340398/message_templates?name=order_confirmation' \
-H 'Authorization: Bearer EAAJB...'
{ "success": true }
Parameter | Description |
---|---|
hsm_id
numeric string
|
ID of template to be deleted. Required if deleting a template by ID. |
name
string
|
Name of template to be deleted. Required
|
success
: bool,Error | Description |
---|---|
100 | Invalid parameter |
190 | Invalid OAuth 2.0 Access Token |