Skip to content

Отправка транзакционных рассылок

Такие рассылки отправляются индивидуально каждому получателю через API-запрос. Чаще всего в рассылки передаются переменные, которые подставляются в контент письма.

shell
POST https://api.rees46.ru/transact

Параметры

ПараметрОбязателен?Описание
shop_idДаAPI-ключ
shop_secretДаСекретный ключ API
codeДаУникальный код транзакционной рассылки
email*ДаEmail клиента
phone*ДаТелефон клиента
external_id*ДаВнешний ID клиента
loyalty_id*ДаИдентификатор ПЛ клиента
telegram_id*ДаTelegram ID клиента
variablesНетОбъект с переменными, которые подставляются в текст сообщения. Рекомендуем использовать плоский объект без вложенных объектов
testНетФлаг отправки тестового письма. Если указан в 1 или true, то письмо отправляется, но не получает уникальный код и для него не учитываются открытия, клики, баунсы и другие действия получателя
ccНетАдреса электронной почты для получения копии письма в виде массива
bccНетАдреса электронной почты для получения скрытой копии письма в виде массива

Идентификаторы

Параметры, отмеченные [*] - обязателен хотя бы один из них. Даже если вы отправляете рассылку на email, вы можете передать phone, если уверены, что у клиента есть и email и phone (часто phone есть у 100% клиентов, а email не у всех). В том числе это решает проблему отправки мобильного пуша.

Запрос

Пример запроса:

shell
curl --header "Content-Type: application/json" \
  --request POST \
  --data-binary "@payload.json" \
  https://api.rees46.ru/transact
shell
curl --location --request POST 'https://api.rees46.ru/transact' \
--form 'shop_id="SHOP_ID"' \
--form 'shop_secret="SHOP_SECRET"' \
--form 'code="TRANSACTIONAL_MESSAGE_CODE"' \
--form 'email="EMAIL"' \
--form 'variables[KEY]="VALUE"'
--form 'variables[KEY_2]="VALUE_2"'

Пример JSON-тела:

json
{
    "shop_id": "...",
    "shop_secret": "...",
    "phone": "7XXXXXXXXX",
    "code": "password-restore",
    "variables": {
      "2fa_code": "...",
      "first_name": "...",
      "last_name": "..."
    }
}

Ответ

Пример ответа сервера:

json
{
  "success": true,
  "payload": {
    "code": "..."
  }
}

Расшифровка ответа:

ПараметрОписание
successЗапрос выполнен успешно или нет
payloadТело ответа
payload.codeУникальный код сообщения, по которому потом можно проверять статусы доставки и другие показатели

В случае ошибки ответ будет в формате:

json
{
  "success": false,
  "payload": {
    "message": "Shop not found"
  }
}