섭취한 음식 읽기

Android

앱은 다음 예와 같이 데이터 읽기 요청을 만들고 DataType.TYPE_NUTRITION를 쿼리하여 지정된 기간 내에 섭취한 음식 목록을 가져올 수 있습니다.

val readRequest = DataReadRequest.Builder()
    .read(DataType.TYPE_NUTRITION)
    .setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
    .build()

데이터 읽기에 대한 자세한 내용은 피트니스 기록 사용을 참조하세요.

REST

REST API를 통해 섭취한 음식 목록을 가져오는 작업은 3단계로 이루어집니다.

  1. com.google.nutrition 데이터 유형에 사용할 수 있는 데이터 소스 목록을 가져옵니다. 또는 데이터 소스 세부정보가 이미 알려진 경우 다음 단계에서 직접 사용할 수 있습니다.
  2. 각 데이터 소스에서 차례대로 섭취한 음식 목록을 가져옵니다.
  3. (데이터 소스가 두 개 이상인 경우) 클라이언트 애플리케이션 내에서 음식 항목 목록을 결합합니다.

음식 데이터 소스 목록 가져오기

데이터 소스에는 datasource.dataStreamId만 필요하므로 여기에 나온 것처럼 필드 마스크를 사용하여 응답을 이 속성으로만 제한할 수 있습니다.

HTTP 메소드

GET

요청 URL

https://www.googleapis.com/fitness/v1/users/me/dataSources?dataTypeName=com.google.nutrition&fields=dataSource(dataStreamId)

응답

성공하면 200 OK 상태 코드가 반환됩니다. 응답 본문에는 JSON 목록이 포함되며 목록의 각 항목은 데이터 소스에 해당합니다.

예를 들면 다음과 같습니다.

{
 "dataSource": [
  {
   "dataStreamId": "raw:com.google.nutrition:com.example.nutritionSource1:"
  },
  {
   "dataStreamId": "raw:com.google.nutrition:com.example.nutritionSource2:"
  }
 ]
}

CURL 명령어

$ curl \
  'https://www.googleapis.com/fitness/v1/users/me/dataSources?dataTypeName=com.google.nutrition&fields=dataSource(dataStreamId)' \
      --header 'Authorization: Bearer ya29.yourtokenvalue' \
      --header 'Accept: application/json' \
      --compressed

데이터 소스에서 섭취한 음식 목록 가져오기

1단계의 각 소스에서 dataSource.dataStreamId를 차례로 사용하여 섭취한 음식 목록을 가져옵니다.

datasetId데이터 세트 리소스에 정의된 대로 필수 기간의 시작과 끝(나노초)입니다.

예를 들어 1546300800000000000-15463872000000000002019년 1월 1일 00:00:00 UTC부터 2019년 1월 2일 00:00:00까지의 datasetId를 나타냅니다.

HTTP 메소드

GET

요청 URL

https://www.googleapis.com/fitness/v1/users/me/dataSources/dataSource.dataStreamId/datasets/1546300800000000000-1546387200000000000?fields=point%2Fvalue%2FstringVal

응답

{
 "point": [
  {
   "value": [
    {},
    {},
    {
     "stringVal": "apple"
    }
   ]
  },
  {
   "value": [
    {},
    {},
    {
     "stringVal": "banana"
    }
   ]
  },
  {
   "value": [
    {},
    {},
    {
     "stringVal": "carrot"
    }
   ]
  }
 ]
}

CURL 명령어

$ curl \
  'https://www.googleapis.com/fitness/v1/users/me/dataSources/dataSource.dataStreamId/datasets/157059699023000000-1575159699023999000?fields=point%2Fvalue%2FstringVal' \
      --header 'Authorization: Bearer ya29.yourtokenvalue' \
      --header 'Accept: application/json' \
      --compressed