Hello Analytics API: Panduan memulai PHP untuk akun layanan

Tutorial ini akan memandu langkah-langkah yang diperlukan untuk mengakses akun Google Analytics, membuat kueri Analytics API, menangani respons API, dan menampilkan hasilnya. Core Reporting API v3.0, Management API v3.0, dan OAuth2.0 digunakan dalam tutorial ini.

Langkah 1: Aktifkan Analytics API

Untuk mulai menggunakan Google Analytics API, Anda harus menggunakan alat penyiapan terlebih dahulu, yang memandu Anda menyelesaikan pembuatan project di Konsol API Google, mengaktifkan API, dan membuat kredensial.

Membuat client ID

  1. Buka halaman Akun layanan. Jika diminta, pilih sebuah project.
  2. Klik Buat Akun Layanan, masukkan nama dan deskripsi untuk akun layanan. Anda dapat menggunakan ID akun layanan default, atau memilih ID yang berbeda dan unik. Setelah selesai, klik Buat.
  3. Bagian Izin akun layanan (opsional) yang ditampilkan setelahnya tidak diperlukan. Klik Lanjutkan.
  4. Pada layar Beri pengguna akses ke akun layanan ini, scroll ke bawah ke bagian Buat kunci. Klik Buat kunci.
  5. Di panel samping yang muncul, pilih format untuk kunci Anda: JSON direkomendasikan.
  6. Klik Create. Pasangan kunci umum/pribadi baru Anda dibuat dan didownload ke komputer, dan berfungsi sebagai satu-satunya salinan dari kunci ini. Untuk informasi cara menyimpannya dengan aman, lihat Mengelola kunci akun layanan.
  7. Klik Tutup pada dialog Kunci pribadi disimpan ke komputer Anda, lalu klik Selesai untuk kembali ke tabel akun layanan.

Tambahkan akun layanan ke akun Google Analytics

Akun layanan yang baru dibuat akan memiliki alamat email, <projectId>-<uniqueId>@developer.gserviceaccount.com; Gunakan alamat email ini untuk menambahkan pengguna ke akun Google Analytics yang ingin Anda akses melalui API. Untuk tutorial ini, hanya izin Baca & Analisis yang diperlukan.

Langkah 2: Instal Library Klien Google

Anda dapat memperoleh Library Klien Google API untuk PHP mendownload rilis atau menggunakan Composer:

composer require google/apiclient:^2.0

Langkah 3: Siapkan contoh

Anda harus membuat satu file bernama HelloAnalytics.php, yang akan berisi kode contoh di bawah.

  1. Salin atau download kode sumber berikut ke HelloAnalytics.php.
  2. Pindahkan service-account-credentials.json yang telah didownload sebelumnya ke dalam direktori yang sama dengan kode contoh.

HelloAnalytics.php

<?php

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

$analytics = initializeAnalytics();
$profile = getFirstProfileId($analytics);
$results = getResults($analytics, $profile);
printResults($results);

function initializeAnalytics()
{
  // Creates and returns the Analytics Reporting service object.

  // 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_Analytics($client);

  return $analytics;
}

function getFirstProfileId($analytics) {
  // Get the user's first view (profile) ID.

  // Get the list of accounts for the authorized user.
  $accounts = $analytics->management_accounts->listManagementAccounts();

  if (count($accounts->getItems()) > 0) {
    $items = $accounts->getItems();
    $firstAccountId = $items[0]->getId();

    // Get the list of properties for the authorized user.
    $properties = $analytics->management_webproperties
        ->listManagementWebproperties($firstAccountId);

    if (count($properties->getItems()) > 0) {
      $items = $properties->getItems();
      $firstPropertyId = $items[0]->getId();

      // Get the list of views (profiles) for the authorized user.
      $profiles = $analytics->management_profiles
          ->listManagementProfiles($firstAccountId, $firstPropertyId);

      if (count($profiles->getItems()) > 0) {
        $items = $profiles->getItems();

        // Return the first view (profile) ID.
        return $items[0]->getId();

      } else {
        throw new Exception('No views (profiles) found for this user.');
      }
    } else {
      throw new Exception('No properties found for this user.');
    }
  } else {
    throw new Exception('No accounts found for this user.');
  }
}

function getResults($analytics, $profileId) {
  // Calls the Core Reporting API and queries for the number of sessions
  // for the last seven days.
   return $analytics->data_ga->get(
       'ga:' . $profileId,
       '7daysAgo',
       'today',
       'ga:sessions');
}

function printResults($results) {
  // Parses the response from the Core Reporting API and prints
  // the profile name and total sessions.
  if (count($results->getRows()) > 0) {

    // Get the profile name.
    $profileName = $results->getProfileInfo()->getProfileName();

    // Get the entry for the first entry in the first row.
    $rows = $results->getRows();
    $sessions = $rows[0][0];

    // Print the results.
    print "First view (profile) found: $profileName\n";
    print "Total sessions: $sessions\n";
  } else {
    print "No results found.\n";
  }
}


Langkah 4: Jalankan contoh

Setelah Anda mengaktifkan Analytics API, instal library klien Google API untuk PHP, dan siapkan kode sumber contoh yang siap dijalankan.

Jalankan contoh menggunakan:

php HelloAnalytics.php

Setelah Anda menyelesaikan langkah-langkah ini, contoh menghasilkan nama tampilan (profil) Google Analytics pertama pengguna yang diotorisasi dan jumlah sesi selama tujuh hari terakhir.

Dengan objek layanan Analytics yang diotorisasi, kini Anda dapat menjalankan contoh kode apa pun yang ada di dokumen referensi Management API. Misalnya, Anda dapat mencoba mengubah kode untuk menggunakan metode accountSummaries.list.