Adicionar dados de hidratação

É possível adicionar dados de hidratação ao Google Fit criando uma fonte de dados e usando o tipo de dados com.google.hydration. Cada ponto de dados representa o volume, em litros, consumidas por um usuário como parte de uma única bebida. Use um ponto flutuante para especificar o volume. Observação: o carimbo de data/hora indica quando a bebida foi consumida. Como com.google.hydration é um tipo de dado instantâneo, os horários de início e término precisam ser os mesmos.

Crie uma origem de dados

Android

Use DataSource.Builder para criar uma nova fonte de dados. Por exemplo, hydrationSource.

val hydrationSource = DataSource.Builder()
    .setDataType(DataType.TYPE_HYDRATION)
    .setStreamName("hydrationSource")
    // ... 
    .build()

REST

Chame a API REST para criar uma fonte de dados. Por exemplo, HydrationSource.

Método HTTP

POST

Request URL

https://www.googleapis.com/fitness/v1/users/me/dataSources

Corpo da solicitação

{
  "dataStreamName": "HydrationSource",
  "type": "raw",
  "application": {
    "detailsUrl": "http://example.com",
    "name": "My Example App",
    "version": "1"
  },
  "dataType": {
    "name": "com.google.hydration",
    "field": [
     {
      "name": "volume",
      "format": "floatPoint",
      "optional": false
     }
    ]
   }
}

Resposta

Se a fonte de dados for criada corretamente, a resposta será um status 200 OK o código-fonte. O corpo da resposta contém uma representação JSON da fonte de dados, incluindo uma propriedade datasource.dataStreamId que você pode usar como os dados ID de origem para as solicitações subsequentes.

Comando CURL

$ curl --header "Authorization: Bearer ya29.yourtokenvalue" --request POST \
  --header "Content-Type: application/json;encoding=utf-8" --data @hydration-ds.json \
  https://www.googleapis.com/fitness/v1/users/me/dataSources

Adicionar dados de hidratação

Android

Este exemplo mostra como criar um ponto de dados e adicionar hidratação dados para uma bebida de 0,3 litro de água, usando sua fonte de dados.

val hydration = DataPoint.builder(hydrationSource)
    .setTimestamp(timestamp, TimeUnit.MILLISECONDS)
    .setField(FIELD_VOLUME, 0.3f)
    .build()

REST

Neste exemplo, mostramos como adicionar dados de hidratação usando seus dados fonte.

Método HTTP

PATCH

Request URL

https://www.googleapis.com/fitness/v1/users/me/dataSources/raw:com.google.hydration:407408718192:HydrationSource/datasets/1275753581000000000-1275753581000000000

Corpo da solicitação

{
 "minStartTimeNs": 1275753581000000000,
 "maxEndTimeNs": 1275753581000000000,
 "dataSourceId": "raw:com.google.hydration:407408718192:HydrationSource",
 "point": [
  {
   "startTimeNanos": 1275753581000000000,
   "endTimeNanos": 1275753581000000000,
   "dataTypeName": "com.google.hydration",
   "value": [
    {
     "fpVal": 0.3
    }
   ]
  }
 ]
}

Resposta

Se o ponto de dados tiver sido criado corretamente, você vai receber uma solicitação HTTP 200 OK código de status da resposta. O corpo da resposta contém uma representação JSON no conjunto de dados.

Comando CURL

$ curl --header "Authorization: Bearer ya29.yourtokenvalue" --request PATCH \
  --header "Content-Type: application/json;encoding=utf-8" --data @hydration-data.json \
  https://www.googleapis.com/fitness/v1/users/me/dataSources/raw:com.google.hydration:407408718192:HydrationSource/datasets/1275753581000000000-1275753581000000000