Agregar datos de hidratación

Para agregar datos de hidratación a Google Fit, crea una fuente de datos y usa el com.google.hydration tipo de datos. Cada dato representa el volumen, en litros, que consumió un usuario como parte de una sola bebida. Usa un número de punto flotante para especificar el volumen. Nota: La marca de tiempo indica cuándo se consumió la bebida. Como com.google.hydration es un tipo de datos instantáneo, la hora de inicio y de finalización deben ser las mismas.

Crea una fuente de datos

Android

Usa DataSource.Builder para crear una fuente de datos nueva. Por ejemplo, hydrationSource.

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

REST

Llama a la API de REST para crear una fuente de datos nueva. Por ejemplo, HydrationSource.

Método HTTP

POST

Request URL (URL de solicitud)

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

Cuerpo de la solicitud

{
  "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
     }
    ]
   }
}

Respuesta

Si la fuente de datos se crea correctamente, la respuesta es un código de estado 200 OK. El cuerpo de la respuesta contiene una representación JSON de la fuente de datos, incluida una propiedad datasource.dataStreamId que puedes usar como el ID de la fuente de datos para solicitudes posteriores.

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

Agrega datos de hidratación

Android

En este ejemplo, se muestra cómo crear un dato nuevo y agregar datos de hidratación para una bebida de agua de 0.3 litros con tu fuente de datos.

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

REST

En este ejemplo, se muestra cómo agregar datos de hidratación con tu fuente de datos.

Método HTTP

PATCH

Request URL (URL de solicitud)

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

Cuerpo de la solicitud

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

Respuesta

Si el dato se creó correctamente, obtendrás un 200 OK HTTP código de estado de respuesta. El cuerpo de la respuesta contiene una representación JSON del conjunto de datos.

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