Quản lý nguồn dữ liệu

Fitness REST API cho phép bạn tạo, thu thập và cập nhật các nguồn dữ liệu. Một nguồn dữ liệu đại diện cho một nguồn dữ liệu cảm biến duy nhất. Bạn sử dụng nguồn dữ liệu để chèn dữ liệu thể dục vào bài tập thể dục và bạn có thể truy xuất dữ liệu hoạt động thể dục được chèn bởi một nguồn dữ liệu cụ thể.

Nguồn dữ liệu được biểu thị bằng Users.dataSources nguồn.

Tạo một nguồn dữ liệu

Ví dụ này minh hoạ cách tạo nguồn dữ liệu mới có tên là "MyDataSource" cung cấp số bước tăng.

Phương thức HTTP
SAU KHI TRIỂN KHAI
URL yêu cầu
https://www.googleapis.com/fitness/v1/users/me/dataSources
Nội dung yêu cầu
{
  "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"
  }
}
Phản hồi

Nếu nguồn dữ liệu được tạo thành công, thì phản hồi sẽ có trạng thái 200 OK . Nội dung phản hồi chứa bản trình bày JSON của nguồn dữ liệu, bao gồm datasource.dataStreamId thuộc tính mà bạn có thể sử dụng làm mã nguồn dữ liệu cho các yêu cầu tiếp theo.

Lệnh 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"

Tải một nguồn dữ liệu cụ thể

Ví dụ này minh hoạ cách truy xuất nguồn dữ liệu ("MyDataSource") mà bạn đã tạo trong ví dụ trước. Khi bạn tạo một nguồn dữ liệu mới, dataStreamId bao gồm một mã nhận dạng duy nhất (xuất hiện là "1234567890" trong ví dụ). Đây là số dự án nhà phát triển của bạn và số này cũng sẽ dùng cho tất cả yêu cầu được đưa ra qua tài khoản nhà phát triển cụ thể đó. Hãy nhớ sử dụng dataStreamId trong nguồn dữ liệu mà bạn đã tạo.

Phương thức HTTP
TẢI
URL yêu cầu
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Nội dung yêu cầu
Không có
Phản hồi
Nếu nguồn dữ liệu tồn tại, phản hồi là mã trạng thái 200 OK. Nội dung phản hồi chứa Bản trình bày JSON của nguồn dữ liệu.
Lệnh 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"

Nhận dữ liệu tổng hợp

Ví dụ này minh hoạ cách truy vấn một nguồn dữ liệu cụ thể để có dữ liệu tổng hợp trong trường hợp này là estimated_steps, đây là nguồn dữ liệu dùng để hiển thị số bước trong ứng dụng Google Fit. Xin lưu ý rằng dấu thời gian trong yêu cầu JSON phần nội dung được tính bằng mili giây.

Phương thức HTTP
SAU KHI TRIỂN KHAI
URL yêu cầu
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
Nội dung yêu cầu
{
  "aggregateBy": [{
    "dataSourceId":
      "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1454284800000,
  "endTimeMillis": 1455062400000
}
Phản hồi

Nếu(các) nguồn dữ liệu tồn tại, phản hồi là mã trạng thái 200 OK. Chiến lược phát hành đĩa đơn nội dung phản hồi chứa bản trình bày JSON của nguồn dữ liệu.

Lệnh 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"

Cập nhật một nguồn dữ liệu

Ví dụ này minh hoạ cách cập nhật tên và phiên bản thiết bị cho một dữ liệu nguồn.

Phương thức HTTP
ĐẶT
URL yêu cầu
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Nội dung yêu cầu
{
  "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"
  }
}
Phản hồi

Nếu nguồn dữ liệu được cập nhật thành công, phản hồi sẽ có trạng thái 200 OK . Nội dung phản hồi chứa bản trình bày JSON của nguồn dữ liệu.

Lệnh 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"

Xoá nguồn dữ liệu

Ví dụ sau minh hoạ cách xoá một nguồn dữ liệu.

Phương thức HTTP
XOÁ
URL yêu cầu
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Nội dung yêu cầu
Không có
Phản hồi
Nếu nguồn dữ liệu được xoá thành công, thì câu trả lời sẽ có trạng thái 200 OK . Nội dung phản hồi chứa bản trình bày JSON của nguồn dữ liệu đã bị xoá.
Lệnh 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"