Gérer les sources de données

L'API REST Fitness vous permet de créer, d'obtenir et de mettre à jour des sources de données. Une source de données représente une source unique de données de capteurs. Vous utilisez des sources de données pour insérer des données de remise en forme dans le magasin de remise en forme. Vous pouvez également récupérer les données de remise en forme insérées par une source de données particulière.

Les sources de données sont représentées par la ressource Users.dataSources.

Créer une source de données

Cet exemple montre comment créer une source de données nommée "MyDataSource" qui fournit des incréments de nombre de pas.

Méthode HTTP
PUBLIER
Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources
Corps de la requête
{
  "dataStreamName": "MyDataSource",
  "type": "derived",
  "application": {
    "detailsUrl": "http://example.com",
    "name": "Foo Example App",
    "version": "1"
  },
  "dataType": {
    "field": [
      {
        "name": "steps",
        "format": "integer"
      }
    ],
    "name": "com.google.step_count.delta"
  },
  "device": {
    "manufacturer": "Example Manufacturer",
    "model": "ExampleTablet",
    "type": "tablet",
    "uid": "1000001",
    "version": "1.0"
  }
}

Réponse

Si la source de données a bien été créée, la réponse est un code d'état 200 OK. Le corps de la réponse contient une représentation JSON de la source de données, y compris une propriété datasource.dataStreamId que vous pouvez utiliser comme ID de source de données pour les requêtes ultérieures.

Commande curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X POST \
--header "Content-Type: application/json;encoding=utf-8" -d @createds.json \
"https://www.googleapis.com/fitness/v1/users/me/dataSources"

Obtenir une source de données particulière

Cet exemple montre comment récupérer la source de données (&DataDataSource&) que vous avez créée dans l'exemple précédent. Lorsque vous créez une source de données, dataStreamId inclut un identifiant unique (par exemple, 1234567890). Il s'agit du numéro de votre projet de développeur. Il sera identique pour toutes les requêtes effectuées avec ce compte de développeur particulier. Veillez à utiliser dataStreamId à partir de la source de données que vous avez créée.

Méthode HTTP
OBTENIR
Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Corps de la requête
Aucun
Réponse
Si la source de données existe, la réponse est un code d'état 200 OK. Le corps de la réponse contient une représentation JSON de la source de données.
Commande curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X GET 
--header "Content-Type: application/json;encoding=utf-8"
"https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource"

Obtenir des données globales

Cet exemple montre comment interroger une source de données spécifique pour des données agrégées, dans ce cas estimated_steps, qui est la source de données utilisée pour afficher le nombre de pas dans l'application Google Fit. Notez que les horodatages dans le corps de la requête JSON sont exprimés en millisecondes.

Méthode HTTP
PUBLIER
Request URL
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
Corps de la requête
{
  "aggregateBy": [{
    "dataSourceId":
      "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1454284800000,
  "endTimeMillis": 1455062400000
}

Réponse

Si la ou les sources de données existent, la réponse est un code d'état 200 OK. Le corps de la réponse contient une représentation JSON de la source de données.

Commande curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X POST \
--header "Content-Type: application/json;encoding=utf-8" -d @aggregate.json \
"https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate"

Mettre à jour une source de données

Cet exemple montre comment mettre à jour le nom et la version d'un appareil pour une source de données.

Méthode HTTP
METTRE
Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Corps de la requête
{
  "dataStreamId": "derived:com.google.step_count.delta:1234567890:Example Manufacturer:ExampleTablet:1000001:MyDataSource",
  "dataStreamName": "MyDataSource",
  "type": "derived",
  "application": {
    "detailsUrl": "http://example.com",
    "name": "Foo Example App",
    "version": "1"
  },
  "dataType": {
    "field": [
      {
        "name": "steps",
        "format": "integer"
      }
    ],
    "name": "com.google.step_count.delta"
  },
  "device": {
    "manufacturer": "Example Manufacturer",
    "model": "ExampleTablet",
    "type": "tablet",
    "uid": "1000001",
    "version": "2.0"
  }
}

Réponse

Si la source de données est correctement mise à jour, la réponse est un code d'état 200 OK. Le corps de la réponse contient une représentation JSON de la source de données.

Commande curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X PUT \
--header "Content-Type: application/json;encoding=utf-8" -d @updateds.json \
"https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource"

Supprimer une source de données

Cet exemple montre comment supprimer une source de données.

Méthode HTTP
SUPPRIMER
Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Corps de la requête
Aucun
Réponse
Si la source de données a bien été supprimée, la réponse est un code d'état 200 OK. Le corps de la réponse contient une représentation JSON de la source de données qui a été supprimée.
Commande curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X DELETE \
--header "Content-Type: application/json;encoding=utf-8" \
"https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource"