Шаблоны с ограниченным сроком действия | Документация для разработчиков
Шаблоны для ограниченных по времени предложений
Обновлено: 4 ноября 2025 г
В этом документе описаны шаблоны ограниченных по времени предложений и способы их использования.
Шаблоны для ограниченных по времени предложений позволяют отображать даты истечения срока действия и таймеры обратного отсчета для промокодов в сообщениях шаблона, что упрощает информирование о предложениях с ограниченным сроком действия и повышает вовлеченность клиентов.

Ограничения
МАРКЕТИНГ Компоненты нижнего колонтитула не поддерживаются.Пользователи, которые просматривают шаблон сообщения с ограниченным по времени предложением в веб-приложении или настольном приложении WhatsApp, не увидят само предложение, а вместо этого увидят сообщение о том, что они получили сообщение, но оно не поддерживается в используемом ими клиенте.Создание шаблонов для ограниченных по времени предложений
Для создания шаблона ограниченного по времени предложения используйте «Шаблоны сообщений» в разделе «Аккаунт WhatsApp для бизнеса»
Синтаксис запроса
curl -X POST "https://graph.facebook.com/v23.0/<WHATSAPP_BUSINESS_ACCOUNT_ID> /message_templates" \ -H "Авторизация: Bearer"<ACCESS_TOKEN> " \ -H "Content-Type: application/json" \ -d ' { "name": "<TEMPLATE_NAME> ", "язык": "<TEMPLATE_LANGUAGE> ", "category": "marketing", "components": [ { "type": "header", "format": "<HEADER_FORMAT> ", "пример": { "header_handle": [ "<HEADER_ASSET_HANDLE> " ] } }, { "type": "limited_time_offer", "limited_time_offer": { "text": "<LIMITED_TIME_OFFER_TEXT> ", "has_expiration":<HAS_EXPIRATION> } }, { "type": "body", "text": "<BODY_TEXT> ", "пример": { "body_text": [<BODY_TEXT_VARIABLE_EXAMPLES> ] } }, { "type": "buttons", "buttons": [ { "type": "copy_code", "example": "<OFFER_CODE_EXAMPLE> " }, { "type": "url", "text": "<URL_BUTTON_TEXT> ", "url": "<URL_BUTTON_URL> ", "пример": [ "<URL_EXAMPLE_WITH_VARIABLE_EXAMPLE> " ] } ] } ] }'Параметры запроса
| Заполнитель | Описание | Пример значения |
|---|---|---|
<BODY_TEXT>Нить | Необходимый. Основной текст. Поддерживает переменные. Максимальное количество символов: 600. | Отличные новости, {{1}}! Используйте код {{2}}, чтобы получить скидку 25% на все пакетные туры в Карибский бассейн! |
<BODY_TEXT_VARIABLE_EXAMPLES>Массив строк | Обязательно, если текст компонента "тело" использует переменные. Массив примеров строковых переменных. Необходимо предоставить примеры для всех заполнителей в нить.Максимального ограничения нет, но это учитывается в счете. максимум. | ["Пабло","CARIBE25"] |
<HAS_EXPIRATION>Логический | Необязательный. Установите значение true , чтобы информация об истечении срока действия предложения отображалась в доставленном сообщении. | истинный |
<HEADER_ASSET_HANDLE>Обращение к медиа-активу | Обязательно, если используется заголовок в виде изображения или видео. Идентификатор загруженного медиафайла. Используйте API возобновляемой загрузки для генерации идентификатора файла. | 4::aW... |
<HEADER_FORMAT>Перечисление | Обязательно, если используется заголовок. Может быть изображением или видео . | ИЗОБРАЖЕНИЕ |
<LIMITED_TIME_OFFER_TEXT>Нить | Необходимый. Подробности предложения в текстовом виде. Максимум 16 символов. | Предложение истекает! |
<OFFER_CODE_EXAMPLE>Нить | Необходимый. Пример промокода. Максимум 15 символов. | CARIBE25 |
<TEMPLATE_LANGUAGE>Перечисление | Необходимый. шаблона и код локали . | en_US |
<TEMPLATE_NAME>Нить | Необходимый. Название шаблона. Максимальное количество символов: 512. | ограниченное по времени предложение_карибский_пакет_2023 |
<URL_BUTTON_TEXT>Нить | Забронируйте прямо сейчас! | |
<URL_BUTTON_URL>Нить | Необходимый. URL веб-сайта, который загружается в мобильном веб-браузере по умолчанию на устройстве при нажатии пользователем WhatsApp кнопки URL Поддерживается добавление одной переменной в конец строки URL. Максимум 2000 символов. | https://awesomedestinations.com/offers?code={{1}} |
<URL_EXAMPLE_WITH_VARIABLE_EXAMPLE>Нить | Обязательно, если в URL используется переменная. Пример URL-адреса с добавленной в конце переменной example. Максимального значения нет, но значение учитывается. максимум. | https://awesomedestinations.com/offers?ref=n3mtql |
Информация о сроке действия предложения
В отправленном сообщении может отображаться раздел с подробной информацией об истечении срока действия предложения, включающий заголовок, необязательный таймер и сам код предложения.

Таймер истечения срока действия — это текстовая строка, которую нельзя изменить, но она изменит цвет на красный, если сообщение будет просмотрено и срок действия промокода истечет в течение следующего часа. (При отправке шаблона сообщения необходимо указать сам промокод и метку времени его истечения.)
Пример запроса
Это пример запроса на создание шаблона для ограниченного по времени предложения, в котором используются следующие параметры:
curl 'https://graph.facebook.com/v17.0/102290129340398/message_templates' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer EAAJB...' \ -d ' { "name": "limited_time_offer_caribbean_pkg_2023", "language": "en_US", "category": "marketing", "components": [ { "type": "header", "format": "image", "example": { "header_handle": [ "4::aW..." ] } }, { "type": "limited_time_offer", "limited_time_offer": { "text": "Expiring offer!", "has_expiration": true } }, { "type": "body", "text": "Good news, {{1}}! Use code {{2}} получите скидку 25% на все пакетные туры в Карибский бассейн!", "пример": { "body_text": [ [ "Пабло", "CARIBE25" ] ] } }, { "type": "кнопки", "кнопки": [ { "type": "копировать_код", "пример": "CARIBE25" }, { "type": "url", "text": "Забронируйте сейчас!", "url": "https://awesomedestinations.com/offers?code={{1}}", "пример": [ "https://awesomedestinations.com/offers?ref=n3mtql" ] } ] } ] }'Пример ответа
{ "id": "546151681022936", "status": "PENDING", "category": "MARKETING" }Отправка шаблонов ограниченных по времени предложений
Используйте WhatsApp Business Phone Number > Messages , чтобы отправить утвержденный шаблон ограниченного по времени предложения в шаблонном сообщении.
Синтаксис запроса
curl -X POST "https://graph.facebook.com/v23.0/<WHATSAPP_BUSINESS_PHONE_NUMBER_ID> /messages" \ -H "Авторизация: Bearer"<ACCESS_TOKEN> " \ -H "Content-Type: application/json" \ -d ' { "messaging_product": "whatsapp", "recipient_type": "individual", "to": "<CUSTOMER_PHONE_NUMBER> ", "type": "template", "template": { "name": "<TEMPLATE_NAME> ", "язык": { "код": "<TEMPLATE_LANGUAGE_CODE> " }, "components": [ { "type": "header", "parameters": [ { "type": "<HEADER_TYPE> ", "<HEADER_TYPE> ": { "идентификатор": "<HEADER_ASSET_ID> " } } ] }, { "type": "body", "parameters": [<BODY_VARIABLES> ] }, { "type": "limited_time_offer", "parameters": [ { "type": "limited_time_offer", "limited_time_offer": { "expiration_time_ms":<EXPIRATION_TIME> } } ] }, { "type": "button", "sub_type": "copy_code", "index": 0, "parameters": [ { "type": "coupon_code", "coupon_code": "<OFFER_CODE> " } ] }, { "type": "button", "sub_type": "url", "index":<URL_BUTTON_INDEX> , "параметры": [ { "тип": "текст", "текст": "<URL_VARIABLE> " } ] } ] } }'Параметры запроса
| Заполнитель | Описание | Пример значения |
|---|---|---|
<BODY_VARIABLES>Массив объектов | Обязательно, если в основном тексте шаблона используются переменные. Значения переменных в основном тексте. Определите каждую переменную как отдельный объект. | {"type":"text","text":"Pablo"},{"type":"text","text":"CARIBE25"} |
<CUSTOMER_PHONE_NUMBER>Нить | Необходимый. Номер телефона клиента, которому следует отправить шаблонное сообщение. | +16505555555 |
<EXPIRATION_TIME>метка времени Unix | Необходимый. Укажите время истечения срока действия кода в виде метки времени UNIX в миллисекундах. | 1698562800000 |
<HEADER_ASSET_ID>Идентификатор медиафайла | Необходимый. Идентификатор загруженного медиафайла. Используйте /PHONE_NUMBER_ID/media для генерации идентификатора. | 1602186516975000 |
<HEADER_TYPE>Нить | Необходимый. Тип заголовка, используемый шаблоном. Значениями могут быть изображение или видео . | изображение |
<OFFER_CODE>Нить | Обязательно, если в шаблоне используется кнопка копирования кода. Код предложения. Максимум 15 символов. | CARIBE25 |
<TEMPLATE_LANGUAGE_CODE>Перечисление | Необходимый. Языковой и локализационный код шаблона . | en_US |
<TEMPLATE_NAME>Нить | Необходимый. Название шаблона. | ограниченное по времени предложение_карибский_пакет_2023 |
<URL_BUTTON_INDEX>Целое число | Необходимый. Индекс кнопки URL. Если в шаблоне используется кнопка копирования кода, значение должно быть следующим: 1.Если в шаблоне нет кнопки копирования кода, значение должно быть следующим: 0. | 1 |
<URL_VARIABLE>Нить | Обязательно, если в URL используется переменная. Значение переменной URL. Максимального количества символов нет, но значение учитывается в рамках максимального ограничения в 2000 символов в URL-строке. | n3mtql |
Пример запроса
Пример запроса на отправку шаблона предложения с ограниченным сроком действия, в котором используется:
curl 'https://graph.facebook.com/v17.0/106540352242922/messages' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer EAAJB...' \ -d ' { "messaging_product": "whatsapp", "recipient_type": "individual", "to": "16505555555", "type": "template", "template": { "name": "limited_time_offer_caribbean_pkg_2023", "language": { "code": "en_US" }, "components": [ { "type": "header", "parameters": [ { "type": "image", "image": { "id": "1602186516975000" } } ] }, { "type": "body", "параметры": [ { "тип": "текст", "текст": "Пабло" }, { "тип": "текст", "текст": "CARIBE25" } ] }, { "тип": "ограниченное_время_предложение", "параметры": [ { "тип": "ограниченное_время_предложение", "ограниченное_время_предложение": { "время_истечения_мс": 1209600000 } } ] }, { "тип": "кнопка", "подтип": "код_копии", "индекс": 0, "параметры": [ { "тип": "код_купона", "код_купона": "CARIBE25" } ] }, { "тип": "кнопка", "подтип": "url", "индекс": 1, "параметры": [ { "тип": "текст", "текст": "n3mtql" } ] } ] } }'Пример ответа
{ "messaging_product": "whatsapp", "contacts": [ { "input": "16505555555", "wa_id": "16505555555" } ], "messages": [ { "id": "wamid.HBgLMTY1MDUwNzY1MjAVAgARGBI5QTNDQTVCM0Q0Q0Q2RTY3RTcA" } ] }