Users.dataset: aggregate

특정 유형 또는 스트림의 데이터를 지정된 경계 유형으로 나뉜 버킷으로 집계합니다. 여러 소스와 여러 소스의 여러 데이터 세트를 요청당 정확히 하나의 버킷 유형으로 집계할 수 있습니다. 지금 사용해 보기

요청

HTTP 요청

POST https://www.googleapis.com/fitness/v1/users/userId/dataset:aggregate

매개변수

매개변수 이름 설명
경로 매개변수
userId string 식별된 인물에 대한 합산 데이터입니다. me를 사용하여 인증된 사용자를 나타냅니다. 현재는 me만 지원됩니다.

승인

이 요청에는 다음 범위 중 하나 이상을 포함하는 승인이 필요합니다.

범위
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 집계할 데이터의 사양입니다. 집계 기준 사양을 하나 이상 입력해야 합니다. 지정된 모든 데이터는 동일한 버케팅 기준을 사용하여 집계됩니다. 응답마다 모든 totalBy 사양의 데이터 세트가 하나 있습니다.
aggregateBy[].dataTypeName string 집계할 데이터 유형입니다. 이 데이터 유형을 제공하는 모든 데이터 소스는 집계에 데이터를 제공합니다. 응답에는 이 데이터 유형 이름의 데이터 세트가 하나만 포함됩니다. 데이터 세트의 ID는 derived::com.google.android.gms:Aggregated입니다. 사용자에게 이 데이터 유형에 관한 데이터가 없으면 빈 데이터 세트가 반환됩니다. 참고: dataTypeName 또는 dataSourceId 중 하나만 사용하여 데이터를 집계할 수 있습니다.
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

허용되는 값은 다음과 같습니다.
  • "day"
  • "month"
  • "week"
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 특정 활동 데이터 소스 ID가 지정되지 않은 경우 기본 활동 스트림이 사용됩니다.
bucketByActivitySegment nested object 사용자에 대해 기록된 각 활동 세그먼트를 집계하도록 지정합니다. bucketByActivitySegment와 유사하지만 동일한 유형의 모든 세그먼트가 아닌 각 활동 세그먼트에 대해 버케팅이 수행됩니다. 다른 버케팅 사양과 상호 배타적입니다.
bucketByActivitySegment.minDurationMillis long minDurationMillis보다 긴 활동의 세그먼트만 고려되고 집계된 데이터의 컨테이너로 사용됩니다.
bucketByActivitySegment.activityDataSourceId string 특정 활동 데이터 소스 ID가 지정되지 않은 경우 기본 활동 스트림이 사용됩니다.

응답

요청에 성공할 경우 이 메소드는 다음과 같은 구조의 응답 본문을 반환합니다.

{
  "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 버킷 유형은 버킷에서 데이터 집계가 수행되는 방식을 나타냅니다.

허용되는 값은 다음과 같습니다.
  • "activitySegment"
  • "activityType"
  • "session"
  • "time"
  • "unknown"
bucket[].startTimeMillis long 에포크 이후 집계된 데이터의 시작 시간(밀리초)입니다.
bucket[].endTimeMillis long 에포크 이후 집계된 데이터의 종료 시간(밀리초)입니다.
bucket[].dataset[] list 요청에는 AggregateBy당 하나의 데이터 세트가 있습니다.
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 클라이언트의 경우 필수 항목이지만 이 이름에는 고유성이 없습니다. 이 ID는 어떤 REST가 애플리케이션이나 데이터 소스를 생성했는지 식별하려는 다른 개발자에게 편의를 위한 목적으로 제공됩니다.
bucket[].session.activityType integer 이 세션이 나타내는 활동 유형입니다.
bucket[].session.activeTimeMillis long 세션 활성 시간. start_time_millis 및 end_time_millis는 전체 세션 시간을 정의하지만 활성 시간은 더 짧아지고 active_time_millis로 지정할 수 있습니다. 세션 중 비활성 시간을 알면 STILL 활동 값이 있는 com.google.activity.세그먼트 데이터 포인트도

bucket[].activity integer Bucket.Type.ACTIVITY_TYPE, Bucket.Type.ACTIVITY_세그먼트에 사용 가능

사용해 보기

아래의 API 탐색기를 사용하여 실시간 데이터를 대상으로 이 메소드를 호출하고 응답을 확인해 보세요.