Gestione delle origini dati

L'API REST Fitness consente di creare, ottenere e aggiornare le origini dati. Un'origine dati rappresenta una fonte unica di dati dei sensori. Puoi utilizzare le origini dati per inserire dati sull'attività fisica per recuperare i dati sull'attività fisica inseriti da una determinata origine dati.

Le origini dati sono rappresentate dalla classe Users.dataSources risorsa.

Creare un'origine dati

Questo esempio mostra come creare una nuova origine dati denominata "MyDataSource" che fornisce incrementi nel conteggio dei passi.

Metodo HTTP
PUBBLICA
URL richiesta
https://www.googleapis.com/fitness/v1/users/me/dataSources
Corpo della richiesta
{
  "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"
  }
}
Risposta

Se l'origine dati viene creata correttamente, la risposta è uno stato 200 OK le API nel tuo codice. Il corpo della risposta contiene una rappresentazione JSON dell'origine dati, inclusa una datasource.dataStreamId che puoi utilizzare come ID origine dati per le richieste successive.

Comando 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"

Recuperare una determinata origine dati

Questo esempio mostra come recuperare l'origine dati ("MyDataSource") creato nell'esempio precedente. Quando crei una nuova origine dati, dataStreamId include un identificatore univoco (indicato come "1234567890" in questi esempi). Questo è il numero del tuo progetto sviluppatore, e sarà lo stesso per tutte le richieste effettuate utilizzando quel particolare account sviluppatore. Assicurati di utilizzare dataStreamId dall'origine dati che hai creato.

Metodo HTTP
SCARICA
URL richiesta
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Corpo della richiesta
Nessuna
Risposta
Se l'origine dati esiste, la risposta è un codice di stato 200 OK. Il corpo della risposta contiene un parametro Rappresentazione JSON dell'origine dati.
Comando 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"

Ottenere dati aggregati

Questo esempio mostra come eseguire query su un'origine dati specifica per di dati, in questo caso estimated_steps, che è l'origine dati utilizzata per mostrare numero di passi nell'app Google Fit. Tieni presente che i timestamp nella richiesta JSON sono in millisecondi.

Metodo HTTP
PUBBLICA
URL richiesta
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
Corpo della richiesta
{
  "aggregateBy": [{
    "dataSourceId":
      "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1454284800000,
  "endTimeMillis": 1455062400000
}
Risposta

Se le origini dati esistono, la risposta è un codice di stato 200 OK. La il corpo della risposta contiene una rappresentazione JSON dell'origine dati.

Comando 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"

Aggiornare un'origine dati

Questo esempio mostra come aggiornare il nome e la versione del dispositivo per un dato sorgente.

Metodo HTTP
PUT
URL richiesta
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Corpo della richiesta
{
  "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"
  }
}
Risposta

Se l'origine dati viene aggiornata correttamente, la risposta è uno stato 200 OK le API nel tuo codice. Il corpo della risposta contiene una rappresentazione JSON dell'origine dati.

Comando 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"

Eliminare un'origine dati

Questo esempio mostra come eliminare un'origine dati.

Metodo HTTP
ELIMINA
URL richiesta
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Corpo della richiesta
Nessuna
Risposta
Se l'origine dati viene eliminata correttamente, la risposta è uno stato 200 OK le API nel tuo codice. Il corpo della risposta contiene una rappresentazione JSON dell'origine dati che è stata eliminata.
Comando 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"