Xin chào Analytics Reporting API phiên bản 4; bắt đầu nhanh bằng PHP cho tài khoản dịch vụ

Hướng dẫn này sẽ trình bày các bước bắt buộc để truy cập vào API Báo cáo Analytics phiên bản 4.

1. Bật API

Để bắt đầu sử dụng API Báo cáo Analytics phiên bản 4, trước tiên, bạn cần sử dụng công cụ thiết lập. Công cụ này sẽ hướng dẫn bạn tạo dự án trong Bảng điều khiển API của Google, bật API và tạo thông tin đăng nhập.

Tạo thông tin đăng nhập

  1. Mở trang Tài khoản dịch vụ. Nếu thấy lời nhắc, hãy chọn một dự án.
  2. Nhấp vào Tạo tài khoản dịch vụ rồi nhập tên và phần mô tả cho tài khoản dịch vụ. Bạn có thể sử dụng mã tài khoản dịch vụ mặc định hoặc chọn một mã riêng biệt khác. Khi hoàn tất, hãy nhấp vào Tạo.
  3. Bạn không bắt buộc phải làm gì trong phần Quyền tài khoản dịch vụ (tuỳ chọn) sau đó. Hãy nhấp vào Tiếp tục.
  4. Trên màn hình Cấp cho người dùng quyền truy cập vào tài khoản dịch vụ này, hãy cuộn xuống phần Tạo khoá. Nhấp vào Tạo khoá.
  5. Trong bảng điều khiển bên xuất hiện, hãy chọn định dạng cho khoá của bạn: bạn nên chọn JSON.
  6. Nhấp vào Tạo. Cặp khoá công khai/riêng tư mới của bạn sẽ được tạo và tải xuống máy của bạn; đây là bản sao duy nhất của khoá này. Để biết thông tin về cách lưu trữ khoá an toàn, hãy xem Quản lý khoá tài khoản dịch vụ.
  7. Nhấp vào Đóng trên hộp thoại Khoá riêng tư đã lưu vào máy tính của bạn, sau đó nhấp vào Xong để trở về bảng tài khoản dịch vụ.

Thêm tài khoản dịch vụ vào tài khoản Google Analytics

Tài khoản dịch vụ mới tạo sẽ có một địa chỉ email giống như sau:

quickstart@PROJECT-ID.iam.gserviceaccount.com

Sử dụng địa chỉ email này để thêm người dùng vào chế độ xem Google Analytics mà bạn muốn truy cập thông qua API. Trong hướng dẫn này, bạn chỉ cần có quyền Đọc và phân tích.

2. Cài đặt thư viện ứng dụng

Bạn có thể lấy Thư viện ứng dụng API của Google dành cho PHP bằng Composer:

composer require google/apiclient:^2.0

3. Thiết lập mẫu

Bạn cần tạo một tệp có tên HelloAnalytics.php chứa mã mẫu dưới đây.

  • Sao chép hoặc tải xuống mã nguồn sau vào HelloAnalytics.php.
  • Di chuyển service-account-credentials.json đã tải xuống trước đó vào cùng thư mục với mã mẫu.
  • Thay thế giá trị của VIEW_ID. Bạn có thể sử dụng Trình khám phá tài khoản để tìm Mã chế độ xem.

HelloAnalytics.php

<?php

// Load the Google API PHP Client Library.
require_once __DIR__ . '/vendor/autoload.php';

$analytics = initializeAnalytics();
$response = getReport($analytics);
printResults($response);


/**
 * Initializes an Analytics Reporting API V4 service object.
 *
 * @return An authorized Analytics Reporting API V4 service object.
 */
function initializeAnalytics()
{

  // Use the developers console and download your service account
  // credentials in JSON format. Place them in this directory or
  // change the key file location if necessary.
  $KEY_FILE_LOCATION = __DIR__ . '/service-account-credentials.json';

  // Create and configure a new client object.
  $client = new Google_Client();
  $client->setApplicationName("Hello Analytics Reporting");
  $client->setAuthConfig($KEY_FILE_LOCATION);
  $client->setScopes(['https://www.googleapis.com/auth/analytics.readonly']);
  $analytics = new Google_Service_AnalyticsReporting($client);

  return $analytics;
}


/**
 * Queries the Analytics Reporting API V4.
 *
 * @param service An authorized Analytics Reporting API V4 service object.
 * @return The Analytics Reporting API V4 response.
 */
function getReport($analytics) {

  // Replace with your view ID, for example XXXX.
  $VIEW_ID = "<REPLACE_WITH_VIEW_ID>";

  // Create the DateRange object.
  $dateRange = new Google_Service_AnalyticsReporting_DateRange();
  $dateRange->setStartDate("7daysAgo");
  $dateRange->setEndDate("today");

  // Create the Metrics object.
  $sessions = new Google_Service_AnalyticsReporting_Metric();
  $sessions->setExpression("ga:sessions");
  $sessions->setAlias("sessions");

  // Create the ReportRequest object.
  $request = new Google_Service_AnalyticsReporting_ReportRequest();
  $request->setViewId($VIEW_ID);
  $request->setDateRanges($dateRange);
  $request->setMetrics(array($sessions));

  $body = new Google_Service_AnalyticsReporting_GetReportsRequest();
  $body->setReportRequests( array( $request) );
  return $analytics->reports->batchGet( $body );
}


/**
 * Parses and prints the Analytics Reporting API V4 response.
 *
 * @param An Analytics Reporting API V4 response.
 */
function printResults($reports) {
  for ( $reportIndex = 0; $reportIndex < count( $reports ); $reportIndex++ ) {
    $report = $reports[ $reportIndex ];
    $header = $report->getColumnHeader();
    $dimensionHeaders = $header->getDimensions();
    $metricHeaders = $header->getMetricHeader()->getMetricHeaderEntries();
    $rows = $report->getData()->getRows();

    for ( $rowIndex = 0; $rowIndex < count($rows); $rowIndex++) {
      $row = $rows[ $rowIndex ];
      $dimensions = $row->getDimensions();
      $metrics = $row->getMetrics();
      for ($i = 0; $i < count($dimensionHeaders) && $i < count($dimensions); $i++) {
        print($dimensionHeaders[$i] . ": " . $dimensions[$i] . "\n");
      }

      for ($j = 0; $j < count($metrics); $j++) {
        $values = $metrics[$j]->getValues();
        for ($k = 0; $k < count($values); $k++) {
          $entry = $metricHeaders[$k];
          print($entry->getName() . ": " . $values[$k] . "\n");
        }
      }
    }
  }
}

4. Chạy mẫu

Chạy mẫu bằng cách sử dụng:

php HelloAnalytics.php

Khi bạn hoàn thành các bước này, mẫu sẽ xuất ra số phiên trong 7 ngày qua cho chế độ xem đã cho.