Template Library
Last updated
Last updated
Meta has recently made available the Template Library, which makes it faster and easier for businesses to create templates for common use cases, like payment reminders, delivery updates and more.
These pre-written templates have already been categorized and priced as utility or authentication. These templates contain fixed content that cannot be edited and parameters you can adapt for business or user-specific information.
Clients with a Shared WABA can browse and create templates using the Template Library in WhatsApp Manager, or it is also possible create them via the API.
Follow the instructions below to create templates using the Template Library in WhatsApp Manager.
1: In the left sidebar of WhatsApp Manager under Message Templates, select Create Template.
2: Under Browse the WhatsApp Template Library, select Browse Templates.
3: Clients will now see all currently available utility templates. Use the search bar to search by topic or use case, or use the dropdown options on the sidebar to filter the results.
Hovering over a template will show you its parameter values that you can use.
4: To create a template, select one by clicking on it. Then, add your template name, select the language, and fill out the button details. Once you have completed these steps, click Submit.
If you choose Customize template, your template will have to go through review before you are able to send messages.
When a template contains the value library_template_name
in the GET /message_templates?name=<TEMPLATE_NAME>
response, it is a template created from the Template Library and is subject to type checks and restrictions.
The templates in the library contain both fixed content and parameters. The parameters represent spaces in the template where variable information can be inserted, such as names, addresses, and phone numbers.
In the example above, parameters like the name Jim
or the business name CS Mutual
can be modified to accept variables like your customer's name and your business's name.
Messages sent using templates from Template Library are subject to parameter checks during send time. Values used in parameters that are outside of the established ranges listed below will cause the message send to fail.
All parameters are length restricted. If you receive an error, try again with a shorter value.
Forms are only available to accounts who have had their message limits increased (1k). See Messaging Limits.
Some templates in Template Library are interactive forms that are powered by WhatsApp Flows.
In WhatsApp Manager, you can identify these specific templates by the "Form" label they contain. The current supported use cases are Customer Feedback and Delivery Failure.
Identifying FORMS in the API response
When calling the GET /message_template_library
endpoint (see documentation below), the type
key in the buttons
array will show as "FLOW"
.
To browse and filter available templates, use the message_template_library
endpoint.
GET
https://waba-v2.360dialog.io/message_template_library
Once you find the template you are interested in, note the name as you will use it when creating the template via the POST
method below.
To search for specific Utility Templates, insert the query string parameters below.
There are several templates to choose from in the Utility Template Library. You can use the API to filter them based on a few factors.
Example Request
GET
https://waba-v2.360dialog.io/message_template_library?industry=<INDUSTRY>
Available Filters
Example Request
GET
https://waba-v2.360dialog.io/message_template_library?topic=<TOPIC>
Available Filters
Example Request
GET
https://waba-v2.360dialog.io/message_template_library?usecase=<USECASE>
Available Filters
You can use the 360dialog API when you are ready to create a template from the library. Alternatively, you can also create it using the WhatsApp Business Manager.
To create a new template using the Template Library API, call the endpoint using the body properties fetched from the GET endpoint.
POST
https://waba-v2.360dialog.io/message_templates
See our Sending Template Messages to learn how to send it to customers.
Parameter Type | Description | Sample Value |
---|---|---|
Name | Type | Description |
---|---|---|
Placeholder | Description | Sample Value |
---|---|---|
Industry |
---|
Topic |
---|
Use Case | |
---|---|
Name | Type | Description |
---|---|---|
Placeholder | Description | Sample Value |
---|---|---|
ADDRESS
A location address.
Must be a valid address
1 Hacker Way, Menlo Park, CA 94025
TEXT
Basic text.
regarding your order.
12 pack of paper towels
your request
puchase
Jasper's Market
AMOUNT
A number signifying a quantity.
May contain a prefix or suffix for monetary values such as USD or RS
May contain decimals (.) and commas (,)
May contain valid currency symbols such as $ and €
145
USD $375.32
€1,376.22 EUR
R$ 1200
DATE
A standard calendar date.
2021-04-19
13/03/2021
5th January 1982
08.22.1991
January 1st, 2024
05 12 2022
PHONE NUMBER
A telephone number.
May contain numbers, spaces, dashes (-), parentheses, and plus symbols (+)
+1 4256789900
+91-7884-789122
+39 87 62232
EMAIL
A standard email address.
Must be a valid email address
1hackerway@meta.com
yourcustomername@gmail.com
abusinessorcustomername@hotmail.com
NUMBER
A number.
Must be a number.
Cannot contain spaces.
23444
90001234921388904
453638
D360-API-KEY
string
<SEARCH_KEY>
String
Optional.
A substring you are searching for in the content, name, header, body, or footer of the template.
payments
<TOPIC>
Enum
ORDER_MANAGEMENT
<USECASE>
Enum
SHIPMENT_CONFIRMATION
<INDUSTRY>
Enum
E_COMMERCE
<LANGUAGE>
Enum
en_US
E_COMMERCE
FINANCIAL_SERVICES
ACCOUNT_UPDATES
CUSTOMER_FEEDBACK
ORDER_MANAGEMENT
PAYMENTS
ACCOUNT_CREATION_CONFIRMATION
PAYMENT_DUE_REMINDER
FEEDBACK_SURVEY
PAYMENT_ACTION_REQUIRED
SHIPMENT_CONFIRMATION
PAYMENT_OVERDUE
DELIVERY_UPDATE
PAYMENT_CONFIRMATION
ORDER_DELAY
FRAUD_ALERT
DELIVERY_FAILED
AUTO_PAY_REMINDER
DELIVERY_CONFIRMATION
PAYMENT_SCHEDULED
ORDER_PICK_UP
PAYMENT_REJECT_FAIL
ORDER_ACTION_NEEDED
STATEMENT_AVAILABLE
ORDER_CONFIRMATION
LOW_BALANCE_WARNING
ORDER_OR_TRANSACTION_CANCEL
RECEIPT_ATTACHMENT
RETURN_CONFIRMATION
STATEMENT_ATTACHMENT
TRANSACTION_ALERT
D360-API-KEY
string
<NAME>
String
Required.
The name you are providing for your template.
Maximum 512 characters.
my_payment_template
<CATEGORY>
Enum
Required.
The template category.
Must be UTILITY
for use with Utility Template Library.
UTILITY
<LANGUAGE>
Enum
en_US
<LIBRARY_TEMPLATE_NAME>
String
Required.
The exact name of the Utility Template Library template.
delivery_update_1
<LIBRARY_TEMPLATE_BUTTON_INPUTS>
Array of objects
Optional.
The website and/or phone number of the business being used in the template.
Note: For utility templates that have button inputs, this property is not optional.
“[ {'type': 'URL', 'url': {'base_url' : 'https://www.example.com/{{1}}', 'url_suffix_example' : 'https://www.example.com/demo'}}, {type: 'PHONE_NUMBER', 'phone_number': '+16315551010'} ]"