Руководство разработчика полных отчетов

API управления Google Analytics позволяет программно создавать полные отчеты.

Введение

Полные отчеты – это отчеты Google Analytics, созданные с использованием полных данных. Полные отчеты в настоящее время доступны только пользователям Google Analytics 360.

С помощью этого API вы можете:

  • Получите информацию о конфигурации всех существующих полных отчетов. создавать разовые полные отчеты.
  • Проверьте статус обработки полных отчетов.
  • Получите ссылку на файл данных для полного отчета после завершения обработки.
  • Удалить полные отчеты.

Получение данных для полных отчетов

При создании полного отчета может пройти некоторое время, прежде чем отчет станет доступен для загрузки. Поле status для полного отчета указывает, завершена ли обработка этого отчета. После того как статус помечен как COMPLETED , вы можете использовать downloadType и соответствующее поле сведений о загрузке, чтобы получить файл, содержащий данные отчета. Например:

Не используйте непрерывные, частые опросы для проверки статуса этих отчетов, поскольку ваша дневная квота, скорее всего, закончится довольно быстро. При проверке состояния полных отчетов между запросами должна быть предусмотрена задержка.

Использование Google Диска/API облачного хранилища Google

В зависимости от того, куда доставляются ваши файлы (Google Диск или Google Cloud Storage), вы получите соответствующую ссылку на этот файл. Вы можете использовать Drive API или Cloud Storage API, чтобы загрузить файл по этой ссылке. Более подробную информацию о том, как получить файл, можно найти в документации Google Drive API или Google Cloud Storage API .

Например, если ваш полный отчет хранится на Google Диске, вы можете сделать авторизованный запрос HTTP GET к URL-адресу ресурса файла и включить параметр запроса alt=media .

GET /drive/v2/files/XXXXXX?alt=media
Host: www.googleapis.com
Content-length: 0
Authorization: Bearer ya29.AHESVbXTUv5mHMo3RYfmS1YJonjzzdTOFZwvyOAUVhrs

Где XXXXXX — это полный отчет driveDownloadDetails.documentId

Аутентификация

Если вы планируете использовать полный отчет в сочетании с API-интерфейсами Drive или Cloud Storage для загрузки файлов, вам необходимо включить соответствующую область аутентификации для этого API (в дополнение к области аутентификации API-интерфейса Analytics) при запросе токена OAuth 2.0. Это позволит вам использовать один и тот же токен аутентификации для обоих API.

Удаление полных отчетов

Вы можете удалить запланированные или завершенные полные отчеты, однако вызов delete в течение короткого периода времени создания отчета приведет к ошибке. При удалении полных отчетов ресурс удаляется только из вашего представления (профиля) GA, экспортированные данные в Google Drive или Google Cloud Storage останутся.

Ограничения

К созданию полных отчетов применяются следующие ограничения:

  • Вы можете указать только до 4 размеров.
  • Некоторые типы данных отчетов не поддерживаются, например данные Google Рекламы.
  • Запросы, которые считаются слишком дорогими, не поддерживаются.
  • Если вы создали слишком много полных отчетов и достигли предела , вы можете безопасно удалить ресурсы полных отчетов, оставив сгенерированные данные отчета на Google Диске или в Google Cloud нетронутыми.

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

  • Запросите меньше размеров.
  • Разделите запрос на несколько запросов с меньшими диапазонами дат и соедините полученные отчеты.

Случаи использования

Полные отчеты и основной API отчетов

Если вы используете Core Reporting API для получения данных отчета и он содержит выборочные данные, вы можете создать полный отчет для того же запроса следующим образом:

  1. Сделайте запрос к API базовой отчетности.
  2. В ответе проверьте свойство containsSampledData, чтобы убедиться, что данные выбраны.
  3. Если для этого свойства установлено значение true, вы можете использовать поля запроса и ProfileInfo из одного и того же ответа для создания запроса на полный отчет.

Пример поля запроса из ответа Core Reporting API:

"query": {
  "start-date": "2011-01-01",
  "end-date": "2011-01-31",
  "ids": "ga:1234",
  "dimensions": "ga:browser",
  "metrics": [
  "ga:visits"
  ],
  "filters": "ga:country==US",
  "start-index": 1,
  "max-results": 1000
}

Пример поля profileInfo из ответа Core Reporting API:

"profileInfo": {
  "profileId": "1234",
  "accountId": "12345",
  "webPropertyId": "UA-12345-1",
  "internalWebPropertyId": "11254",
  "profileName": "Name of the profile",
  "tableId": "ga:1234"
}

Ниже приведен пример создания полного отчета на основе ответа Core Reporting API:

Джава

// Make a Core Reporting API call.
GaData reportingApiData = v3.data().ga().get(...).execute();

// Check if the response is sampled.
if (reportingApiData.getContainsSampledData()) {

  // Use the “query” object to construct an unsampled report object.
  Query query = reportingApiData.getQuery();
  UnsampledReport report = new UnsampledReport()
      .setDimensions(query.getDimensions())
      .setMetrics(Joiner.on(',').join(query.getMetrics()))
      .setStartDate(startDate)
      .setEndDate(endDate)
      .setSegment(query.getSegment())
      .setFilters(query.getFilters())
      .setTitle(“My unsampled report”);

  // Use “profileInfo” to create an InsertRequest for creating an
  // unsampled report.
  ProfileInfo profileInfo = reportingApiData.getProfileInfo();
  Insert insertRequest = analytics.management().unsampledReports()
  .insert(profileInfo.getAccountId(),
          profileInfo.getWebPropertyId(),
          profileInfo.getProfileId(),
          report);
  UnsampledReport createdReport = insertRequest.execute();
}

Сшивание полных данных за несколько дней

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

Политика квот

Полный список ограничений и квот, которые применяются при создании полных отчетов, см. в разделе «Ограничения и квоты API конфигурации и отчетности» .