Panduan Developer Laporan Tanpa Sampel

Google Analytics Management API memungkinkan Anda membuat laporan tanpa sampel secara terprogram.

Pengantar

Laporan tanpa sampel adalah laporan Google Analytics yang telah dibuat menggunakan data tanpa sampel. Laporan tanpa sampel saat ini hanya tersedia untuk pengguna Google Analytics 360.

Dengan API ini, Anda dapat:

  • Mengambil informasi konfigurasi tentang semua laporan tanpa sampel yang ada. Buat laporan tanpa sampel satu kali.
  • Periksa status pemrosesan laporan tanpa sampel.
  • Dapatkan link ke file data untuk laporan tanpa sampel setelah pemrosesan selesai.
  • Hapus laporan tanpa sampel.

Mengambil data untuk laporan tanpa sampel

Saat Anda membuat laporan tanpa sampel, perlu waktu beberapa saat sebelum laporan tersedia untuk didownload. Kolom status untuk laporan tanpa sampel menunjukkan apakah pemrosesan untuk laporan tersebut selesai. Setelah statusnya ditandai sebagai COMPLETED, Anda dapat menggunakan downloadType dan kolom detail download yang sesuai untuk mengambil file yang berisi data laporan. Contoh:

Jangan gunakan polling berkelanjutan dan bertarif tinggi untuk memeriksa status laporan ini, karena Anda cenderung akan cepat kehabisan kuota harian. Anda akan mengalami penundaan waktu antarpermintaan saat memeriksa status laporan tanpa sampel.

Menggunakan Google Drive / Google Cloud Storage API

Bergantung pada lokasi pengiriman file (Google Drive atau Google Cloud Storage), Anda akan mendapatkan link yang sesuai untuk file tersebut. Anda dapat menggunakan Drive API atau Cloud Storage API untuk mendownload file menggunakan link ini. Untuk detail selengkapnya tentang cara mengambil file, lihat dokumentasi Google Drive API atau Google Cloud Storage API.

Misalnya, jika laporan tanpa sampel disimpan di Google Drive, Anda dapat membuat permintaan GET HTTP resmi ke URL resource file dan menyertakan parameter kueri alt=media.

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

Dengan XXXXXX adalah laporan tanpa sampel driveDownloadDetails.documentId

Autentikasi

Jika Anda berencana menggunakan Laporan Tanpa Sampel bersama dengan API Drive atau Cloud Storage untuk download file, Anda harus menyertakan cakupan autentikasi yang sesuai untuk API tersebut (selain cakupan autentikasi Analytics API) saat meminta token OAuth 2.0. Ini akan memungkinkan Anda menggunakan token autentikasi yang sama untuk kedua API.

Menghapus Laporan yang Tidak Dicontohkan

Anda dapat menghapus laporan tanpa sampel terjadwal atau yang telah diselesaikan, tetapi memanggil delete selama jangka waktu singkat saat laporan sedang dibuat akan menghasilkan error. Menghapus laporan tanpa sampel hanya akan menghapus resource dari tampilan GA (profil), data yang diekspor di Google Drive atau Google Cloud Storage akan tetap ada.

Batasan

Batasan berikut berlaku untuk pembuatan laporan tanpa sampel:

  • Anda hanya dapat menentukan maksimal 4 dimensi.
  • Beberapa jenis data pelaporan tidak didukung, misalnya, Data Google Ads.
  • Kueri yang dianggap terlalu mahal tidak didukung.
  • Jika Anda sudah membuat terlalu banyak laporan tanpa sampel dan mencapai batas, Anda dapat menghapus resource laporan tanpa sampel dengan aman, sehingga data laporan yang dihasilkan di Google Drive atau Google Cloud tidak akan berubah.

Jika permintaan Anda dianggap terlalu mahal, operasi pembuatan akan mengembalikan kesalahan dengan pesan yang sesuai. Jika hal ini terjadi, Anda dapat:

  • Minta lebih sedikit dimensi.
  • Pisah kueri menjadi beberapa kueri dengan rentang tanggal yang lebih kecil dan gabungkan laporan yang dihasilkan.

Kasus Penggunaan

Laporan Tanpa Sampel dan Core Reporting API

Jika menggunakan Core Reporting API untuk mengambil data laporan dan berisi data sampel, Anda dapat membuat laporan tanpa sampel untuk kueri yang sama sebagai berikut:

  1. Buat permintaan Core Reporting API.
  2. Dalam responsnya, periksa properti containSampledData untuk melihat apakah data tersebut diambil sampelnya atau tidak.
  3. Jika properti ini disetel ke benar (true), Anda dapat menggunakan kolom kueri dan profileInfo dari respons yang sama untuk membuat permintaan laporan tanpa sampel.

Contoh kolom kueri dari respons 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
}

Contoh kolom profileInfo dari respons Core Reporting API:

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

Berikut adalah contoh cara membuat laporan tanpa sampel dari respons Core Reporting API:

Java

// 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();
}

Penggabungan Data Tanpa Sampel untuk Beberapa Hari

Anda dapat menggabungkan atau menggabungkan laporan selama beberapa hari untuk mendapatkan data tanpa sampel selama rentang tanggal tertentu. Hal ini berguna saat permintaan data tanpa sampel terlalu besar. Dalam kasus tersebut, Anda dapat membagi permintaan menjadi beberapa permintaan dengan rentang tanggal yang lebih singkat, lalu menggabungkan hasilnya.

Kebijakan Kuota

Lihat Batas dan Kuota Configuration dan Reporting API untuk mengetahui daftar lengkap batas dan kuota yang berlaku saat membuat laporan tanpa sampel.