すべてを設定すると、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 |
タイムライン集計パラメータの指定。サポートされている集計期間の一覧については、各指標セットのドキュメントをご覧ください。 |
dimensions[] |
指標を分割するためのディメンション。サポートされているディメンションのリストについては、各指標セットのドキュメントをご覧ください。 |
metrics[] |
集計する指標。 |
pageSize |
返されるデータの最大サイズ。 指定しない場合は、最大 1, 000 行が返されます。最大値は 100,000 です。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(maxResults
や nextPageToken
など)の場合は、それらのパラメータを使用して、各クエリの結果を適切なサイズに制限してください。