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 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 mungkin akan segera kehabisan kuota harian. Anda akan mengalami penundaan waktu antarpermintaan saat memeriksa status laporan tanpa sampel.

Menggunakan Google Drive / Google Cloud Storage API

Bergantung pada tempat file dikirim (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 Anda disimpan di Google Drive, Anda dapat membuat permintaan HTTP GET yang diotorisasi 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 bersamaan dengan Drive atau API 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. Tindakan ini akan memungkinkan Anda menggunakan token autentikasi yang sama untuk kedua API.

Menghapus Laporan Tanpa Sampel

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

Batasan

Batasan berikut berlaku untuk membuat laporan tanpa sampel:

  • Anda hanya dapat menentukan hingga 4 dimensi.
  • Beberapa jenis data pelaporan tidak didukung, misalnya, Data Google Ads.
  • Kueri yang dianggap terlalu mahal tidak didukung.
  • Jika 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 menampilkan error dengan pesan yang sesuai. Jika ini terjadi, Anda dapat:

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

Kasus Penggunaan

Laporan Tanpa Sampel dan Core Reporting API

Jika Anda menggunakan API Pelaporan Inti untuk mengambil data laporan dan berisi data sampel, Anda dapat membuat laporan tanpa sampel untuk kueri yang sama seperti berikut:

  1. Buat permintaan Core Reporting API.
  2. Dalam responsnya, periksa properti containSampledData untuk melihat apakah data tersebut diambil sampelnya.
  3. Jika properti ini ditetapkan ke 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();
}

Menggabungkan Data Tanpa Sampel selama 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. Jika demikian, Anda dapat membagi permintaan menjadi beberapa permintaan dengan rentang tanggal yang lebih pendek, lalu menggabungkan hasilnya.

Kebijakan Kuota

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