特定のタイプまたはストリームのデータを、指定した値で分割されたバケットに集約します。 境界のタイプです。複数の種類の複数のデータセットから成る複数のデータセット リクエストごとに 1 つのバケットタイプに集約できます。 実習をご覧ください。
リクエスト
HTTP リクエスト
POST https://www.googleapis.com/fitness/v1/users/userId/dataset:aggregate
パラメータ
パラメータ名 | 値 | 説明 |
---|---|---|
パスパラメータ | ||
userId |
string |
特定された人物のデータを集計します。me を使用して
表示されます。現時点でサポートされているのは me のみです。
|
承認
このリクエストは、少なくとも次のうち 1 つのスコープによる承認が必要です。
範囲 |
---|
https://www.googleapis.com/auth/fitness.activity.read |
https://www.googleapis.com/auth/fitness.activity.write |
https://www.googleapis.com/auth/fitness.location.read |
https://www.googleapis.com/auth/fitness.location.write |
https://www.googleapis.com/auth/fitness.body.read |
https://www.googleapis.com/auth/fitness.body.write |
https://www.googleapis.com/auth/fitness.nutrition.read |
https://www.googleapis.com/auth/fitness.nutrition.write |
https://www.googleapis.com/auth/fitness.blood_pressure.read |
https://www.googleapis.com/auth/fitness.blood_pressure.write |
https://www.googleapis.com/auth/fitness.blood_glucose.read |
https://www.googleapis.com/auth/fitness.blood_glucose.write |
https://www.googleapis.com/auth/fitness.oxygen_saturation.read |
https://www.googleapis.com/auth/fitness.oxygen_saturation.write |
https://www.googleapis.com/auth/fitness.body_temperature.read |
https://www.googleapis.com/auth/fitness.body_temperature.write |
https://www.googleapis.com/auth/fitness.reproductive_health.read |
https://www.googleapis.com/auth/fitness.reproductive_health.write |
詳細については、認証と認可のページをご覧ください。
リクエスト本文
リクエストの本文には、以下の構造を使用してデータを指定してください。
{ "startTimeMillis": long, "endTimeMillis": long, "aggregateBy": [ { "dataTypeName": string, "dataSourceId": string } ], "filteredDataQualityStandard": [ string ], "bucketByTime": { "durationMillis": long, "period": { "type": string, "value": integer, "timeZoneId": string } }, "bucketBySession": { "minDurationMillis": long }, "bucketByActivityType": { "minDurationMillis": long, "activityDataSourceId": string }, "bucketByActivitySegment": { "minDurationMillis": long, "activityDataSourceId": string } }
プロパティ名 | 値 | 説明 | メモ |
---|---|---|---|
startTimeMillis |
long |
時間枠の開始。この時間枠と交差するデータは集計されます。時間はエポックからのミリ秒単位の経過時間(エポックを含む)で表します。 | |
endTimeMillis |
long |
期間の終了。この時間枠と交差するデータは集計されます。時間はエポックからのミリ秒単位の経過時間(エポックを含む)で表します。 | |
aggregateBy[] |
list |
集計するデータの仕様。少なくとも 1 つの aggregateBy 仕様を指定する必要があります。指定されたすべてのデータは、同じバケット化条件を使用して集計されます。レスポンスには、aggregateBy 仕様ごとに 1 つのデータセットが含まれます。 | |
aggregateBy[].dataTypeName |
string |
集計するデータ型。このデータの種類を提供するすべてのデータソースのデータが集計に使用されます。レスポンスには、このデータ型名のデータセットが 1 つ含まれます。このデータセットのデータソース ID は derived: | |
aggregateBy[].dataSourceId |
string |
集計するデータソースの ID。指定したデータソース ID のデータのみが集計に含まれます。指定する場合、このデータソースが存在している必要があります。指定された認証情報の OAuth スコープで、このデータ型への読み取りアクセス権を付与する必要があります。レスポンスに含まれるデータセットは、同じデータソース ID を持ちます。注: データは、dataTypeName または dataSourceId のいずれかで集計できます。両方で集計することはできません。 | |
filteredDataQualityStandard[] |
list |
このフィールドは入力しないでください。これは無視されます。 | |
bucketByTime |
nested object |
データを単一の時間間隔で集計するように指定します。他のバケット仕様とは相互に排他的。 | |
bucketByTime.durationMillis |
long |
結果バケットで、正確に durationMillis タイムフレームごとにデータを集計するように指定します。データが含まれていない時間枠は、空のデータセットでレスポンスに含まれます。 | |
bucketByTime.period |
nested object |
||
bucketByTime.period.type |
string |
有効な値は次のとおりです。
|
|
bucketByTime.period.value |
integer |
||
bucketByTime.period.timeZoneId |
string |
org.joda.timezone.DateTimeZone | |
bucketBySession |
nested object |
データをユーザー セッション別に集計するように指定します。セッションの時間範囲に収まらないデータはレスポンスに含まれません。他のバケット仕様とは相互に排他的。 | |
bucketBySession.minDurationMillis |
long |
minDurationMillis より長いセッションのみを考慮し、集計データのコンテナとして使用するように指定します。 | |
bucketByActivityType |
nested object |
データの記録時に実行されたアクティビティの種類別にデータを集計するように指定します。特定のアクティビティ タイプ(特定の期間内)に記録されたデータはすべて、同じバケットに集計されます。ユーザーがアクティブでない間に記録されたデータはレスポンスに含まれません。他のバケット仕様とは相互に排他的。 | |
bucketByActivityType.minDurationMillis |
long |
minDurationMillis より長い期間のアクティビティ セグメントのみを考慮し、集計データのコンテナとして使用するように指定します。 | |
bucketByActivityType.activityDataSourceId |
string |
特定の activityDataSourceId が指定されていない場合は、デフォルトのアクティビティ ストリームが使用されます。 | |
bucketByActivitySegment |
nested object |
ユーザーについて記録された各アクティビティ セグメントのデータを集計するように指定します。bucketByActivitySegment と似ていますが、バケット化は、同じタイプのすべてのセグメントではなく、アクティビティ セグメントごとに行われます。他のバケット仕様とは相互に排他的。 | |
bucketByActivitySegment.minDurationMillis |
long |
minDurationMillis より長い期間のアクティビティ セグメントのみを考慮し、集計データのコンテナとして使用するように指定します。 | |
bucketByActivitySegment.activityDataSourceId |
string |
特定の activityDataSourceId が指定されていない場合は、デフォルトのアクティビティ ストリームが使用されます。 |
レスポンス
成功すると、このメソッドは次の構造を含むレスポンスの本文を返します。
{ "bucket": [ { "type": string, "startTimeMillis": long, "endTimeMillis": long, "dataset": [ users.dataSources.datasets Resource ], "session": { "id": string, "name": string, "description": string, "startTimeMillis": long, "endTimeMillis": long, "modifiedTimeMillis": long, "application": { "packageName": string, "version": string, "detailsUrl": string, "name": string }, "activityType": integer, "activeTimeMillis": long }, "activity": integer } ] }
プロパティ名 | 値 | 説明 | メモ |
---|---|---|---|
bucket[] |
list |
集計データを含むバケットのリスト。 | |
bucket[].type |
string |
バケットの種類は、バケット内でのデータ集計方法を表します。
有効な値は次のとおりです。
|
|
bucket[].startTimeMillis |
long |
集計データの開始時間(エポックからのミリ秒)。 | |
bucket[].endTimeMillis |
long |
集計データの終了時間(エポックからのミリ秒)。 | |
bucket[].dataset[] |
list |
リクエストの AggregateBy ごとに 1 つのデータセットがあります。 | |
bucket[].session |
nested object |
Bucket.Type.SESSION で使用できる | |
bucket[].session.id |
string |
クライアントが生成した識別子。このユーザーが所有するすべてのセッション間で一意です。 | |
bucket[].session.name |
string |
人が読める形式のセッション名。 | |
bucket[].session.description |
string |
このセッションの説明。 | |
bucket[].session.startTimeMillis |
long |
エポックからのミリ秒単位の開始時間(両端を含む)。 | |
bucket[].session.endTimeMillis |
long |
終了時間(エポックからのミリ秒)。 | |
bucket[].session.modifiedTimeMillis |
long |
セッションが最後に変更された日時を示すタイムスタンプ。 | |
bucket[].session.application |
nested object |
セッションを作成したアプリケーション。 | |
bucket[].session.application.packageName |
string |
このアプリケーションのパッケージ名。Android アプリで作成された場合は一意の識別子として使用されますが、REST クライアントで指定することはできません。REST クライアントでは、packageName ではなく、デベロッパー プロジェクト番号がデータソースのデータ ストリーム ID に反映されます。 | |
bucket[].session.application.version |
string |
アプリケーションのバージョン。アプリケーションでデータの計算に影響するような変更が加えられるたびに、このフィールドを更新する必要があります。 | |
bucket[].session.application.detailsUrl |
string |
アプリにリンクするために使用できる URI(省略可)。 | |
bucket[].session.application.name |
string |
このアプリケーションの名前。これは REST クライアントでは必須ですが、この名前の一意性は強制しません。これは、アプリケーションやデータソースを作成した REST を知りたい他のデベロッパーにとって便宜上提供されています。 | |
bucket[].session.activityType |
integer |
このセッションが表すアクティビティのタイプ。 | |
bucket[].session.activeTimeMillis |
long |
セッションのアクティブ時間。start_time_millis と end_time_millis は完全なセッション時間を定義しますが、アクティブ時間は、active_time_millis で短く指定することができます。セッション中の非アクティブ時間が判明している場合は、com.google.activity.segment データポイント(STILL アクティビティ値 )からも挿入する必要があります。 |
|
bucket[].activity |
integer |
Bucket.Type.ACTIVITY_TYPE、Bucket.Type.ACTIVITY_SEGMENT で使用できます |
試してみよう:
以下の API Explorer を使用して、ライブデータに対してこのメソッドを呼び出し、レスポンスを確認してください。