Mengelola Sumber Data

Kebugaran REST API memungkinkan Anda membuat, mendapatkan, dan memperbarui sumber data. Sumber data mewakili sumber unik data sensor. Anda menggunakan sumber data untuk memasukkan data kebugaran ke penyimpanan kebugaran, dan Anda dapat mengambil data kebugaran yang disisipkan oleh sumber data tertentu.

Sumber data direpresentasikan oleh resource Users.dataSources.

Membuat sumber data

Contoh ini menunjukkan cara membuat sumber data baru bernama "MyDataSource" yang menyediakan penambahan jumlah langkah.

Metode HTTP
POST
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataSources
Isi permintaan
{
  "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"
  }
}

Respons

Jika sumber data berhasil dibuat, responsnya adalah kode status 200 OK. Isi respons berisi representasi JSON dari sumber data, termasuk properti datasource.dataStreamId yang dapat Anda gunakan sebagai ID sumber data untuk permintaan berikutnya.

Perintah 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"

Mendapatkan sumber data tertentu

Contoh ini menunjukkan cara mengambil sumber data ("MyDataSource") yang Anda buat di contoh sebelumnya. Saat Anda membuat sumber data baru, dataStreamId akan menyertakan ID unik (ditampilkan sebagai "1234567890" dalam contoh ini). Ini adalah nomor project developer Anda, dan akan sama untuk semua permintaan yang dibuat menggunakan akun developer tertentu tersebut. Pastikan untuk menggunakan dataStreamId dari sumber data yang Anda buat.

Metode HTTP
GET
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Isi permintaan
Tidak ada
Respons
Jika sumber data ada, responsnya adalah kode status 200 OK. Isi respons berisi representasi JSON dari sumber data.
Perintah 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"

Mendapatkan data gabungan

Contoh ini menunjukkan cara membuat kueri sumber data tertentu untuk data gabungan, dalam hal ini estimated_steps, yang merupakan sumber data yang digunakan untuk menampilkan jumlah langkah di aplikasi Google Fit. Perhatikan bahwa stempel waktu dalam isi permintaan JSON dalam milidetik.

Metode HTTP
POST
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
Isi permintaan
{
  "aggregateBy": [{
    "dataSourceId":
      "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1454284800000,
  "endTimeMillis": 1455062400000
}

Respons

Jika sumber data ada, responsnya adalah kode status 200 OK. Isi respons berisi representasi JSON dari sumber data.

Perintah 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"

Memperbarui sumber data

Contoh ini menunjukkan cara mengupdate nama dan versi perangkat untuk sumber data.

Metode HTTP
PUT
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Isi permintaan
{
  "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"
  }
}

Respons

Jika sumber data berhasil diperbarui, responsnya adalah kode status 200 OK. Isi respons berisi representasi JSON dari sumber data.

Perintah 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"

Menghapus sumber data

Contoh ini menunjukkan cara menghapus sumber data.

Metode HTTP
HAPUS
URL Permintaan
https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
Isi permintaan
Tidak ada
Respons
Jika sumber data berhasil dihapus, responsnya adalah kode status 200 OK. Isi respons berisi representasi JSON dari sumber data yang telah dihapus.
Perintah 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"