google-analytics-api
API в реальном времени
Поиск…
Синтаксис
- GET https://www.googleapis.com/analytics/v3/data/realtime?ids=[Analytics view Id] & metrics = [Показатели в реальном времени] & access_token = [Access_token_from_Authentcation]
- GET https://www.googleapis.com/analytics/v3/data/realtime?ids=[Analytics view Id] & metrics = [Показатели реального времени] & dimensions = [Показатели реального времени] & access_token = [Access_token_from_Authentcation]
параметры
(Обязательно) Имя параметра | Описание |
---|---|
идентификаторы | Уникальный идентификатор таблицы для получения данных Analytics. Идентификатор таблицы имеет вид ga: XXXX, где XXXX - это идентификатор представления (профиля) Analytics. |
метрика | Список показателей Analytics, разделенных запятыми. Например, «rt: activeUsers». Необходимо указать хотя бы одну метрику. |
(Необязательно) Имя параметра | Описание |
размеры | Список измерений в реальном времени, разделенный запятыми. Например, «rt: medium, rt: city». |
фильтры | Список размерных или метрических фильтров, разделенных запятыми, которые будут применяться к данным реального времени. |
макс-результаты | Максимальное количество записей для включения в этот канал. |
Сортировать | Список размеров или показателей, разделенных запятыми, которые определяют порядок сортировки для данных в реальном времени. |
(Стандартный) Имя параметра | Описание |
Перезвоните | Имя функции обратного вызова JavaScript, которая обрабатывает ответ. Используется в JavaScript JSON-P. |
prettyPrint | Возвращает ответ в удобочитаемом формате, если это правда. Значение по умолчанию: true. Если это неверно, это может уменьшить размер полезной нагрузки ответа, что может привести к повышению производительности в некоторых средах. |
quotaUser | Позволяет вам применять квоты для каждого пользователя из серверного приложения даже в тех случаях, когда IP-адрес пользователя неизвестен. Это может произойти, например, с приложениями, выполняющими задания cron в App Engine от имени пользователя. Вы можете выбрать любую произвольную строку, которая однозначно идентифицирует пользователя, но ограничивается 40 символами. Переназначает userIp, если оба предоставляются. Подробнее об ограничении использования. |
userIp | Позволяет вам применять квоты для каждого пользователя при вызове API из приложения на стороне сервера. Подробнее об ограничении использования. |
замечания
API отчетов реального времени в ограниченной бета-версии доступен только для предварительного просмотра разработчика. Зарегистрируйтесь, чтобы получить доступ к API.
API отчетов реального времени позволяет запрашивать данные в режиме реального времени, например, активность в реальном времени для вашего объекта - для аутентифицированного пользователя.
API реального времени можно использовать для:
- Отображать активных зрителей на странице и создавать ощущение срочности для пользователей, рассматривающих предмет с ограниченным запасом.
- Отображение наиболее популярного контента, такого как 10 самых активных страниц.
- Создайте и покажите панель приборов реального времени.
авторизация
Для звонков в API Google Analytics в режиме реального времени требуется авторизация по крайней мере в одной из следующих областей (подробнее об аутентификации и авторизации).
Объем | доступ разрешен |
---|---|
https://www.googleapis.com/auth/analytics | Полный доступ к учетным записям Google Analytics до уровня доступа пользователей, прошедших проверку подлинности. |
https://www.googleapis.com/auth/analytics.readonly | Доступ только для чтения к учетным записям пользователей, прошедших проверку подлинности Google Analytics |
Пример PHP
Использует клиентскую библиотеку PHP
/**
* 1.Create and Execute a Real Time Report
* An application can request real-time data by calling the get method on the Analytics service object.
* The method requires an ids parameter which specifies from which view (profile) to retrieve data.
* For example, the following code requests real-time data for view (profile) ID 56789.
*/
$optParams = array(
'dimensions' => 'rt:medium');
try {
$results = $analytics->data_realtime->get(
'ga:56789',
'rt:activeUsers',
$optParams);
// Success.
} catch (apiServiceException $e) {
// Handle API service exceptions.
$error = $e->getMessage();
}
/**
* 2. Print out the Real-Time Data
* The components of the report can be printed out as follows:
*/
function printRealtimeReport($results) {
printReportInfo($results);
printQueryInfo($results);
printProfileInfo($results);
printColumnHeaders($results);
printDataTable($results);
printTotalsForAllResults($results);
}
function printDataTable(&$results) {
if (count($results->getRows()) > 0) {
$table .= '<table>';
// Print headers.
$table .= '<tr>';
foreach ($results->getColumnHeaders() as $header) {
$table .= '<th>' . $header->name . '</th>';
}
$table .= '</tr>';
// Print table rows.
foreach ($results->getRows() as $row) {
$table .= '<tr>';
foreach ($row as $cell) {
$table .= '<td>'
. htmlspecialchars($cell, ENT_NOQUOTES)
. '</td>';
}
$table .= '</tr>';
}
$table .= '</table>';
} else {
$table .= '<p>No Results Found.</p>';
}
print $table;
}
function printColumnHeaders(&$results) {
$html = '';
$headers = $results->getColumnHeaders();
foreach ($headers as $header) {
$html .= <<<HTML
<pre>
Column Name = {$header->getName()}
Column Type = {$header->getColumnType()}
Column Data Type = {$header->getDataType()}
</pre>
HTML;
}
print $html;
}
function printQueryInfo(&$results) {
$query = $results->getQuery();
$html = <<<HTML
<pre>
Ids = {$query->getIds()}
Metrics = {$query->getMetrics()}
Dimensions = {$query->getDimensions()}
Sort = {$query->getSort()}
Filters = {$query->getFilters()}
Max Results = {$query->getMax_results()}
</pre>
HTML;
print $html;
}
function printProfileInfo(&$results) {
$profileInfo = $results->getProfileInfo();
$html = <<<HTML
<pre>
Account ID = {$profileInfo->getAccountId()}
Web Property ID = {$profileInfo->getWebPropertyId()}
Internal Web Property ID = {$profileInfo->getInternalWebPropertyId()}
Profile ID = {$profileInfo->getProfileId()}
Profile Name = {$profileInfo->getProfileName()}
Table ID = {$profileInfo->getTableId()}
</pre>
HTML;
print $html;
}
function printReportInfo(&$results) {
$html = <<<HTML
<pre>
Kind = {$results->getKind()}
ID = {$results->getId()}
Self Link = {$results->getSelfLink()}
Total Results = {$results->getTotalResults()}
</pre>
HTML;
print $html;
}
function printTotalsForAllResults(&$results) {
$totals = $results->getTotalsForAllResults();
foreach ($totals as $metricName => $metricTotal) {
$html .= "Metric Name = $metricName\n";
$html .= "Metric Total = $metricTotal";
}
print $html;
}
Оригинальная версия справилась с официальной документацией
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow