승인 필요
조회 (프로필)에 대한 실시간 데이터를 반환합니다. 지금 사용해 보거나 예를 참조하세요.
요청
HTTP 요청
GET https://www.googleapis.com/analytics/v3/data/realtime
매개변수
매개변수 이름 | 값 | 설명 |
---|---|---|
필수 매개변수 | ||
ids |
string |
애널리틱스 데이터를 검색하기 위한 고유한 테이블 ID입니다. 표 ID의 형식은 ga:XXXX이며 여기서 XXXX는 애널리틱스 보기 (프로필) ID입니다. |
metrics |
string |
애널리틱스 측정항목을 쉼표로 구분한 목록입니다. 예: 'rt:activeUsers'입니다. 측정항목을 하나 이상 지정해야 합니다. |
선택적 매개변수 | ||
dimensions |
string |
쉼표로 구분된 실시간 측정기준 목록입니다. 예: 'rt:medium,rt:city' |
filters |
string |
실시간 데이터에 적용할 측정기준 또는 측정항목 필터를 쉼표로 구분한 목록입니다. |
max-results |
integer |
이 피드에 포함할 최대 항목 수입니다. |
sort |
string |
실시간 데이터의 정렬 순서를 결정하는 측정기준 또는 측정항목을 쉼표로 구분한 목록입니다. |
승인
이 요청에는 다음 범위 중 최소 하나를 사용하여 인증이 필요합니다. (인증 및 승인에 대해 자세히 알아보기)
범위 |
---|
https://www.googleapis.com/auth/analytics |
https://www.googleapis.com/auth/analytics.readonly |
요청 본문
이 메소드를 사용할 때는 요청 본문을 제공하지 마세요.
응답
요청에 성공할 경우 이 메서드는 응답 본문에 실시간 데이터 리소스를 반환합니다.
예
참고: 이 메서드에 제공되는 코드 예시가 지원되는 모든 프로그래밍 언어를 나타내는 것은 아닙니다. 지원되는 언어 목록은 클라이언트 라이브러리 페이지를 참조하세요.
Java
/**
* 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.
*/
Get realtimeRequest = analytics.data().realtime()
.get("ga:56789",
"rt:activeUsers")
.setDimensions("rt:medium");
try {
RealtimeData realtimeData = realtimeRequest.execute();
// Success.
} catch (GoogleJsonResponseException e) {
// Catch API specific errors.
handleApiError(e);
} catch (IOException e) {
// Catch general parsing network errors.
e.printStackTrace();
}
/**
* 2. Print out the Real-Time Data
* The components of the report can be printed out as follows:
*/
private void printRealtimeReport(RealtimeData realtimeData) {
System.out.println();
System.out.println("Response:");
System.out.println("ID:" + realtimeData.getId());
System.out.println("realtimeData Kind: " + realtimeData.getKind());
System.out.println();
printQueryInfo(realtimeData.getQuery());
printProfileInfo(realtimeData.getProfileInfo());
printPaginationInfo(realtimeData);
printDataTable(realtimeData);
}
private void printQueryInfo(Query query) {
System.out.println("Query Info:");
System.out.println("Ids: " + query.getIds());
System.out.println("Metrics: " + query.getMetrics());
System.out.println("Dimensions: " + query.getDimensions());
System.out.println("Sort: " + query.getSort());
System.out.println("Filters: " + query.getFilters());
System.out.println("Max results: " + query.getMaxResults());
System.out.println();
}
private void printProfileInfo(ProfileInfo profileInfo) {
System.out.println("Info:");
System.out.println("Account ID:" + profileInfo.getAccountId());
System.out.println("Web Property ID:" + profileInfo.getWebPropertyId());
System.out.println("Profile ID:" + profileInfo.getProfileId());
System.out.println("Profile Name:" + profileInfo.getProfileName());
System.out.println("Table Id:" + profileInfo.getTableId());
System.out.println();
}
private void printPaginationInfo(RealtimeData realtimeData) {
System.out.println("Pagination info:");
System.out.println("Self link: " + realtimeData.getSelfLink());
System.out.println("Total Results: " + realtimeData.getTotalResults());
System.out.println();
}
private void printDataTable(RealtimeData realtimeData) {
if (realtimeData.getTotalResults() > 0) {
System.out.println("Data Table:");
for (ColumnHeaders header : realtimeData.getColumnHeaders()) {
System.out.format("%-32s", header.getName() + '(' + header.getDataType() + ')');
}
System.out.println();
for (List<String> row : realtimeData.getRows()) {
for (String element : row) {
System.out.format("%-32s", element);
}
System.out.println();
}
} else {
System.out.println("No data");
}
}
2,399필리핀
/** * 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; }
Python
# 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. try: service.data().realtime().get( ids='ga:56789', metrics='rt:activeUsers', dimensions='rt:medium').execute() except TypeError, error: # Handle errors in constructing a query. print ('There was an error in constructing your query : %s' % error) except HttpError, error: # Handle API errors. print ('Arg, there was an API error : %s : %s' % (error.resp.status, error._get_reason())) # 2. Print out the Real-Time Data # The components of the report can be printed out as follows: def print_realtime_report(results): print '**Real-Time Report Response**' print_report_info(results) print_query_info(results.get('query')) print_profile_info(results.get('profileInfo')) print_column_headers(results.get('columnHeaders')) print_data_table(results) print_totals_for_all_results(results) def print_data_table(results): print 'Data Table:' # Print headers. output = [] for header in results.get('columnHeaders'): output.append('%30s' % header.get('name')) print ''.join(output) # Print rows. if results.get('rows', []): for row in results.get('rows'): output = [] for cell in row: output.append('%30s' % cell) print ''.join(output) else: print 'No Results Found' def print_column_headers(headers): print 'Column Headers:' for header in headers: print 'Column name = %s' % header.get('name') print 'Column Type = %s' % header.get('columnType') print 'Column Data Type = %s' % header.get('dataType') def print_query_info(query): if query: print 'Query Info:' print 'Ids = %s' % query.get('ids') print 'Metrics: = %s' % query.get('metrics') print 'Dimensions = %s' % query.get('dimensions') print 'Sort = %s' % query.get('sort') print 'Filters = %s' % query.get('filters') print 'Max results = %s' % query.get('max-results') def print_profile_info(profile_info): if profile_info: print 'Profile Info:' print 'Account ID = %s' % profile_info.get('accountId') print 'Web Property ID = %s' % profile_info.get('webPropertyId') print 'Profile ID = %s' % profile_info.get('profileId') print 'Profile Name = %s' % profile_info.get('profileName') print 'Table Id = %s' % profile_info.get('tableId') def print_report_info(results): print 'Kind = %s' % results.get('kind') print 'ID = %s' % results.get('id') print 'Self Link = %s' % results.get('selfLink') print 'Total Results = %s' % results.get('totalResults') def print_totals_for_all_results(results): totals = results.get('totalsForAllResults') for metric_name, metric_total in totals.iteritems(): print 'Metric Name = %s' % metric_name print 'Metric Total = %s' % metric_total
사용해 보기
아래의 API 탐색기를 사용하여 실시간 데이터를 대상으로 이 메소드를 호출하고 응답을 확인해 보세요. 또는 독립형 탐색기를 사용해 보세요.