Случаи, требующие особого внимания

AdSense Management API позволяет создавать новые и сохраненные отчеты. Они могут содержать как простые аналитические данные, например доход за день, так и очень сложные таблицы с показателями CTR по специальным каналам и странам. В этом руководстве приведен список пограничных случаев, которые необходимо правильно обрабатывать для надежной интеграции с API.

Структура отчета

Результаты отчета возвращаются в виде объекта ReportResult. Подробную информацию вы найдете в справочнике по ответам на запросы отчетов.

Использование хронологических параметров: DATE, WEEK и MONTH

Отчеты могут быть пустыми или содержать пробелы

Если в течение периода времени, указанного в запросе, не было активности, запросы объявлений не создаются и сервис отчетов не показывает строки для этих периодов времени. Это важно, например, при построении графика.

Подробную информацию вы найдете в руководстве по заполнению дат.

Запрос параметров MONTH и WEEK в одном отчете

Жалоба может иметь негативные или неожиданные последствия. Если неделя относится к двум разным месяцам, то для нее будет показано две строки – по одной для каждого месяца.

Пример

РазмерыПоказателиДата началаДата окончания
WEEK
MONTH
CLICKS2014-04-28 2014-05-03
Возврат:
MONTHWEEK*CLICKS
2014-04 2014-04-27 50
2014-05 27.04.2014 43

* Первый день недели.

Решение

Удалите MONTH из отчета.

WEEKCLICKS
2014-04-27 93

Сортировка значений параметров

При запросе параметров, связанных, например, с платформами (компьютеры, мобильные устройства высокого класса и т. д.), будут показаны только платформы, на которых зарегистрирована активность. Если в определенный день, неделю или месяц не было посещений с мобильных устройств высокого класса, то в этой категории не будет данных.

Пример

РазмерыПоказателиДата началаДата окончания
PLATFORM_TYPE_NAME
MONTH
AD_REQUESTS 2014-02-012014-03-31
Возврат:
МЕСЯЦPLATFORM_TYPE_NAMEAD_REQUESTS
2014-03 Компьютеры 100
2014-03 Мобильные устройства высокого класса 5
2014-04 Компьютеры 75
Решение

При обработке результатов отчета предполагайте, что значение любого параметра, не указанного в результатах, равно нулю:

МЕСЯЦPLATFORM_TYPE_NAMEAD_REQUESTS
2014-03 Компьютеры 100
2014-03 Мобильные устройства высокого класса 5
2014-04 Компьютеры 75
Апрель 2014 г. Мобильные устройства высокого класса 0

Как объединить несколько смежных отчетов

Иногда отчет слишком велик, чтобы его можно было создать за один раз, и его приходится разбивать на пакеты. Если ваше приложение делает это, рассмотрите следующие случаи:

  • Если вы используете параметры WEEK или MONTH и разделяете отчет в середине недели или месяца, в каждом отчете будут повторяющиеся записи с разными данными.
  • Убедитесь, что во всех отчетах используются одни и те же показатели и параметры, иначе данные могут быть несовместимы.

Специальные аккаунты

У некоторых пользователей могут быть аккаунты AdSense с атрибутами, о которых вы не знаете. Учитывайте следующее:

  • Издатели с тысячами доменов или сайтов
  • Издатели, у которых есть тысячи рекламных блоков или клиентских каналов
  • Издатели, которые хотят получать отчеты по нескольким рекламным клиентам (AdSense для поиска, AdSense для видео и т. д.).

Несколько аккаунтов

У пользователей может быть доступ к нескольким аккаунтам AdSense. Поэтому при каждом вызове API необходимо указывать идентификатор аккаунта. Вызов accounts.list возвращает список аккаунтов, и пользователю должно быть показано диалоговое окно выбора аккаунта. Это ограничение можно обойти, если количество извлеченных аккаунтов равно одному.

Изменение часового пояса

Издатели AdSense могут в любое время изменить часовой пояс, что может привести к резким скачкам или падениям в отчетах. Подробную информацию вы найдете в руководстве по отчетам с учетом местного часового пояса.