查詢指標集

完成所有設定後,您就可以向 Google Play Developer Reporting API 傳送要求,擷取指標集的相關中繼資料,並查詢指標。

下列程式碼範例示範如何傳送幾項簡單要求。舉例來說,下列方法會說明如何擷取應用程式的各種指標。您可以使用幾種不同的查詢參數來縮小查詢範圍。

擷取指標集的中繼資料

以下範例會擷取虛構應用程式 com.example.app 的當機率指標組合中繼資料。

簡單要求:

這個 HTTP GET 要求會指定應用程式名稱參數,並傳回與應用程式相關聯的完整指標資源。

GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet

指標資訊回應:

回應會包括下列與指標集相關的欄位:

{
  "freshness_info": {
    "freshness": [
      "aggregation_period": "DAILY"
      "latest_end_time": { year: "2021" month: "7" day: "22" time_zone: "America/Los_Angeles" }
    ]
  }
}

使用查詢功能

以下是對相同資源發出的 HTTP POST 要求,其中使用了 query 端點,從指標集中擷取特定資料。

POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query

在要求主體中傳遞查詢選項,根據特定條件擷取指標。

{
  "timeline_spec": {
    "aggregation_period": "DAILY"
    "start_time": { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
    "end_time": { year: "2021" month: "7" day: "3" time_zone: "America/Los_Angeles" }
   }
  "dimensions": ["apiLevel"]
  "metrics": ["errorReportCount", "distinctUsers"]
  "page_size": "10"
}

以下提供幾個集合層級的範例:

欄位
timelineSpec

object (TimelineSpec)

時間軸匯總參數的規格。如要查看支援的匯總週期,請參閱各指標集的說明文件。

dimensions[]

string

用來細分指標的維度。如要查看支援的維度清單,請參閱各指標集的說明文件。

metrics[]

string

要匯總的指標。

pageSize

integer

傳回資料的大小上限。

如未指定,最多將傳回 1000 列。許可的最大值為 100,000;超出的數值將一律指定為 100,000。

處理回應

伺服器處理包含有效欄位的有效要求後,會傳回一個 HTTP 200 OK 狀態碼,以及所要求的資料。如果 fields 查詢參數發生錯誤或無效,伺服器會傳回 HTTP 400 Bad Request 狀態碼和錯誤訊息,指出使用者選取欄位時發生的錯誤 (例如 "Invalid field timeline_spec")。

以下是前述簡介一節中顯示的回應範例。

POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query

回應的形式如下所示:

200 OK
{
  rows: [
    {
      aggregation_period: "DAILY"
      start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
      dimensions: [{dimension: "apiLevel" int64_value: "20"}]
      metrics: [
        {metric: "errorReportCount" decimal_value: "100"},
        {metric: "distinctUsers" decimal_value: "57"},
      ]
    }, {
      aggregation_period: "DAILY"
      start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
      dimensions: [{dimension: "apiLevel" int64_value: "21"}]
      metrics: [
        {metric: "errorReportCount" decimal_value: "123"},
        {metric: "distinctUsers" decimal_value: "65"},
      ]
    },
    ...
  ]
  next_page_token: "eW91IGhhdmUgdG9vIG11Y2ggZnJlZSB0aW1l"
}

注意:如果 API 支援資料分頁的查詢參數 (例如 maxResultsnextPageToken),請使用這些參數將各筆查詢的結果縮減至方便管理的大小。