Управление Email-компаниями

Для авторизации используется ApiKey полученный в личном кабинете для соответствующей компании. Пример заголовка:

Authorization : Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjYW1wYWlnbiI6eyJpZCI6MzI3LCJ0eXBlIjoiQXBpQ2FtcGFpZ2

Точка подключения:

https://devino.online

Получение списка Email-кампаний (GET)

Возвращает список рассылок.

/api/v1/email_campaigns?page=<Номер страницы>&per_page=<Кол-во записей>

Параметры запроса:

Параметр Тип данных Описание Обязательный
page integer Номер страницы Нет
per_page integer Кол-во записей Нет

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

{
 "id": 0,
 "name": "string",
 "company_id": 0,
 "subscriber_list_id": 0,
 "started": true,
 "started_at": "2018-05-03T09:45:06.516Z",
 "user_id": 0,
 "run_status": "string"
}

Параметры ответа:

Параметр Тип данных Описание Обязательный
id integer Идентификатор кампании Да
name string Название кампании Да
company_id integer Идентификатор компании Да
subscriber_list_id integer Идентификатор листа подписчиков Да
started boolean Флаг статуса Да
started_at string Дата и время старта кампании Да
user_id integer Пользователь, создавший кампанию Да
run_status string Статус процесса кампании Да

Получение Email-кампании (GET)

Метод возвращает данные о рассылке.

/api/v1/email_campaigns/{id}

Параметры запроса:

Параметр Тип данных Описание Обязательный
id integer Идентификатор Email-кампании Да

Создание Email-кампании (POST)

Метод создаёт рассылку. Если рассылка была успешно создана, возвращается код «ok» и http код 201.

/api/v1/email_campaigns?subscriber_list_id=<Идентификатор листа подписчиков>&name=<Название кампании>&started_at_date=<День старта>&started_at_hour=<Час старта>&started_at_min=<Минуты старта>&settings_config_attributes[mailbox_id]=<Идентификатор адреса отправителя>&email_content[email_sender_name_id]=<Идентификатор отправителя>&email_content[subject]=<Тема письма>&email_content[email_template_id]=<Идентификатор шаблона>&planned_start=<Плановый старт>

Параметры запроса:

Параметр Тип данных Описание Обязательный
subscriber_list_id integer Идентификатор листа подписчиков Да
name string Название кампании Да
planned_start boolean Плановый старт Нет
started_at_date string День старта (формат dd.mm.yyyy) Да
started_at_hour integer Час старта Да
started_at_min integer Минуты старта Да
settings_config_attributes[mailbox_id] integer Идентификатор адреса отправителя Да
email_content[email_sender_name_id] integer Идентификатор отправителя Да
email_content[subject] integer Тема письма Да
email_content[email_template_id] integer Идентификатор шаблона Да

Редактирование Email-кампании (PUT)

Метод редактирования рассылки. Если рассылка была успешно отредактирована, возвращается код «ok» и http код 200. Параметры запроса и ответ идентичны Tasks POST. При этом все поля являются обязательными и заменяются.

/api/v1/email_campaigns/{id}?subscriber_list_id=<Идентификатор листа подписчиков>&name=<Название кампании>&started_at_date=<День старта>&started_at_hour=<Час старта>&started_at_min=<Минуты старта>&settings_config_attributes[mailbox_id]=<Идентификатор адреса отправителя>&email_content[email_sender_name_id]=<Идентификатор отправителя>&email_content[subject]=<Тема письма>&email_content[email_template_id]=<Идентификатор шаблона>&planned_start=<Плановый старт>

Параметры запроса:

Параметр Тип данных Описание Обязательный
id integer Идентификатор Email-кампании Да
subscriber_list_id integer Идентификатор листа подписчиков Да
name string Название кампании Да
planned_start boolean Плановый старт Нет
started_at_date string День старта (формат dd.mm.yyyy) Да
started_at_hour integer Час старта Да
started_at_min integer Минуты старта Да
settings_config_attributes[mailbox_id] integer Идентификатор адреса отправителя Да
email_content[email_sender_name_id] integer Идентификатор отправителя Да
email_content[subject] integer Тема письма Да
email_content[email_template_id] integer Идентификатор шаблона Да

Запуск созданной рассылки (POST)

Обновление статуса рассылки для запуска компании.

/api/v1/email_campaigns/{id}/start

Параметры запроса:

Параметр Тип данных Описание Обязательный
id integer Идентификатор Email-кампании Да

Остановка рассылки (POST)

Обновление статуса рассылки для остановки компании.

/api/v1/email_campaigns/{id}/pause

Параметры запроса:

Параметр Тип данных Описание Обязательный
id integer Идентификатор Email-кампании Да

Запрос статистики по компании (GET)

Получение статистики по сообщениям в виде набора счётчиков (сколько было отправлено, сколько было доставлено, сколько не было отправлено и т.д.).

/api/v1/email_campaigns/{id}/statistics?start_date=<Дата начала выборки>&end_date=<Дата окончания>&page=<Номер страницы>&per_page=<Кол-во записей>

Параметры запроса:

Параметр Тип данных Описание Обязательный
id integer Идентификатор Email-кампании Да
start_date date Дата начала выборки. Формат dd.mm.yyyy Да
end_date date Дата конца выборки. Формат dd.mm.yyyy Да
page integer Номер страницы Нет
per_page integer Кол-во записей Нет

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

{
  "campaign_id": 0,
  "date": "2018-05-03",
  "not_sent_count": 0,
  "sent_count": 0,
  "delivered_count": 0,
  "undelivered_count": 0,
  "clicked_count": 0,
  "unsubscribed_count": 0
}

Параметры ответа:

Параметр Тип данных Описание Обязательный
campaign_id integer Идентификатор Email-кампании Да
date string Дата Да
not_sent_count integer Не отправлено сообщений Да
sent_count integer Отправлено сообщений Да
delivered_count integer Доставлено сообщений Да
undelivered_count integer Не доставлено сообщений Да
clicked_count integer Переходов по ссылкам Да
unsubscribed_count integer Отписались Да

Управление адресами отправителя Email

Получение адресов отправителя (GET)

Метод возвращает адреса отправителя авторизованного пользователя - подтверждённые и запрошенные.

Возвращаемый результат - список записей.

/api/v1/email_sender_names?page=<Номер страницы>&per_page=<Кол-во записей>

Параметры запроса:

Параметр Тип данных Описание Обязательный
page integer Номер страницы Нет
per_page integer Кол-во записей Нет

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

{
 "id": 0,
 "company_id": 0,
 "name": "string",
 "confirmed": true,
 "created_at": "2018-05-03T09:45:06.616Z"
}

Параметры ответа:

Параметр Тип данных Описание Обязательный
id integer Идентификатор отправителя Да
company_id integer Идентификатор компании Да
name string Название отправителя Да
confirmed boolean Подтвержден или нет Да
created_at string Дата создания Да

Добавление адреса отправителя (POST)

Метод отправляет запрос на подтверждение нового адреса отправителя. Адрес должен быть валидным email адресом. Если запрос был успешно отправлен, возвращается код «ok» и http код 201.

/api/v1/email_sender_names?name=<Название отправителя>

Параметры запроса:

Параметр Тип данных Описание Обязательный
name string Название отправителя Да

Удаление адреса отправителя (DELETE)

/api/v1/email_sender_names/{id}

Параметры запроса:

Параметр Тип данных Описание Обязательный
id integer Идентификатор отправителя Да

Email Шаблоны

Получение шаблона (GET)

/api/v1/email_templates?page=<Номер страницы>&per_page=<Кол-во записей>

Параметры запроса:

Параметр Тип данных Описание Обязательный
page integer Номер страницы Нет
per_page integer Кол-во записей Нет

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

{
 "id": 0,
 "title": "string",
 "styles": {},
 "blocks": {}
 }

Параметры ответа:

Параметр Тип данных Описание Обязательный
id integer Идентификатор шаблона Да
title string Название шаблона Да
styles object Стили шаблона Да
blocks object Блоки Да

Создание шаблона (POST)

Метод добавляет шаблон. Если шаблон успешно добавлен, возвращается код «ok» и http код 201. В качестве Result возвращается идентификатор шаблона (int).

/api/v1/email_templates?title=<Название шаблона>&styles=<Стили>&blocks=<Блоки>

Параметры запроса:

Параметр Тип данных Описание Обязательный
title string Название шаблона Да
styles string Стили (JSON-строка) Да
blocks string Блоки (JSON-строка) Да

Обновление шаблона (PUT)

Метод обновления шаблона. Если шаблон был успешно обновлён, возвращается код «ok» и http код 200 и обновлённый шаблон.

/api/v1/email_templates/{id}?title=<Название шаблона>&styles=<Стили>&blocks=<Блоки>

Параметры запроса:

Параметр Тип данных Описание Обязательный
id integer Идентификатор шаблона Да
title string Название шаблона Да
styles string Стили (JSON-строка) Да
blocks string Блоки (JSON-строка) Да

Удаление шаблонов (DELETE)

Удаление шаблона. Возвращается только стандартный ответ.

/api/v1/email_templates/{id}

Параметры запроса:

Параметр Тип данных Описание Обязательный
id integer Идентификатор шаблона Да

Отправка транзакционного Email сообщения (POST)

/api/v1/emails/messages?sender_name=<Название отправителя>&sender_address=<Email отправителя>&recipient_email=<Email получателя>&recipient_name=<Имя получателя>&subject=<Тема письма>&text=<Текст письма>

Параметры запроса:

Параметр Тип данных Описание Обязательный
sender_name string Название отправителя Да
sender_address string Email отправителя Да
recipient_email string Email получателя Да
recipient_name string Имя получателя Да
subject string Тема письма Да
text string Текст письма Да

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

{
 "id": 0,
 "status": "string",
 "uid": "string",
 "created_at": "2018-05-03T09:45:06.676Z"
}

Параметры ответа:

Параметр Тип данных Описание Обязательный
id integer Идентификатор сообщения Да
status string Статус сообщения Да
uid string UID сообщения Да
created_at string Дата создания сообщения Да

Получение статусов транзакционных Email сообщений (GET)

/api/v1/emails/messages/{id}
Параметр Тип данных Описание Обязательный
id integer Идентификатор сообщения Да

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

{
 "id": 0,
 "status": "string",
 "uid": "string",
 "created_at": "2018-05-03T09:45:06.676Z"
}

Параметры ответа:

Параметр Тип данных Описание Обязательный
id integer Идентификатор сообщения Да
status string Статус сообщения Да
uid string UID сообщения Да
created_at string Дата создания сообщения Да