Users.dataSources: create

Tạo một nguồn dữ liệu mới là duy nhất trên tất cả các nguồn dữ liệu thuộc về người dùng này.

Nguồn dữ liệu là nguồn dữ liệu cảm biến duy nhất. Các nguồn dữ liệu có thể hiển thị dữ liệu thô từ các cảm biến phần cứng trên thiết bị cục bộ hoặc thiết bị đồng hành. Các đối tượng này cũng có thể hiển thị dữ liệu phát sinh, được tạo bằng cách chuyển đổi hoặc hợp nhất các nguồn dữ liệu khác. Có thể tồn tại nhiều nguồn dữ liệu cho cùng một loại dữ liệu. Mọi điểm dữ liệu trong mỗi tập dữ liệu được chèn vào hoặc đọc từ API Thể dục đều có một nguồn dữ liệu được liên kết.

Mỗi nguồn dữ liệu tạo ra một luồng nội dung cập nhật tập dữ liệu riêng biệt, với một giá trị nhận dạng nguồn dữ liệu duy nhất. Không phải mọi thay đổi đối với nguồn dữ liệu đều ảnh hưởng đến mã luồng dữ liệu. Do đó, dữ liệu do các phiên bản cập nhật của cùng một ứng dụng/thiết bị thu thập vẫn có thể được coi là thuộc về cùng một nguồn dữ liệu.

Nguồn dữ liệu được xác định bằng một chuỗi do máy chủ tạo, dựa trên nội dung của nguồn đang được tạo. Bạn không nên đặt trường dataStreamId khi gọi phương thức này. Hệ thống sẽ tự động tạo báo cáo này cho máy chủ theo định dạng chính xác. Nếu bạn đặt dataStreamId, thì đối tượng này phải khớp với định dạng mà máy chủ sẽ tạo. Định dạng này là sự kết hợp của một số trường từ nguồn dữ liệu và có thứ tự cụ thể. Nếu không khớp, yêu cầu sẽ không thành công kèm theo lỗi.

Việc chỉ định một DataType không phải là một kiểu đã biết (bắt đầu với "com.google.") sẽ tạo một DataSource có loại dữ liệu tuỳ chỉnh. Chỉ ứng dụng tạo ra các loại dữ liệu đó mới đọc được các loại dữ liệu tuỳ chỉnh đó. Các kiểu dữ liệu tuỳ chỉnh không dùng nữa; hãy sử dụng các kiểu dữ liệu chuẩn.

Ngoài các trường nguồn dữ liệu có trong mã nguồn dữ liệu, số dự án nhà phát triển đã được xác thực khi tạo nguồn dữ liệu cũng được đưa vào. Số dự án của nhà phát triển này bị làm rối mã nguồn khi được bất kỳ nhà phát triển nào khác đọc các loại dữ liệu công khai. Thử ngay.

Yêu cầu

Yêu cầu HTTP

POST https://www.googleapis.com/fitness/v1/users/userId/dataSources

Thông số

Tên thông số Giá trị Nội dung mô tả
Tham số đường dẫn
userId string Tạo nguồn dữ liệu cho người được xác định. Sử dụng me để cho biết người dùng đã xác thực. Tại thời điểm này, hệ thống chỉ hỗ trợ me.

Ủy quyền

Yêu cầu này cần được uỷ quyền với ít nhất một trong các phạm vi sau:

Phạm vi
https://www.googleapis.com/auth/fitness.activity.write
https://www.googleapis.com/auth/fitness.location.write
https://www.googleapis.com/auth/fitness.body.write
https://www.googleapis.com/auth/fitness.nutrition.write
https://www.googleapis.com/auth/fitness.blood_pressure.write
https://www.googleapis.com/auth/fitness.blood_glucose.write
https://www.googleapis.com/auth/fitness.oxygen_saturation.write
https://www.googleapis.com/auth/fitness.body_temperature.write
https://www.googleapis.com/auth/fitness.reproductive_health.write

Để biết thêm thông tin, hãy xem trang xác thực và uỷ quyền.

Nội dung yêu cầu

Trong nội dung yêu cầu, hãy cung cấp tài nguyên Users.dataSources với các thuộc tính sau:

Tên tài sản Giá trị Nội dung mô tả Ghi chú
Thuộc tính bắt buộc
application nested object Thông tin về một ứng dụng cấp dữ liệu cảm biến vào nền tảng.
application.name string Tên của ứng dụng này. Đây là tên bắt buộc đối với các khách hàng REST, nhưng chúng tôi không áp dụng tên duy nhất cho tên này. Việc này được cung cấp để thuận tiện cho các nhà phát triển khác muốn xác định REST nào đã tạo Ứng dụng hoặc Nguồn dữ liệu.
dataType nested object Loại dữ liệu xác định giản đồ cho luồng dữ liệu được thu thập, chèn vào hoặc truy vấn từ Fitness API.
dataType.field[] list Một trường đại diện cho một phương diện của một loại dữ liệu.
dataType.field[].format string Các định dạng được hỗ trợ khác nhau cho mỗi trường trong một loại dữ liệu.

Các giá trị có thể chấp nhận là:
  • "blob"
  • "floatList"
  • "floatPoint"
  • "integer"
  • "integerList"
  • "map"
  • "string"
dataType.field[].name string Xác định tên và định dạng của dữ liệu. Không giống như tên loại dữ liệu, tên trường không được đặt tên trong vùng chứa tên mà chỉ cần phải là duy nhất trong loại dữ liệu.
dataType.name string Mỗi loại dữ liệu có một tên duy nhất trong không gian tên. Tất cả các loại dữ liệu trong vùng chứa tên com.google đều được chia sẻ như một phần của nền tảng.
device nested object Hình ảnh minh hoạ một thiết bị tích hợp (chẳng hạn như điện thoại hoặc thiết bị đeo) có thể giữ cảm biến.
device.manufacturer string Nhà sản xuất sản phẩm/phần cứng.
device.model string Tên mẫu mà người dùng cuối nhìn thấy cho thiết bị.
device.type string Hằng số biểu thị loại thiết bị.

Các giá trị có thể chấp nhận là:
  • "chestStrap"
  • "headMounted"
  • "phone"
  • "scale"
  • "smartDisplay"
  • "tablet"
  • "unknown"
  • "watch"
device.uid string Số sê-ri hoặc mã nhận dạng duy nhất khác của phần cứng. Trường này bị làm rối mã nguồn khi được đọc bởi bất kỳ ứng dụng REST hoặc Android nào không tạo nguồn dữ liệu. Chỉ người tạo nguồn dữ liệu mới thấy trường uid ở dạng rõ ràng và bình thường.

Việc làm rối mã nguồn sẽ duy trì đẳng thức; tức là khi có hai mã nhận dạng, nếu id1 == id2, làm rối mã nguồn(id1) == bị làm rối mã nguồn(id2).

device.version string Chuỗi phiên bản cho phần cứng/phần mềm của thiết bị.
type string Hằng số mô tả loại nguồn dữ liệu này. Cho biết nguồn dữ liệu này tạo ra dữ liệu thô hay dữ liệu phái sinh.

Các giá trị có thể chấp nhận là:
  • "derived"
  • "raw"

Phản hồi

Nếu thành công, phương thức này sẽ trả về một tài nguyên Users.dataSources trong nội dung phản hồi.

Hãy dùng thử!

Sử dụng APIs Explorer bên dưới để gọi phương thức này trên dữ liệu trực tiếp và xem phản hồi.