Gravar dados de glicose no sangue

Seu aplicativo pode registrar dados de glicose no sangue por meio de gravações no Tipo de dados com.google.blood_glucose. Neste tipo de dados, cada ponto de dados representa um único ponto leitura de glicose no sangue. O ponto de dados contém campos de glicose no sangue concentração, as relações temporais com as refeições e o sono, e a origem dos espécime que foi medido. Todos os campos, exceto concentração de glicose no sangue são opcionais.

Criar uma fonte de dados

Android

Para gravar um ponto de dados de glicose no sangue, crie um novo DataSource de TYPE_BLOOD_GLUCOSE, conforme mostrado neste exemplo:

val bloodGlucoseSource = DataSource.Builder()
    .setDataType(TYPE_BLOOD_GLUCOSE)
    // ...
    .build()

REST

Para gravar um ponto de dados de glicose no sangue, crie uma nova fonte de dados.

Método HTTP

POST

Request URL

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

Corpo da solicitação

{
  "dataStreamName": "BloodGlucose",
  "type": "raw",
  "application": {
    "detailsUrl": "http://example.com",
    "name": "My Example App",
    "version": "1"
  },
  "dataType": {
    "name": "com.google.blood_glucose"
   }
}

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 @blood-glucose-ds.json \
  https://www.googleapis.com/fitness/v1/users/me/dataSources

Como adicionar dados

Android

Para adicionar dados à fonte criada acima, crie um ponto de dados para essas informações que pode ser inserida com a API History:

val bloodGlucose = DataPoint.builder(bloodGlucoseSource)
    .setTimestamp(timestamp, TimeUnit.MILLISECONDS)
    .setField(FIELD_BLOOD_GLUCOSE_LEVEL, 5.0f) // 90 mg/dL
    .setField(FIELD_TEMPORAL_RELATION_TO_MEAL, FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL)
    .setField(FIELD_MEAL_TYPE, MEAL_TYPE_BREAKFAST)
    .setField(FIELD_TEMPORAL_RELATION_TO_SLEEP, TEMPORAL_RELATION_TO_SLEEP_ON_WAKING)
    .setField(FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE, BLOOD_GLUCOSE_SPECIMEN_SOURCE_CAPILLARY_BLOOD)
    .build()

REST

Este exemplo demonstra a adição de dados de glicose no sangue usando o fonte de dados criada acima.

Método HTTP

PATCH

Request URL

https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000

Corpo da solicitação

Para esclarecer, o corpo JSON mostrado abaixo é anotado com comentários, para mostrar o uso de constantes de campo de integridade. Embora a API Fit remova comentários, é recomendamos que você os remova do código, pois o JSON não apoiam oficialmente os comentários.

{
  "minStartTimeNs": 1574159699023000000,
  "maxEndTimeNs": 1574159699023000000,
  "dataSourceId": "datasource.dataStreamId",
  "point": [
    {
      "startTimeNanos": 1574159699023000000,
      "endTimeNanos": 1574159699023000000,
      "dataTypeName": "com.google.blood_glucose",
      "value": [
        {
          // Blood glucose level, 90 mg/dL
          "fpVal": 5.0
        },
        {
          // FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL
          "intVal": 3
        },
        {
          // MEAL_TYPE_BREAKFAST
          "intVal": 1
        },
        {
          // TEMPORAL_RELATION_TO_SLEEP_ON_WAKING
          "intVal": 3
        },
        {
          // BLOOD_GLUCOSE_SPECIMEN_SOURCE_CAPILLARY_BLOOD
          "intVal": 2
        }
      ]
    }
  ]
}

Resposta

Se os dados de glicose no sangue forem adicionados corretamente, a resposta será 200 OK . O corpo da resposta contém uma representação JSON do sangue glicosedata que foi adicionado.

Comando CURL

$ curl --header "Authorization: Bearer ya29.yourtokenvalue --request PATCH \
    --header "Content-Type: application/json;encoding=utf-8" --data @blood-glucose-data.json \
    https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000