Общая информация

Методы

GET

Формат передаваемых данных

application/json

Формат ответа

JSON

Авторизация

Клиент-сервер - по сессионной куке. Используется в веб-интерфейсе конструктора отчетов.

Сервер-сервер - проверяется авторизация и IP адрес клиента. Логин и секрет передаются с помощью Basic HTTP Authorization, в заголовке Authorization

Authorization: Basic base64('login:secret')

Логин и секрет и список разрешенных IP адресов могут быть изменены в настройках проекта.

Описание методов

GET /api/v2/statistics/

Получение статистики по отправкам
Параметры фильтров
Параметр Тип Описание Пример в запросе
project_id int ID проекта. При сервер-сервер запросе используется из авторизации 110
message_type string Тип сообщения (L - письмо, W - web push, G - ИЦ нотификатор, S - sms) L
message string Тип сообщения + ID сообщения L_1369
post_type string Тип рассылки (S - одиночная, B - АБ рассылка, A - авто, C - цепочка, P - API, T - тест, U - неизвестно) S
post string Тип рассылки + ID рассылки S_5682
date string Дата 2021-01-22
fields string Запрашиваемые поля message,sum_delivered,open_rate

Для фильтрации можно использовать django модификаторы (ge, le, in). Для лучшего понимания как строить запросы, можно пользоваться конструктором отчетов

Поля делятся на 2 типа: поля группировки и агрегированные.

ВАЖНО: Чем больше полей группировок в запросе, тем медленней выполняется запрос. Максимальное число объектов в ответе 100, пагинация не предусмотрена, поэтому используйте фильтр по датам и правильные группировки. При запросе без указания дат, автоматически применяется фильтр за неделю от текущей даты (date=ge:2020-01-01). Последний объект - тотальные значения по аггрегируемым полям см. with totals

Поля группировки

Параметр Описание
project_id Проект
message Сообщение
post Рассылка
message_type Тип сообщения
post_type Тип рассылки
year Год
quarter Квартал
month_year Месяц
day_of_month День месяца
day_of_week День недели
week Неделя
date Дата
hour Час
client Клиент
language Язык
city_name Город
region_name Регион
country_name Cтрана

Поля агрегированные

Параметр Описание Примечание
sum_total Всего Полное количество адресатов в рассылке
sum_selected Выбрано для отправки Количество адресатов, выбранных для отправки (после всех фильтров)
sum_sended Отправлено Отправлено с сервера
sum_delivered Доставлено Количество писем доставленых в почту (включая спам)
sum_opened Открыто
sum_opened_unique Открыто уникальных
sum_clicked Переходов
sum_clicked_unique Переходов уникальных
sum_unsubscribed Отписались
sum_spam_reports Пожаловались на спам
sum_churn Отток Количество ушедших пользователей (отписавшиеся + спам + недоставленные)
open_rate Open Rate Процент открытых по отношению ко всем доставленным
open_rate_unique Open Rate Unique Процент уникальных открытий по отношению ко всем доставленным
click_rate Click Rate Процент переходов по отношению ко всем доставленным
click_rate_unique Click Rate Unique Процент уникальных переходов по отношению ко всем доставленным
ctor CTOR Процент уникальных переходов по отношению к уникальным открытиям
delivery_rate Delivery Rate Процент писем, доставленных до получателя
bounce_rate Bounce Rate Процент писем, который был отклонен почтовыми сервисами
unsub_rate Unsubscribe Rate Процент подписчиков, которые отписались после рассылки
abuse_rate Abuse Rate Процент писем, отправленных в СПАМ
churn_rate CHURN Rate Процент оттока по отношению ко всем отправленнным
sum_stop_total Карантин: всего
sum_stop_invalid Карантин: невалидных адресов
sum_stop_ xistent Карантин: несуществующих адресов
sum_stop_spam_added Карантин: пожаловавшихся на спам
sum_stop_gdpr Карантин: GDPR
sum_stop_unsubscr Карантин: отписавшихся
sum_bounce_total SMTP: всего ошибок
sum_bounce_ xistent SMTP: несуществующих адресов
sum_bounce_temp_unavailable SMTP: временно недоступных
sum_bounce_spam SMTP: отклоненных как спам
sum_bounce_other SMTP: других ошибок
sum_stop_sendlog_added Ошибка: непрошедших политику отправки проекта
sum_stop_letter_single_quarantine Ошибка: непрошедших политику отправки рассылки
sum_stop_inactive Ошибка: неактивных адресов
sum_stop_noaddress Ошибка: профилей без адреса Количество профилей, у которых отсутствует адрес для рассылки
sum_stop_send_policy Ошибка: не подписавшихся или не подтвердивших
sum_stop_external_check Ошибка: отклоненных проектом

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

Получение показателей рассылки ID 9093, за 2 дня (с 2021-01-27 по 2021-01-28) с группировкой по дням и сообщениям:

https://mailer.mail.ru/api/v2/statistics/?post=in:S_9093&date=ge:2021-01-27&date=le:2021-01-28&fields=date,message,sum_delivered,sum_opened,sum_clicked,open_rate_unique,click_rate_unique

Response code: 200

Body:
    {
        "metadata": {
            "ready": true
        },
        "result": [
            {
                "click_rate_unique": 0.0015847994310759965,
                "date": "2021-01-27",
                "sum_delivered": 947754,
                "sum_opened": 63470,
                "open_rate_unique": 0.06451146605553762,
                "message": "L_7642",
                "sum_clicked": 1942
            },
            {
                "click_rate_unique": 0.0,
                "date": "2021-01-28",
                "sum_delivered": 0,
                "sum_opened": 45486,
                "open_rate_unique": 0.0,
                "message": "L_7642",
                "sum_clicked": 876
            },
            {
                "click_rate_unique": 0.002313891579460493,
                "date": "1970-01-01",
                "sum_delivered": 947754,
                "sum_opened": 108956,
                "open_rate_unique": 0.10805335561759698,
                "message": "",
                "sum_clicked": 2818
            }
        ],
        "error": null
    }