Kasus Penggunaan Lanjutan

Dokumen ini menjelaskan beberapa fitur lanjutan Google Analytics API Data v1. Untuk referensi API mendetail, lihat Referensi API.

Mencantumkan definisi kustom dan membuat laporan

Data API dapat membuat laporan tentang Custom API yang terdaftar Dimensi dan Kustom Metrik. Metadata API Metode dapat digunakan untuk membuat daftar API nama Definisi Kustom yang terdaftar untuk Properti Anda. Nama API ini dapat yang digunakan dalam Melaporkan Permintaan ke runReport sebagai contoh.

Bagian berikut menunjukkan contoh untuk setiap jenis Definisi Kustom. Di beberapa contoh ini, ganti GA_PROPERTY_ID dengan ID Properti Anda.

Dimensi kustom cakupan peristiwa

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata

Langkah 2: Temukan Dimensi Kustom Cakupan Peristiwa yang Anda minati membuat laporan dari respons. Jika dimensi tidak ada, Anda perlu untuk mendaftarkan dimensi.

"dimensions": [
...
    {
      "apiName": "customEvent:achievement_id",
      "uiName": "Achievement ID",
      "description": "An event scoped custom dimension for your Analytics property."
    },
...
],

Langkah 3: Sertakan dimensi kustom dalam permintaan laporan. Hal berikut adalah permintaan contoh untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
  "dateRanges": [{ "startDate": "2020-09-01", "endDate": "2020-09-15" }],
  "dimensions": [{ "name": "customEvent:achievement_id" }],
  "metrics": [{ "name": "eventCount" }]
}

Dimensi kustom cakupan pengguna

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata

Langkah 2: Temukan Dimensi Kustom Cakupan Pengguna yang Anda minati membuat laporan dari respons. Jika dimensi tidak ada, Anda perlu untuk mendaftarkan dimensi.

"dimensions": [
...
    {
      "apiName": "customUser:last_level",
      "uiName": "Last level",
      "description": "A user property for your Analytics property."
    },
...
],

Langkah 3: Sertakan dimensi kustom dalam permintaan laporan. Hal berikut adalah permintaan contoh untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
  "entity": { "propertyId": "GA_PROPERTY_ID" },
  "dateRanges": [{ "startDate": "7daysAgo", "endDate": "yesterday" }],
  "dimensions": [{ "name": "customUser:last_level" }],
  "metrics": [{ "name": "activeUsers" }]
}

Metrik kustom cakupan peristiwa

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata

Langkah 2: Temukan Metrik Kustom Cakupan Peristiwa yang Anda minati membuat laporan dari respons. Jika metrik tersebut tidak ada, Anda harus daftarkan metrik.

"metrics": [
...
    {
      "apiName": "customEvent:credits_spent",
      "uiName": "Credits Spent",
      "description": "An event scoped custom metric for your Analytics property.",
      "type": "TYPE_STANDARD"
    },
...
],

Langkah 3: Sertakan metrik kustom dalam permintaan laporan. Hal berikut adalah permintaan contoh untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
  "dateRanges": [{ "startDate": "30daysAgo", "endDate": "yesterday" }],
  "dimensions": [{ "name": "eventName" }],
  "metrics": [{ "name": "customEvent:credits_spent" }]
}

Metrik rasio peristiwa utama untuk satu peristiwa utama

Langkah 1: Buat kueri Metadata API Metode dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata

Langkah 2: Temukan Metrik Rasio Peristiwa Utama Untuk Satu Peristiwa Utama yang Anda minati untuk membuat laporan dari respons. Jika peristiwa utama tidak ada, Anda Anda perlu menyiapkan kunci peristiwa.

"metrics": [
...
    {
      "apiName": "sessionKeyEventRate:add_to_cart",
      "uiName": "Session key event rate for add_to_cart",
      "description": "The percentage of sessions in which a specific key event was triggered",
    },
...
],

Langkah 3: Sertakan metrik rasio peristiwa utama dalam permintaan laporan. Hal berikut adalah contoh permintaan ke runReport .

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
  "dateRanges": [{ "startDate": "30daysAgo", "endDate": "yesterday" }],
  "dimensions": [{ "name": "eventName" }],
  "metrics": [{ "name": "sessionKeyEventRate:add_to_cart" }]
}

Rata-rata metrik kustom cakupan peristiwa

Langkah 1: Buat kueri Metode Metadata API dengan ID Properti Anda.

GET https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID/metadata

Langkah 2: Temukan Rata-rata Metrik Kustom Cakupan Peristiwa yang Anda minati membuat laporan dari respons. Jika metrik tersebut tidak ada, Anda harus daftarkan metrik.

"metrics": [
...
    {
      "apiName": "averageCustomEvent:credits_spent",
      "uiName": "Average Credits Spent",
      "description": "The average of an event scoped custom metric for your Analytics property.",
      "type": "TYPE_STANDARD"
    },
...
],

Langkah 3: Sertakan rata-rata metrik kustom dalam permintaan laporan. Hal berikut adalah permintaan contoh untuk metode runReport.

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
  "dateRanges": [{ "startDate": "2020-11-01", "endDate": "2020-11-10" }],
  "dimensions": [{ "name": "eventName" }],
  "metrics": [{ "name": "averageCustomEvent:credits_spent" }]
}

Contoh laporan kelompok

Laporan kelompok membuat deret waktu retensi pengguna untuk kelompok. Sebagai dokumentasi mendetail dari setiap kolom API, lihat referensi REST untuk KelompokSpec.

Membuat laporan kelompok

Berikut adalah contoh laporan kelompok yang:

  • Kelompok ini adalah pengguna dengan firstSessionDate sebesar 2020-12-01; ini adalah dikonfigurasi oleh objek cohorts. Dimensi dan metrik dalam laporan respons hanya akan didasarkan pada pengguna kelompok.
  • Laporan kelompok akan menampilkan tiga kolom; hal ini dikonfigurasi oleh dimensi dan metrik.
    • Dimensi cohort adalah nama kelompok.
    • Dimensi cohortNthDay adalah jumlah hari sejak 2020-12-01.
    • Metrik cohortActiveUsers adalah jumlah pengguna yang masih aktif.
  • Objek cohortsRange menentukan bahwa laporan harus berisi data peristiwa mulai dari 2020-12-01 dan berakhir pada 2020-12-06 untuk kelompok ini.
    • Ketika perincian DAILY digunakan, dimensi cohortNthDay adalah direkomendasikan untuk konsistensi.

Permintaan laporan untuk kelompok tersebut adalah:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
  "dimensions": [{ "name": "cohort" }, { "name": "cohortNthDay" }],
  "metrics": [{ "name": "cohortActiveUsers" }],
  "cohortSpec": {
    "cohorts": [
      {
        "dimension": "firstSessionDate",
        "dateRange": { "startDate": "2020-12-01", "endDate": "2020-12-01" }
      }
    ],
    "cohortsRange": {
      "endOffset": 5,
      "granularity": "DAILY"
    }
  },
}

Untuk permintaan ini, contoh respons laporan adalah:

{
  "dimensionHeaders": [
    { "name": "cohort" }, { "name": "cohortNthDay" }
  ],
  "metricHeaders": [
    { "name": "cohortActiveUsers", "type": "TYPE_INTEGER" }
  ],
  "rows": [
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0000" }],
      "metricValues": [{ "value": "293" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0001" }],
      "metricValues": [{ "value": "143" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0002" }],
      "metricValues": [{ "value": "123" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0003" }],
      "metricValues": [{ "value": "92" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0005" }],
      "metricValues": [{ "value": "86" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0004" }],
      "metricValues": [{ "value": "83" }]
    }
  ],
  "metadata": {},
  "rowCount": 6
}

Dari respons laporan ini, diagram untuk laporan Kelompok ini akan ditampilkan. Suatu wawasan dari laporan ini adalah bahwa penurunan terbesar dalam pengguna aktif untuk kelompok ini antara hari pertama dan kedua.

Visualisasi pengguna kelompok dari waktu ke waktu

Beberapa kelompok dan bagian retensi pengguna

Akuisisi dan retensi pengguna adalah cara untuk mengembangkan Situs atau Aplikasi Anda. Kelompok yang berfokus pada retensi pengguna. Dalam contoh ini, laporan menunjukkan properti ini telah meningkatkan retensi pengguna 4 hari sebesar 10% selama dua minggu.

Untuk membuat laporan ini, kami menentukan tiga kelompok: kelompok pertama dengan firstSessionDate dari 2020-11-02, yang kedua dengan firstSessionDate 2020-11-09, dan yang ketiga dengan firstSessionDate dari 2020-11-16. Karena jumlah pengguna di properti Anda akan berbeda untuk tiga hari tersebut, kami membandingkan metrik fraksi retensi pengguna kelompok cohortActiveUsers/cohortTotalUsers, bukan menggunakan jaringan Metrik cohortActiveUsers.

Permintaan laporan untuk kelompok ini adalah:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
  "dimensions": [{ "name": "cohort" },{ "name": "cohortNthDay" }],
  "metrics": [
    {
      "name": "cohortRetentionFraction",
      "expression": "cohortActiveUsers/cohortTotalUsers"
    }
  ],
  "cohortSpec": {
    "cohorts": [
      {
        "dimension": "firstSessionDate",
        "dateRange": { "startDate": "2020-11-02", "endDate": "2020-11-02" }
      },
      {
        "dimension": "firstSessionDate",
        "dateRange": { "startDate": "2020-11-09", "endDate": "2020-11-09" }
      },
      {
        "dimension": "firstSessionDate",
        "dateRange": { "startDate": "2020-11-16", "endDate": "2020-11-16" }
      }
    ],
    "cohortsRange": {
      "endOffset": 4,
      "granularity": "DAILY"
    }
  },
}

Untuk permintaan ini, contoh respons laporan adalah:

{
  "dimensionHeaders": [{ "name": "cohort" },{ "name": "cohortNthDay" }],
  "metricHeaders": [{
      "name": "cohortRetentionFraction",
      "type": "TYPE_FLOAT"
    }
  ],
  "rows": [
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0000" }],
      "metricValues": [{ "value": "1" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0000" }],
      "metricValues": [{ "value": "1" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0000" }],
      "metricValues": [{ "value": "1" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0001" }],
      "metricValues": [{ "value": "0.308" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0001" }],
      "metricValues": [{ "value": "0.272" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0002" }],
      "metricValues": [{ "value": "0.257" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0001" }],
      "metricValues": [{ "value": "0.248" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0003" }],
      "metricValues": [{ "value": "0.235" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_2" },{ "value": "0004" }],
      "metricValues": [{ "value": "0.211" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0002" }],
      "metricValues": [{ "value": "0.198" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0002" }],
      "metricValues": [{ "value": "0.172" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0003" }],
      "metricValues": [{ "value": "0.167" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_1" },{ "value": "0004" }],
      "metricValues": [{ "value": "0.155" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0003" }],
      "metricValues": [{ "value": "0.141" }]
    },
    {
      "dimensionValues": [{ "value": "cohort_0" },{ "value": "0004" }],
      "metricValues": [{ "value": "0.118" }]
    }
  ],
  "metadata": {},
  "rowCount": 15
}

Dari respons laporan ini, diagram untuk laporan Kelompok ini akan ditampilkan. Suatu wawasan dari laporan ini adalah retensi pengguna 4 hari meningkat 10% selama selama dua minggu. Kelompok berikutnya dengan firstSessionDate dari 2020-11-16 melebihi retensi kelompok sebelumnya dengan firstSessionDate dari 2020-11-02.

Diagram retensi beberapa kelompok

Kelompok mingguan dan menggunakan kelompok dengan fitur API lainnya

Untuk menghapus varians harian dalam perilaku pengguna, gunakan kohor mingguan. Setiap minggu laporan kelompok, semua pengguna dengan firstSessionDate pada minggu yang sama membentuk grup. Minggu dimulai pada hari Minggu dan berakhir pada hari Sabtu. Dalam laporan ini, kami juga Memotong kelompok untuk membandingkan pengguna dengan aktivitas di Rusia dengan pengguna aktivitas perusahaan di Meksiko. Pemotongan ini menggunakan dimensi country dan dimensi dimensionFilter untuk hanya mempertimbangkan kedua negara.

Permintaan laporan untuk kelompok ini adalah:

POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
{
  "dimensions": [
    { "name": "cohort" },
    { "name": "cohortNthWeek" },
    { "name": "country" }
  ],
  "metrics": [{ "name": "cohortActiveUsers" }],
  "dimensionFilter": {
    "filter": {
      "fieldName": "country",
      "inListFilter": {
        "values": [ "Russia", "Mexico" ]
      }
    }
  },
  "cohortSpec": {
    "cohorts": [
      {
        "dimension": "firstSessionDate",
        "dateRange": {
          "startDate": "2020-10-04",
          "endDate": "2020-10-10"
        }
      }
    ],
    "cohortsRange": {
      "endOffset": 5,
      "granularity": "WEEKLY"
    }
  },
}

Untuk permintaan ini, contoh respons laporan adalah:

{
  "dimensionHeaders": [
    { "name": "cohort" },
    { "name": "cohortNthWeek" },
    { "name": "country" }
  ],
  "metricHeaders": [
    { "name": "cohortActiveUsers", "type": "TYPE_INTEGER" }
  ],
  "rows": [
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0000" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "105" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0000" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "98" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0001" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "35" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0002" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "24" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0001" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "23" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0004" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "17" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0003" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "15" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0005" },{ "value": "Mexico" }
      ],
      "metricValues": [{ "value": "15" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0002" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "3" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0003" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "1" }]
    },
    {
      "dimensionValues": [
        { "value": "cohort_0" },{ "value": "0004" },{ "value": "Russia" }
      ],
      "metricValues": [{ "value": "1" }]
    }
  ],
  "metadata": {},
  "rowCount": 11
}

Dari respons laporan ini, diagram laporan Kelompok ini akan mengikuti. Berdasarkan hal ini melaporkan, properti ini berperforma lebih baik dalam mempertahankan pengguna yang beraktivitas di Meksiko dibandingkan pengguna dengan aktivitas di Rusia.

Diagram kohor perbandingan negara

Perbandingan

Perbandingan memungkinkan Anda mengevaluasi subkumpulan data secara berdampingan. Anda dapat tentukan perbandingan dengan menentukan comparisons dalam definisi laporan. Fitur Perbandingan dari Data API serupa dengan Perbandingan di frontend Google Analytics.

Untuk dokumentasi terperinci dari setiap kolom API, lihat referensi REST untuk Perbandingan.

Buat Perbandingan

Anda dapat membuat perbandingan terpisah untuk setiap {i>dataset<i} yang ingin dibandingkan. Misalnya, untuk membandingkan data aplikasi dan web, Anda dapat membuat satu perbandingan untuk Data Android dan iOS serta perbandingan lain untuk data Web.

Berikut adalah contoh laporan yang mendefinisikan dua perbandingan dan menampilkan pengguna aktif yang diperinci berdasarkan negara.

Perbandingan pertama yang bernama "Traffic aplikasi" menggunakan inListFilter untuk cocokkan dimensi platform dengan nilai "iOS" dan "Android". Yang kedua perbandingan bernama "Traffic web" menggunakan stringFilter untuk mencocokkan platform dimensi dengan "web".

  POST https://analyticsdata.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runReport
  {
    "comparisons": [
      {
        "name": "App traffic",
        "dimensionFilter": {
          "filter": {
            "fieldName": "platform",
            "inListFilter": {
              "values": [
                "iOS",
                "Android"
              ]
            }
          }
        }
      },
      {
        "name": "Web traffic",
        "dimensionFilter": {
          "filter": {
            "fieldName": "platform",
            "stringFilter": {
              "matchType": "EXACT",
              "value": "web"
            }
          }
        }
      }
    ],
    "dateRanges": [
      {
        "startDate": "2024-05-01",
        "endDate": "2024-05-15"
      }
    ],
    "dimensions": [
      {
        "name": "country"
      }
    ],
    "metrics": [
      {
        "name": "activeUsers"
      }
    ]
  }

Untuk semua permintaan yang menggunakan fitur perbandingan, kolom comparison adalah otomatis ditambahkan ke laporan yang dihasilkan. Kolom ini berisi nama dari perbandingan yang tercantum dalam permintaan.

Berikut adalah contoh cuplikan respons yang berisi perbandingan:

{
  "dimensionHeaders": [
    {
      "name": "comparison"
    },
    {
      "name": "country"
    }
  ],
  "metricHeaders": [
    {
      "name": "activeUsers",
      "type": "TYPE_INTEGER"
    }
  ],
  "rows": [
    {
      "dimensionValues": [
        {
          "value": "Web traffic"
        },
        {
          "value": "United States"
        }
      ],
      "metricValues": [
        {
          "value": "638572"
        }
      ]
    },
    {
      "dimensionValues": [
        {
          "value": "Web traffic"
        },
        {
          "value": "Japan"
        }
      ],
      "metricValues": [
        {
          "value": "376578"
        }
      ]
    },
  {
      "dimensionValues": [
        {
          "value": "App traffic"
        },
        {
          "value": "United States"
        }
      ],
      "metricValues": [
        {
          "value": "79527"
        }
      ]
    },

    ...

  ],

...

}