管理資料來源

Fitness REST API 可讓您建立、取得及更新資料來源。資料來源是指 是獨一無二的感應器資料來源您會使用資料來源將健身資料插入健身類別 儲存,您可以擷取由特定資料來源插入的健身資料。

資料來源會以 Users.dataSources 表示 資源。

建立資料來源

本例說明如何建立名為「MyDataSource」的新資料來源 提供遞增的步數。

HTTP 方法
發布
要求網址
https://www.googleapis.com/fitness/v1/users/me/dataSources
要求主體
{
  "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"
  }
}
回應

如果資料來源建立成功,回應會顯示為 200 OK 狀態 再也不是件繁重乏味的工作回應主體包含資料來源的 JSON 表示法, 包括 datasource.dataStreamId 資源,可做為後續要求的資料來源 ID。

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"

取得特定資料來源

本例示範如何擷取資料來源 (「MyDataSource」) 您在上一個範例中建立的 Pod您建立新的資料來源時 dataStreamId 包含專屬 ID (在清單中顯示為「1234567890」) 範例)。這是您的開發人員專案編號。對於 。請務必使用 dataStreamId

HTTP 方法
取得
要求網址
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
要求主體
回應
如果資料來源存在,回應會是 200 OK 狀態碼。回應主體包含 資料來源的 JSON 表示法。
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"

取得匯總資料

本範例說明如何查詢特定資料來源以進行匯總 資料,在本例中為 estimated_steps,也就是用來顯示 Google Fit 應用程式中的步數。請注意 JSON 要求中的時間戳記 均以毫秒為單位

HTTP 方法
發布
要求網址
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
要求主體
{
  "aggregateBy": [{
    "dataSourceId":
      "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1454284800000,
  "endTimeMillis": 1455062400000
}
回應

如果資料來源存在,回應會是 200 OK 狀態碼。 回應主體包含資料來源的 JSON 表示法。

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"

更新資料來源

這個範例說明如何更新資料的名稱和裝置版本 來源。

HTTP 方法
插入
要求網址
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
要求主體
{
  "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"
  }
}
回應

如果資料來源更新成功,回應就會顯示 200 OK 狀態 再也不是件繁重乏味的工作回應主體包含資料來源的 JSON 表示法。

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"

刪除資料來源

這個範例說明如何刪除資料來源。

HTTP 方法
刪除
要求網址
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
要求主體
回應
如果資料來源成功刪除,回應會顯示為 200 OK 狀態 再也不是件繁重乏味的工作回應主體包含 JSON 表示法的資料來源 。
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"