Lire les aliments consommés

Android

Votre application peut obtenir la liste des aliments consommés sur une période donné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 l'article Travailler avec l'historique de remise en forme.

REST

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

  1. Récupère la liste des sources de données disponibles pour le type de données com.google.nutrition. Si les détails de la source de données sont déjà connus, vous pouvez les utiliser directement à l'étape suivante.
  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 datasource.dataStreamId est requis pour chaque source de données, un masque de champ peut être utilisé, comme indiqué ici, pour limiter la réponse à cette propriété uniquement.

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)

Response (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 d'une source de données

Utilisez ensuite les dataSource.dataStreamId de chacune des sources à l'étape 1 pour récupérer la ou les liste(s) des aliments consommés.

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 la plage datasetId du 01 Jan 2019 00:00:00 UTC au 02 Jan 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

Response (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