Trường hợp sử dụng nâng cao

Tài liệu này mô tả một số tính năng nâng cao của Google Analytics Data API phiên bản 1. Để tham khảo chi tiết về API, hãy xem Tài liệu tham khảo API.

Liệt kê các định nghĩa tuỳ chỉnh và tạo báo cáo

Data API có thể tạo báo cáo về các thuộc tính Tuỳ chỉnh đã đăng ký Phương diệnTuỳ chỉnh Chỉ số. API Siêu dữ liệu Bạn có thể dùng phương thức để liệt kê API tên Định nghĩa tùy chỉnh đã đăng ký của Thuộc tính. Các tên API này có thể là được dùng trong Yêu cầu báo cáo cho Ví dụ: runReport.

Các phần sau đây trình bày ví dụ cho từng loại Định nghĩa tuỳ chỉnh. Trong các ví dụ này, hãy thay thế GA_PROPERTY_ID bằng Mã thuộc tính.

Phương diện tùy chỉnh ở phạm vi sự kiện

Bước 1: Truy vấn Phương thức API Siêu dữ liệu bằng Mã tài sản của bạn.

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

Bước 2: Tìm Phương diện tuỳ chỉnh trong phạm vi sự kiện mà bạn quan tâm tạo báo cáo từ phản hồi. Nếu không có phương diện này, bạn cần để đăng ký phương diện.

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

Bước 3: Đưa phương diện tuỳ chỉnh vào yêu cầu báo cáo. Nội dung sau đây là một yêu cầu mẫu cho phương thức 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" }]
}

Phương diện tuỳ chỉnh trong phạm vi người dùng

Bước 1: Truy vấn Phương thức API Siêu dữ liệu bằng Mã tài sản của bạn.

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

Bước 2: Tìm Phương diện tuỳ chỉnh trong phạm vi người dùng mà bạn quan tâm tạo báo cáo từ phản hồi. Nếu không có phương diện này, bạn cần để đăng ký phương diện.

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

Bước 3: Đưa phương diện tuỳ chỉnh vào yêu cầu báo cáo. Nội dung sau đây là một yêu cầu mẫu cho phương thức 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" }]
}

Chỉ số tùy chỉnh ở phạm vi sự kiện

Bước 1: Truy vấn Phương thức API Siêu dữ liệu bằng Mã tài sản của bạn.

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

Bước 2: Tìm chỉ số tuỳ chỉnh ở phạm vi sự kiện mà bạn quan tâm tạo báo cáo từ phản hồi. Nếu không có chỉ số này, bạn cần đăng ký chỉ số.

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

Bước 3: Đưa chỉ số tuỳ chỉnh vào yêu cầu báo cáo. Nội dung sau đây là một yêu cầu mẫu cho phương thức 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" }]
}

Các chỉ số về tỷ lệ sự kiện chính cho một sự kiện chính

Bước 1: Truy vấn Metadata API Phương thức có mã tài sản của bạn.

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

Bước 2: Tìm chỉ số Tỷ lệ sự kiện chính cho một sự kiện chính mà bạn quan tâm khi tạo báo cáo từ phản hồi. Nếu không xuất hiện sự kiện chính, bạn bạn cần thiết lập khoá này sự kiện.

"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",
    },
...
],

Bước 3: Đưa chỉ số tỷ lệ sự kiện chính vào yêu cầu báo cáo. Nội dung sau đây là một yêu cầu mẫu cho 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" }]
}

Mức trung bình của chỉ số tuỳ chỉnh ở phạm vi sự kiện

Bước 1: Truy vấn Phương thức API Siêu dữ liệu bằng Mã tài sản của bạn.

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

Bước 2: Tìm giá trị trung bình của chỉ số tuỳ chỉnh trong phạm vi sự kiện mà bạn quan tâm tạo báo cáo từ phản hồi. Nếu không có chỉ số này, bạn cần đăng ký chỉ số.

"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"
    },
...
],

Bước 3: Thêm chỉ số tuỳ chỉnh trung bình vào yêu cầu báo cáo. Nội dung sau đây là một yêu cầu mẫu cho phương thức 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" }]
}

Ví dụ về báo cáo nhóm thuần tập

Báo cáo nhóm thuần tập tạo ra một chuỗi thời gian giữ chân người dùng cho nhóm thuần tập. Cho tài liệu chi tiết về từng trường API, hãy xem tài liệu tham khảo REST cho Nhóm thuần tập.

Tạo báo cáo nhóm thuần tập

Dưới đây là báo cáo nhóm thuần tập mẫu trong đó:

  • Nhóm thuần tập là những người dùng có firstSessionDate2020-12-01; đây là do đối tượng cohorts định cấu hình. Các phương diện và chỉ số trong báo cáo phản hồi sẽ chỉ dựa trên người dùng của nhóm thuần tập.
  • Báo cáo nhóm thuần tập sẽ hiển thị 3 cột; điều này được định cấu hình bởi thứ nguyên và chỉ số.
    • Phương diện cohort là tên của nhóm thuần tập.
    • Phương diện cohortNthDay là số ngày kể từ ngày 2020-12-01.
    • Chỉ số cohortActiveUsers là số lượng người dùng vẫn đang hoạt động.
  • Đối tượng cohortsRange chỉ định rằng báo cáo phải chứa dữ liệu sự kiện bắt đầu từ 2020-12-01 và kết thúc lúc 2020-12-06 cho nhóm thuần tập này.
    • Khi sử dụng độ chi tiết của DAILY, tham số cohortNthDay là được đề xuất để đảm bảo tính nhất quán.

Yêu cầu báo cáo cho nhóm thuần tập là:

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"
    }
  },
}

Đối với yêu cầu này, phản hồi báo cáo mẫu là:

{
  "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
}

Từ phản hồi báo cáo này, một biểu đồ cho báo cáo Nhóm thuần tập này sẽ theo sau. Thông tin chi tiết trong báo cáo này là sự sụt giảm lớn nhất về số người dùng đang hoạt động trong nhóm thuần tập này là giữa ngày đầu tiên và ngày thứ hai.

Hình ảnh trực quan về người dùng trong nhóm thuần tập theo thời gian

Nhiều nhóm thuần tập và tỷ lệ giữ chân người dùng

Thu nạp người dùng và giữ chân người dùng là những cách để phát triển Trang web hoặc ứng dụng của bạn. Nhóm thuần tập báo cáo tập trung vào tỷ lệ giữ chân người dùng. Trong ví dụ này, báo cáo cho biết tài sản này đã tăng tỷ lệ giữ chân người dùng sau 4 ngày thêm 10% trong 2 tuần.

Để tạo báo cáo này, chúng tôi chỉ định ba nhóm thuần tập: nhóm đầu tiên có một firstSessionDate về 2020-11-02, trang thứ hai có firstSessionDate2020-11-09 và quảng cáo thứ ba có firstSessionDate2020-11-16. Vì số lượng người dùng trên tài sản của bạn sẽ khác nhau trong 3 ngày này, chúng tôi so sánh chỉ số tỷ lệ giữ chân người dùng của nhóm thuần tập là cohortActiveUsers/cohortTotalUsers thay vì sử dụng phương thức trực tiếp Chỉ số cohortActiveUsers.

Yêu cầu báo cáo cho các nhóm thuần tập này là:

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"
    }
  },
}

Đối với yêu cầu này, phản hồi báo cáo mẫu là:

{
  "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
}

Từ phản hồi báo cáo này, một biểu đồ cho báo cáo Nhóm thuần tập này sẽ theo sau. Thông tin chi tiết của báo cáo này cho thấy tỷ lệ giữ chân người dùng trong 4 ngày đã tăng 10% so với kéo dài 2 tuần. Nhóm thuần tập sau đó có firstSessionDate/2020-11-16 vượt quá tỷ lệ giữ chân nhóm thuần tập trước đó là firstSessionDate trong tổng số 2020-11-02.

Biểu đồ về nhiều tỷ lệ giữ chân nhóm thuần tập

Nhóm thuần tập hằng tuần và sử dụng nhóm thuần tập với các tính năng API khác

Để loại bỏ sự khác biệt theo từng ngày trong hành vi của người dùng, hãy sử dụng nhóm thuần tập hằng tuần. Trong tuần báo cáo nhóm thuần tập, tất cả người dùng có firstSessionDate trong cùng một tuần tạo thành nhóm thuần tập. Tuần bắt đầu vào Chủ Nhật và kết thúc vào thứ Bảy. Cũng trong báo cáo này, chúng tôi chia nhỏ nhóm thuần tập để so sánh người dùng có hoạt động ở Nga với những người dùng có ở Mexico. Lát cắt này sử dụng phương diện countrydimensionFilter để chỉ xem xét hai quốc gia này.

Yêu cầu báo cáo cho các nhóm thuần tập này là:

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"
    }
  },
}

Đối với yêu cầu này, phản hồi báo cáo mẫu là:

{
  "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
}

Từ phản hồi báo cáo này, biểu đồ của báo cáo Nhóm thuần tập này sẽ theo sau. Dựa trên thông tin này báo cáo, tài sản này đang hoạt động hiệu quả hơn trong việc giữ chân người dùng có hoạt động ở Mexico so với người dùng có hoạt động ở Nga.

Biểu đồ nhóm thuần tập so sánh theo quốc gia

Phép so sánh

Khi dùng phép so sánh, bạn có thể đánh giá các nhóm dữ liệu nhỏ cùng một lúc. Bạn có thể xác định các phép so sánh bằng cách chỉ định comparisons trong định nghĩa báo cáo. Tính năng So sánh của Data API cũng tương tự như vậy với Thông tin so sánh trong giao diện người dùng của Google Analytics.

Để biết tài liệu chi tiết về từng trường API, hãy xem tài liệu tham khảo REST cho So sánh.

Tạo phép so sánh

Bạn có thể tạo một phép so sánh riêng cho từng tập dữ liệu mà bạn muốn so sánh. Ví dụ: để so sánh dữ liệu web và ứng dụng, bạn có thể tạo một phép so sánh cho Dữ liệu Android và iOS cùng một phép so sánh khác về dữ liệu web.

Dưới đây là báo cáo mẫu xác định hai phép so sánh và trả về số người dùng đang hoạt động chia theo quốc gia.

Phép so sánh đầu tiên có tên là "Lưu lượng truy cập ứng dụng" đang sử dụng inListFilter để khớp phương diện platform với các giá trị "iOS" và "Android". Thứ hai phép so sánh có tên là "Lưu lượng truy cập web" sử dụng stringFilter để khớp với platform với "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"
      }
    ]
  }

Đối với tất cả các yêu cầu sử dụng tính năng so sánh, trường comparison là tự động được thêm vào báo cáo đã tạo. Trường này chứa tên thông tin so sánh được cung cấp trong yêu cầu.

Dưới đây là đoạn mã mẫu của phản hồi có chứa thông tin so sánh:

{
  "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"
        }
      ]
    },

    ...

  ],

...

}