API для сервисов email-рассылок
Общие сведения об API
Данное API предназначено для владельцев сервисов рассылки электронной почты и позволяет подключить ваш сервис отправки писем к нашей системе, если он отсутствует в списке доступных для интеграции.
После реализации интеграции вы можете настроить её в нашем интерфейсе, указав единый конечный адрес (например, https://yourserver.com/sendEmail.php), который будет принимать все запросы в формате JSON.
Взаимодействие производится по протоколу HTTPS. Система посылает запросы на указанный адрес с авторизацией через токен (см. поле authToken ниже).
Формат запроса
Запрос передаётся методом POST в формате JSON (Content-Type: application/json). Пример общего формата запроса:
{ "action": "действие", "authToken": "ваш_токен_авторизации", "data": { // Данные, зависящие от действия } }
=== Поля запроса === {| class="wikitable" style="margin-top: 1em; width:100%" ! width="150" | Имя ! width="50%" | Описание ! width="150" | Пример |- | action || Тип выполняемого действия || createList |- | authToken || Токен авторизации для доступа к API || 12345abcde |- | data || Объект с дополнительными данными для указанного действия || {"listName": "Название списка"} |}
Поддерживаемые действия
=== createList — Создание списка рассылки === Пример запроса:
{ "action": "createList", "authToken": "ваш_токен_авторизации", "data": { "listName": "Название списка" } }
Ответ при успехе:
{ "success": true, "listId": "уникальный_идентификатор_списка" }
Ответ при ошибке:
{ "error": "Описание ошибки" }
=== deleteList — Удаление списка рассылки === Пример запроса:
{ "action": "deleteList", "authToken": "ваш_токен_авторизации", "data": { "listId": "идентификатор_списка" } }
Ответ при успехе:
{ "success": true }
=== importContacts — Импорт контактов в список === Пример запроса:
{ "action": "importContacts", "authToken": "ваш_токен_авторизации", "data": { "listId": "идентификатор_списка", "contacts": [ { "id": 123, "email": "email@example.com", "firstName": "Имя", "lastName": "Фамилия" } ] } }
Ответ при успехе:
{ "success": true }
=== updateContact — Обновление контакта === Пример запроса:
{ "action": "updateContact", "authToken": "ваш_токен_авторизации", "data": { "listId": "идентификатор_списка", "action": "add|update|delete", "contact": { "id": 123, "email": "email@example.com", "firstName": "Имя", "lastName": "Фамилия" }, "oldEmail": "старый_email@example.com" // только для action=update } }
Ответ при успехе:
{ "success": true }
Примечания
Все запросы должны возвращать ответ в формате JSON. В случае ошибки всегда должно присутствовать поле "error" с описанием ошибки. В случае успеха всегда должно присутствовать поле "success": true. Авторизация происходит через поле authToken в каждом запросе. Все текстовые поля должны быть в кодировке UTF-8.