A API REST do Google Fitness permite criar, receber e atualizar fontes de dados. Uma fonte de dados representa uma fonte única de dados do sensor. Use fontes de dados para inserir dados de condicionamento físico no armazenamento de dados de condicionamento físico e recupere os dados de condicionamento físico inseridos por uma fonte de dados específica.
As fontes de dados são representadas pelo recurso
Users.dataSources
.
Criar uma fonte de dados
Este exemplo demonstra como criar uma nova fonte de dados denominada "MyDataSource" que fornece incrementos de contagem de passos.
- Método HTTP
- POSTAR
- Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources
- Corpo da solicitação
{ "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" } }
- Resposta
Se a fonte de dados for criada com sucesso, a resposta será um código de status
200 OK
. O corpo da resposta contém uma representação JSON da fonte de dados, incluindo uma propriedadedatasource.dataStreamId
que pode ser usada como ID da fonte de dados para solicitações subsequentes.- 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"
Receber uma fonte de dados específica
Neste exemplo, demonstramos como recuperar a fonte de dados ("MyDataSource")
criada no exemplo anterior. Quando você cria uma nova fonte de dados,
o dataStreamId
inclui um identificador exclusivo (mostrado como "quot;1234567890" nestes
exemplos). Esse é o número do seu projeto de desenvolvedor e será o mesmo para
todas as solicitações feitas com essa conta de desenvolvedor específica. Use o
dataStreamId
da fonte de dados que você criou.
- Método HTTP
- CONQUISTE
- Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
- Corpo da solicitação
- Nenhum
- Resposta
- Se houver uma fonte de dados, a resposta será um código de status
200 OK
. O corpo da resposta contém uma representação JSON da fonte de dados. - 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"
Ver dados agregados
Este exemplo demonstra como consultar uma fonte de dados específica para dados
agregados. Neste caso, estimated_steps
, que é a fonte de dados usada para mostrar
a contagem de passos no app Google Fit. Os carimbos de data/hora no corpo da solicitação JSON
estão em milissegundos.
- Método HTTP
- POSTAR
- Request URL
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
- Corpo da solicitação
{ "aggregateBy": [{ "dataSourceId": "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps" }], "bucketByTime": { "durationMillis": 86400000 }, "startTimeMillis": 1454284800000, "endTimeMillis": 1455062400000 }
- Resposta
Se houver uma ou mais fontes de dados, a resposta será um código de status
200 OK
. O corpo da resposta contém uma representação JSON da fonte de dados.- 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"
Atualizar uma fonte de dados
Este exemplo demonstra como atualizar o nome e a versão do dispositivo de uma fonte de dados.
- Método HTTP
- PUTAR
- Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
- Corpo da solicitação
{ "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" } }
- Resposta
Se a fonte de dados for atualizada, a resposta será um código de status
200 OK
. O corpo da resposta inclui uma representação JSON da fonte de dados.- 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"
Excluir uma fonte de dados
Neste exemplo, demonstramos como excluir uma fonte de dados.
- Método HTTP
- EXCLUIR
- Request URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
- Corpo da solicitação
- Nenhum
- Resposta
- Se a fonte de dados for excluída, a resposta será um código de status
200 OK
. O corpo da resposta contém uma representação JSON da fonte de dados que foi excluída. - 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"