Итак. Отчёт у нас состоит из четырех страниц. В нём задействованы только данные из UniSender.
Сегодня мы рассмотрим, как создавать именно такие отчёты. Следующие шаги — добавление данных из Яндекс.Метрики и Google Analytics, это мы рассмотрим в следующий раз.
Данные из UniSender мы будем получать с помощью API. В
справке находим соответствующую информацию.
В общем виде запрос к API UniSender выглядит так:
http://api.unisender.com/LANG/api/METHOD?format=json&api_key=KEY&arg1=ARG_1&argN=ARG_N Как видно, для совершения запросов нам нужен API KEY.
Обычно его можно получить в личном кабинете сервисов, и UniSender в этом плане не является исключением.
Идём в аккаунт UniSender. Далее идём в Настройки аккаунта → «Интеграция и API» → копируем «Ключ доступа к API».
В справке смотрим, какие методы предоставляет API платформы. Сначала объём информации может показаться устрашающим. Но мы сразу можем исключить из просмотра методы действий (например, целый раздел методов «Методы для партнёрских сайтов», раздел «Создание и отправка сообщений» и т.д.).
Для формирования отчёта нам нужны методы, возвращающие какие-то данные, которые могут быть пригодны для изучения. Даже по заголовкам с коротким описанием можно выделить потенциальных кандидатов на попадание в отчёт (в конечном счёте, далеко не все они будут использованы):
getLists — получить списки рассылки с их кодами
getTotalContactsCount — получить размер базы пользователя
getContactCount — получить количество контактов в списке
getWebVersion — получить ссылку на веб-версию отправленного письма
listTemplates — получить список всех шаблонов без body
getCampaignDeliveryStats — получить отчёт о статусах доставки сообщений для заданной рассылки
getCampaignAggregateStats — получить отчёт о статусах доставки сообщений для заданной рассылки, сгруппированных по типам результата
getVisitedLinks — получить статистику переходов по ссылкам
getCampaigns — получить список рассылок
getCampaignStatus — получить статус рассылки
getMessages — получить список сообщений
getMessage — получение информации об SMS или email сообщении
listMessages — получить список сообщений без тела и вложений
getTags — получить список пользовательских меток
Теперь протестируем работу API. Для начала проверим, как работает метод
getCampaigns.
Этот метод служит для получения списка всех имеющихся рассылок.
Для быстрого тестирования запросов я люблю использовать сервис
Postman. Предлагаю вам его также скачать и установить.
Запускаем Postman и собираем запрос:
http://api.unisender.com/ru/api/getCampaigns?format=json&api_key=KEY&from=TIME&to=TIME Для совершения запросов предпочтительно использовать метод POST. Все параметры должны быть в кодировке UTF-8. В примере выше параметры указаны в GET-запросе, но можно передавать их и в POST. Более того, параметр api_key мы настоятельно рекомендуем передавать через POST, чтобы он не сохранялся в логах прокси-серверов.
В документации метода говорится, что в запросе мы обязаны использовать api_key. Временной интервал from / to не является обязательным и сейчас мы его не будем использовать, но в будущем он нам пригодится.
Сейчас посмотрим, что же мы в результате получим.
Отправляем запрос: