すべてを設定すると、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
など)の場合は、それらのパラメータを使用して、各クエリの結果を適切なサイズに制限してください。