Перейти к основному содержимому
Altcraft Docs LogoAltcraft Docs Logo
Для пользователяДля разработчикаДля администратора
Веб-сайтБаза знаний
Русский
  • Русский
  • English
v72
  • v74
  • v73
  • v72
Войти
  • Документация пользователя
  • FAQ
  • Термины
  • Обновления платформы
  • Хранение и сбор данных
  • Каналы коммуникации
  • Сегментация
  • Шаблоны сообщений
    • Работа с шаблонами сообщений
    • Визуальный редактор для email-шаблона
    • Блочный редактор для email-шаблона
    • Фрагменты шаблонов
    • Изображения в сообщениях
    • Персонализация контента в сообщениях
    • Формирование таблиц на основе элементов массива
    • Переменные и функции Altcraft
    • Динамический контент сообщений
      • Использование API-контента в сообщениях
      • Использование HTML-контента в сообщениях
      • Использование JSON-контента в сообщениях
      • Использование контента из SQL базы данных в сообщениях
    • Импорт и экспорт шаблона сообщения
    • Экспорт шаблона из Pixcraft
    • Импорт шаблона из стороннего сервиса
  • Кампании
  • Сценарии автоматизации
  • Маркет
  • Программы лояльности
  • Веб-слой
  • Отчеты и аналитика
  • Интеграции
  • Настройки
  • API-запросы: с чего начать
  • Библиотека email-маркетолога
Это документация к платформе Altcraft v72. Для этой версии документация больше не обновляется.
Информация по актуальной версии платформы (v74) доступна на этой странице.
  • Шаблоны сообщений
  • Динамический контент сообщений
  • Использование API-контента в сообщениях
Документация для версии v72

Использование API-контента в сообщениях

При отправке сообщений с помощью API Call триггера, начиная с версии 1.1, возможно передавать данные для сообщения вместе с API-запросом.

С помощью apicontent одно сообщение может автоматически персонализироваться под каждого клиента. В apicontent можно передать информацию о совершенных операциях, покупках, истории клиента, т.д. Данная информация передается в виде JSON-объекта.

Пример того, как может выглядеть объект для apicontent:

{
"product_id": 11,
"product_name": "Графический дизайн: курс для начинающих",
"product_price": 1000
}

Способы передачи API-контента в платформу​

Через API-запрос​

Данные в переменную apicontent можно передать, запустив триггерную кампанию или сценарий с помощью API-запроса. В запросе необходимые данные передаются в поле content. Ниже приведен список запросов, в которых доступно поле content:

  • Запуск триггерной кампании
  • Импорт профиля + Отправка триггера
  • Массовая отправка триггера
  • Массовый импорт профилей + отправка триггера
  • Отправить профиль клиента в сценарий
  • Одновременный импорт и запуск профиля в сценарий
  • Массовый импорт и запуск профилей в сценарий

Далее эти данные можно подставить в шаблон с помощью переменной apicontent:

подсказка

Предпросмотр сообщения с apicontent доступен только после настройки раздела "Настроить API контент". Для этого перейдите в раздел предпросмотра и вставьте объект, содержащий apicontent, в редактор. Нажмите на галочку, чтобы применить изменения.

Через элемент "API Запрос" в сценарии​

В элементе сценария "API Запрос" вы можете получить данные из внешнего источника с помощью запроса и сохранить http-ответ в переменную apicontent. Информация из запроса в дальнейшем может использоваться в сценарии.

О том, как настроить элемент "API Запрос", можно прочитать здесь.

Выберите тип запроса и вставьте ссылку на сервис, который будет возвращать JSON-объект:

Нажмите на переключатель "Сохранить http-ответ в поле apicontent" и введите название поля, в которое будут записаны данные из внешнего источника:

После этого вы сможете использовать данные из apicontent в других элементах сценария. Например, вы можете добавить в цепочку элемент "Email-кампания" и выбрать шаблон с переменной apicontent.

Обратите внимание, что в данном случае данные записываются в поле products, поэтому путь к данным в шаблоне немного изменится:

подсказка

Предпросмотр сообщения с apicontent доступен только после настройки раздела "Настроить API контент". Для этого перейдите в раздел предпросмотра и вставьте объект, содержащий apicontent, в редактор. Нажмите на галочку, чтобы применить изменения.

Использование цикла в шаблоне с apicontent​

В переменную apicontent можно передавать JSON-объект, содержащий массив. Пример:

{
"products": [
{
"product_id": 11,
"product_name": "Графический дизайн: курс для начинающих",
"product_price": 1000
},
{
"product_id": 12,
"product_name": "Веб-дизайн: продвинутый курс",
"product_price": 2000
}
]
}

Чтобы подставить данные из массива в шаблон, вам необходимо перебрать массив. Для этого воспользуйтесь циклом с переменными.

{for $index $el = apicontent.products}
<div>
<p>Курс: {$el.product_name}</p>
<p>Стоимость: {$el.product_price}</p>
</div>
{else}
if empty array
{end}

Этот код подставит в письмо следующие данные:

подсказка

Если вы регулярно используете один и тот же JSON-объект в переменной, то вы можете сохранить его как пресет и в дальнешем выбирать этот пресет в окне предпросмотра:

Отмена отправки сообщения, если нет поля​

Вы можете настроить отмену отправки сообщения, если в объекте apicontent определенное поле отсутствует или содержит пустое значения. Для этого добавьте проверку на наличие поля и используйте переменную {cancel}:

{if apicontent.field_2}
field_2 не пустое
{else}
{cancel}
{end}

При таком условии кампания не отправит письмо, если apicontent будет содержать один из следующих объектов:

{
"field_1": "example"
}
{
"field_1": "example",
"field_2": "" / или 0, null, false
}

Этот подход позволяет избежать отправки нерелевантных писем, а также блокировать отправку, если из внешнего источника были получены неполные данные.

Пример использования

Допустим, у вас есть маркетинговая рассылка, предназначенная только для пользователей, которые прошли или начали проходить определенный курс. В запросе приходит объект apicontent, который включает информацию о статусе прохождения курса:

{
"user_id": 123,
"course_id": "abcadefg",
"course_name": "Графический дизайн: курс для начинающих",
"course_status": "completed"
}

Однако если в запросе поле course_status отсутствует или его значение пустое, это может означать, что пользователь не начал курс или не завершил его. В таком случае письмо не должно быть отправлено. Шаблон письма:

{if apicontent.course_status}
<div>
<span>Вы интересовались курсом {apicontent.course_name}.</span>
<span>Возможно, вам понравятся эти курсы: <список курсов></span>
</div>
{else}
{cancel}
{end}
Последнее обновление 20 нояб. 2024 г.
Предыдущая страница
Динамический контент сообщений
Следующая страница
Использование HTML-контента в сообщениях
  • Способы передачи API-контента в платформу
    • Через API-запрос
    • Через элемент "API Запрос" в сценарии
  • Использование цикла в шаблоне с apicontent
  • Отмена отправки сообщения, если нет поля
© 2015 - 2025 Altcraft. Все права защищены.