Spesifikasi API

Bagian Spesifikasi API memberikan ringkasan mendetail tentang komponen teknis yang penting untuk berintegrasi dengan platform, termasuk cakupan otorisasi, definisi jenis data, dan struktur endpoint. API ini merupakan evolusi strategis dari Fitbit Web API lama, yang dibangun ulang di infrastruktur modern untuk memastikan pengalaman developer yang lebih stabil dan konsisten.

Cakupan

Anda harus memperbarui permintaan otorisasi untuk menggunakan cakupan Google Health API. Cakupan menentukan apakah aplikasi Anda mendukung operasi baca atau tulis. Jangan gunakan cakupan yang tidak diperlukan untuk aplikasi Anda. Anda dapat menambahkan lebih banyak cakupan nanti jika desain aplikasi Anda berubah.

Cakupan Google Health API adalah URL HTTP yang diawali dengan https://www.googleapis.com/auth/googlehealth.{scope}. Misalnya, https://www.googleapis.com/auth/googlehealth.activity_and_fitness.writeonly.

Pemetaan cakupan

Berikut cara cakupan Fitbit Web API dipetakan ke cakupan Google Health API:

Tabel: Pemetaan cakupan Fitbit Web API ke Google Health API
Cakupan Fitbit Web API Cakupan Google Health API
aktivitas .activity_and_fitness.readonly
.activity_and_fitness.writeonly
blood_glucose .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
cardio_fitness .activity_and_fitness.readonly
.activity_and_fitness.writeonly
elektrokardiogram .ecg.readonly
detak jantung .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
irregular_rhythm_notifications .irn.readonly
lokasi .location.readonly
gizi .nutrition.readonly
.nutrition.writeonly
oxygen_saturation .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
profil .profile.readonly
.profile.writeonly
respiratory_rate .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
setelan .settings.readonly
.settings.writeonly
sleep .sleep.readonly
.sleep.writeonly
suhu .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
bobot .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly

Jenis data

Berikut daftar jenis data Google Health API dan cara pemetaannya ke Fitbit Web API.

Tabel: Pemetaan jenis data Fitbit Web API ke Google Health API
Jenis Data Fitbit Web API Jenis Data Google Health API
  dataType
Kalori Aktivitas Energi Aktif yang Terbakar
  active-energy-burned
Menit Zona Aktif Menit Zona Aktif
  active-zone-minutes
Berisi perubahan pada tingkat aktivitas pengguna Tingkat Aktivitas
  activity-level
Elevasi Ketinggian
  altitude
Gula Darah Glukosa Darah
  blood-glucose
Lemak tubuh Lemak Tubuh
  body-fat
caloriesOut di setiap zona detak jantung Kalori dalam Zona Detak Jantung
  calories-in-heart-rate-zone
Suhu (Inti) Suhu Tubuh Inti
  core-body-temperature
Ringkasan HRV Variabilitas Detak Jantung Harian
  daily-heart-rate-variability
Ringkasan SpO2 Saturasi Oksigen Harian
  daily-oxygen-saturation
Detak jantung saat istirahat Detak Jantung Saat Istirahat Harian
  daily-resting-heart-rate
Suhu kulit Turunan Suhu Tidur Harian
  daily-sleep-temperature-derivations
Jarak Jarak
  distance
Elektrokardiogram (EKG) Elektrokardiogram (EKG)
  electrocardiogram
Aktivitas yang direkam Exercise
  exercise
Lantai Lantai
  floors
Makanan Makanan
  food
Satuan Pengukuran Makanan Satuan Ukur Makanan
  food-measurement-unit
Detak Jantung Detak Jantung
  heart-rate
HRV Intrahari Variabilitas Detak Jantung
  heart-rate-variability
Notifikasi Irama Tidak Teratur (IRN) Notifikasi Irama Tidak Teratur
  irregular-rhythm-notification
Catatan Makanan Log Nutrisi
  nutrition-log
SpO2 Intrahari Saturasi Oksigen
  oxygen-saturation
Nilai VO2 Maks saat pengguna berlari VO2 Maks Lari
  run-vo2-max
Deret waktu aktivitas dalam menit tidak bergerak Periode Tidak Aktif
  sedentary-period
Tidur Tidur
  sleep
Langkah Langkah-langkah
  steps
Deret waktu aktivitas gaya renang Data Panjang Kolam
  swim-lengths-data
Aktivitas caloriesOut Total Kalori
  total-calories
Nilai VO2 Maks VO2 Maks
  vo2-max
Berat Berat
  weight

Endpoint

Endpoint REST mengadopsi sintaksis yang konsisten untuk semua jenis data.

  • Service Endpoint: URL HTTP dasar berubah menjadi https://health.googleapis.com.
  • Sintaksis Endpoint: Google Health API mendukung sejumlah kecil endpoint, yang dapat digunakan oleh sebagian besar jenis data yang didukung. Hal ini memberikan sintaksis yang konsisten untuk semua jenis data dan membuat endpoint lebih mudah digunakan.
  • ID Pengguna: ID pengguna atau me harus ditentukan dalam sintaksis endpoint. Saat menggunakan saya, ID pengguna disimpulkan dari token akses.

Contoh: Berikut adalah contoh endpoint GET Profile yang dipanggil menggunakan Google Health API

GET https://health.googleapis.com/v4/users/me/profile

Pemetaan endpoint

Lihat tabel jenis data Google Health API untuk mengetahui daftar jenis data yang tersedia dan metode API yang didukungnya.

Jenis Endpoint Fitbit Web API Google Health API
GET (Log | Ringkasan | Ringkasan Harian) tempat Anda meminta data satu hari Metode dailyRollup dengan windowSize = 1 hari
GET (Intraday) jika Anda meminta data terperinci Metode list
GET (Deret Waktu) menurut Tanggal atau Interval Metode rollUp atau dailyRollUp yang mencakup rentang tanggal
GET (Daftar Log) Metode list
MEMBUAT & MEMPERBARUI Log Metode patch
HAPUS Log Metode batchDelete
GET Profile users.getProfile menampilkan informasi spesifik pengguna
users.getSettings menampilkan unit dan zona waktu pengguna
PERBARUI Profil users.updateProfile mengubah informasi spesifik pengguna
users.updateSettings mengubah unit dan zona waktu pengguna
Mendapatkan ID Pengguna users.getIdentity menampilkan ID pengguna Google dan ID pengguna lama Fitbit.
Mendapatkan Perangkat users.pairedDevices menampilkan daftar perangkat yang disambungkan
Membuat Langganan projects.subscribers.subscriptions.create membuat langganan secara manual
Menghapus Langganan projects.subscribers.subscriptions.delete menghapus langganan
Mendapatkan Daftar Langganan projects.subscribers.subscriptions.list mencantumkan semua langganan