Mengelola Sumber Data

Dengan REST API Fitness, Anda dapat membuat, mendapatkan, dan memperbarui sumber data. Sumber data mewakili sumber data sensor yang unik. Anda menggunakan sumber data untuk menyisipkan data kebugaran ke dalam 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 memberikan peningkatan jumlah langkah.

Metode HTTP
POSTING
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"
  }
}

Tanggapan

Jika sumber data berhasil dibuat, responsnya adalah kode status 200 OK. Isi respons memuat 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 pada contoh sebelumnya. Saat Anda membuat sumber data baru, dataStreamId berisi ID unik (ditampilkan sebagai "1234567890" dalam contoh ini). Ini adalah nomor project developer Anda, dan nomor tersebut akan sama untuk semua permintaan yang dibuat menggunakan akun developer tersebut. Pastikan untuk menggunakan dataStreamId dari sumber data yang Anda buat.

Metode HTTP
DAPATKAN
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
Tanggapan
Jika sumber data ada, responsnya adalah kode status 200 OK. Isi respons memuat 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 untuk 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 adalah dalam milidetik.

Metode HTTP
POSTING
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
}

Tanggapan

Jika sumber data ada, responsnya adalah kode status 200 OK. Isi respons memuat 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 memperbarui 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"
  }
}

Tanggapan

Jika sumber data berhasil diperbarui, responsnya adalah kode status 200 OK. Isi respons memuat 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
Tanggapan
Jika sumber data berhasil dihapus, responsnya adalah kode status 200 OK. Isi respons memuat representasi JSON dari sumber data yang 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"