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 mewakili evolusi strategis dari Fitbit Web API lama, yang dibangun kembali 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. Ikuti petunjuk penerapan cakupan, yang menentukan hanya meminta cakupan yang diperlukan, mengonfigurasi akses tulis hanya saat mengirim data, dan menangani izin sebagian dengan baik.

Cakupan Google Health API adalah URL HTTP yang dimulai 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
electrocardiogram .ecg.readonly
heartrate .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
irregular_rhythm_notifications .irn.readonly
location .location.readonly
nutrition .nutrition.readonly
.nutrition.writeonly
oxygen_saturation .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
profile .profile.readonly
.profile.writeonly
respiratory_rate .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
settings .settings.readonly
.settings.writeonly
sleep .sleep.readonly
.sleep.writeonly
temperature .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly
weight .health_metrics_and_measurements.readonly
.health_metrics_and_measurements.writeonly

Jenis data

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

Untuk mengetahui informasi selengkapnya tentang cara data dilaporkan untuk jenis ini, lihat panduan Keberadaan data dan nol sebenarnya. Panduan ini mencakup detail tentang tidak aktif dan pemfilteran di pergelangan tangan.

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 Gula Darah
  blood-glucose
Lemak tubuh Lemak Tubuh
  body-fat
caloriesOut di setiap zona detak jantung Kalori Di 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 Derivasi Suhu Tidur Harian
  daily-sleep-temperature-derivations
Jarak Jarak
  distance
Elektrokardiogram (EKG) Elektrokardiogram (EKG)
  electrocardiogram
Aktivitas yang direkam Latihan
  exercise
Lantai Lantai
  floors
Makanan Makanan
  food
Makanan Makanan
  food
Unit Pengukuran Makanan Unit Pengukuran Makanan
  food-measurement-unit
Unit Pengukuran Makanan Unit Pengukuran Makanan
  food-measurement-unit
Detak Jantung Detak Jantung
  heart-rate
HRV Intraday Variabilitas Detak Jantung
  heart-rate-variability
Notifikasi Irama Tidak Teratur (IRN) Notifikasi Irama Tidak Teratur
  irregular-rhythm-notification
Catatan Makanan Catatan Nutrisi
  nutrition-log
Catatan Makanan Catatan Nutrisi
  nutrition-log
SpO2 Intraday Saturasi Oksigen
  oxygen-saturation
Nilai VO2 Maks saat pengguna berlari VO2 Maks Lari
  run-vo2-max
Menit deret waktu aktivitas tidak aktif Periode Tidak Aktif
  sedentary-period
Tidur Tidur
  sleep
Langkah Langkah
  steps
Deret waktu aktivitas stroke renang Data Panjang Renang
  swim-lengths-data
Aktivitas caloriesOut Total Kalori
  total-calories
Nilai VO2 Maks VO2 Maks
  vo2-max
Berat Berat
  weight

Endpoint

Endpoint REST menggunakan sintaksis yang konsisten untuk semua jenis data.

  • Endpoint Layanan: URL HTTP dasar berubah menjadi https://health.googleapis.com.
  • Sintaksis Endpoint: Google Health API mendukung sejumlah endpoint terbatas, 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 me, 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) tempat Anda meminta data terperinci Metode list
GET (Deret Waktu) menurut Tanggal atau Interval Metode rollUp atau dailyRollUp termasuk rentang tanggal
GET (Daftar Log) Metode list
MEMBUAT &MEMPERBARUI Log Metode patch
MENGHAPUS Log Metode batchDelete
DAPATKAN Profil 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
Dapatkan ID Pengguna users.getIdentity menampilkan ID pengguna Google dan ID lama Fitbit pengguna.
Dapatkan Perangkat users.pairedDevices menampilkan daftar perangkat yang dipasangkan
Buat Langganan projects.subscribers.subscriptions.create membuat langganan secara manual
Hapus Langganan projects.subscribers.subscriptions.delete menghapus langganan
Dapatkan Daftar Langganan projects.subscribers.subscriptions.list mencantumkan semua langganan