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 |
---|---|
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 |
200 | Permissions error |
190 | Invalid OAuth 2.0 Access Token |
2500 | Error parsing graph query |
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, APP}
|
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 |
flow_action
enum {NAVIGATE, DATA_EXCHANGE}
|
flow_action |
navigate_screen
string
|
navigate_screen |
supported_apps
array<JSON object>
|
supported_apps |
package_name
string
|
package_name Required
|
signature_hash
string
|
signature_hash Required
|
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
|
library_template_body_inputs
JSON object
|
Optional data during creation of a template from a library template. These are optional fields for the body component. |
add_contact_number
boolean
|
add_contact_number |
add_learn_more_link
boolean
|
add_learn_more_link |
add_security_recommendation
boolean
|
add_security_recommendation |
add_track_package_link
boolean
|
add_track_package_link |
code_expiration_minutes
int64
|
code_expiration_minutes |
library_template_button_inputs
array<JSON object>
|
Optional data during creation of a template from a library template. These are optional fields for the button component. |
type
enum {QUICK_REPLY, URL, PHONE_NUMBER, OTP, MPM, CATALOG, FLOW, VOICE_CALL, APP}
|
type Required
|
phone_number
string
|
phone_number |
url
JSON object
|
url |
base_url
string
|
base_url Required
|
url_suffix_example
string
|
url_suffix_example |
otp_type
enum {COPY_CODE, ONE_TAP, ZERO_TAP}
|
otp_type |
zero_tap_terms_accepted
boolean
|
zero_tap_terms_accepted |
supported_apps
array<JSON object>
|
supported_apps |
package_name
string
|
package_name Required
|
signature_hash
string
|
signature_hash Required
|
library_template_name
string
|
library_template_name |
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 |
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. |
131009 | Parameter value is not valid |
368 | The action attempted has been deemed abusive or is otherwise disallowed |
200 | Permissions error |
190 | Invalid OAuth 2.0 Access Token |
139000 | Blocked by Integrity |
/{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 |