Zarządzanie źródłami danych

Interfejs Fitness API typu REST umożliwia tworzenie, uzyskiwanie i aktualizowanie źródeł danych. Źródło danych reprezentuje To wyjątkowe źródło danych z czujników. Korzystasz ze źródeł danych, aby wstawiać dane fitness sklepu, a także pobierać dane fitness wstawione przez określone źródło danych.

Źródła danych są oznaczone symbolem Users.dataSources .

Utwórz źródło danych

Ten przykład pokazuje, jak utworzyć nowe źródło danych o nazwie „MojeDataŹródło” który zwiększa liczbę kroków.

Metoda HTTP
OPUBLIKUJ
Adres URL żądania
https://www.googleapis.com/fitness/v1/users/me/dataSources
Treść żądania
{
  "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"
  }
}
Odpowiedź

Jeśli źródło danych zostało utworzone, odpowiedź ma stan 200 OK w kodzie. Treść odpowiedzi zawiera reprezentację źródła danych w formacie JSON, w tym datasource.dataStreamId możesz używać jej jako identyfikatora źródła danych w kolejnych żądaniach.

Polecenie zwijania
$ 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"

Pobieranie określonego źródła danych

Ten przykład pokazuje, jak pobrać źródło danych („MyDataSource”) utworzony w poprzednim przykładzie. Gdy tworzysz nowe źródło danych, dataStreamId zawiera unikalny identyfikator (wyświetlany jako „1234567890” w tych ). To jest numer Twojego projektu programisty, i będzie taki sam w przypadku wszystkie żądania przesłane z użyciem danego konta dewelopera. Pamiętaj, aby użyć atrybutu dataStreamId z utworzonego przez Ciebie źródła danych.

Metoda HTTP
POBIERZ
Adres URL żądania
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Treść żądania
Brak
Odpowiedź
Jeśli źródło danych istnieje, odpowiedź ma kod stanu 200 OK. Treść odpowiedzi zawiera Format JSON źródła danych.
Polecenie zwijania
$ 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"

Pobieranie danych zbiorczych

Ten przykład pokazuje, jak wysłać zapytanie do konkretnego źródła danych w celu zagregowania danych danych (w tym przypadku estimated_steps), które jest źródłem danych używanym do wyświetlania w aplikacji Google Fit. Zwróć uwagę, że sygnatury czasowe w żądaniu JSON treść jest w milisekundach.

Metoda HTTP
OPUBLIKUJ
Adres URL żądania
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
Treść żądania
{
  "aggregateBy": [{
    "dataSourceId":
      "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1454284800000,
  "endTimeMillis": 1455062400000
}
Odpowiedź

Jeśli źródła danych istnieją, odpowiedź ma kod stanu 200 OK. treść odpowiedzi zawiera reprezentację źródła danych w formacie JSON.

Polecenie zwijania
$ 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"

Aktualizowanie źródła danych

Ten przykład pokazuje, jak zaktualizować nazwę i wersję urządzenia dla danych źródła.

Metoda HTTP
UDERZENIE
Adres URL żądania
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Treść żądania
{
  "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"
  }
}
Odpowiedź

Jeśli źródło danych zostało zaktualizowane, odpowiedź ma stan 200 OK w kodzie. Treść odpowiedzi zawiera reprezentację źródła danych w formacie JSON.

Polecenie zwijania
$ 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"

Usuwanie źródła danych

Ten przykład pokazuje, jak usunąć źródło danych.

Metoda HTTP
USUŃ
Adres URL żądania
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Treść żądania
Brak
Odpowiedź
Jeśli źródło danych zostało usunięte, odpowiedź ma stan 200 OK w kodzie. Treść odpowiedzi zawiera reprezentację źródła danych w formacie JSON, która została usunięta.
Polecenie zwijania
$ 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"