Lire les aliments consommés

Android

Votre application peut obtenir la liste des aliments consommés au cours d'une période spécifiée en créant une requête de lecture de données et en interrogeant DataType.TYPE_NUTRITION, comme illustré dans l'exemple suivant :

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

Pour en savoir plus sur la lecture des données, consultez Utiliser l'historique d'activité.

REST

La récupération d'une liste d'aliments consommés à l'aide de l'API REST s'effectue en trois étapes :

  1. Récupérez la liste des sources de données disponibles pour le type de données com.google.nutrition. Vous pouvez également utiliser directement les détails de la source de données à l'étape suivante si vous les connaissez déjà.
  2. Obtenez la liste des aliments consommés à partir de chaque source de données.
  3. (S'il existe plusieurs sources de données) combinez les listes d'aliments dans l'application cliente.

Récupérer une liste de sources de données alimentaires

Étant donné que seul le datasource.dataStreamId est requis pour chaque source de données, vous pouvez utiliser un masque de champ, comme illustré ici, pour limiter la réponse à cette seule propriété.

Méthode HTTP

GET

URL de la requête

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

Réponse

Si la requête aboutit, la réponse est un code d'état 200 OK. Le corps de la réponse contient une liste JSON, chaque élément de la liste correspondant à une source de données.

Exemple :

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

Commande 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

Obtenir la liste des aliments consommés à partir d'une source de données

Utilisez dataSource.dataStreamId de chacune des sources de l'étape 1 pour récupérer les listes d'aliments consommés.

Le datasetId correspond au début et à la fin de la période requise, en nanosecondes comme défini dans la ressource d'ensemble de données.

Par exemple, 1546300800000000000-1546387200000000000 représente le datasetId pour la période allant du 1er janvier 2019 à 00:00:00 UTC au 2 janvier 2019 à 00:00:00.

Méthode HTTP

GET

URL de la requête

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

Réponse

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

Commande 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