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:
- 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. - Obtenez la liste des aliments consommés à partir de chaque source de données.
- (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