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:
| 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.
| Jenis Data Fitbit Web API | Jenis Data Google Health APIdataType |
|---|---|
| Kalori Aktivitas | Energi Aktif yang Terbakaractive-energy-burned
|
| Menit Zona Aktif | Menit Zona Aktifactive-zone-minutes
|
| Berisi perubahan pada tingkat aktivitas pengguna | Tingkat Aktivitasactivity-level
|
| Elevasi | Ketinggianaltitude
|
| Gula Darah | Gula Darahblood-glucose
|
| Lemak tubuh | Lemak Tubuhbody-fat
|
caloriesOut di setiap zona detak jantung |
Kalori Di Zona Detak Jantungcalories-in-heart-rate-zone
|
| Suhu (Inti) | Suhu Tubuh Inticore-body-temperature
|
| Ringkasan HRV | Variabilitas Detak Jantung Hariandaily-heart-rate-variability
|
| Ringkasan SpO2 | Saturasi Oksigen Hariandaily-oxygen-saturation
|
| Detak jantung saat istirahat | Detak Jantung Saat Istirahat Hariandaily-resting-heart-rate
|
| Suhu kulit | Derivasi Suhu Tidur Hariandaily-sleep-temperature-derivations
|
| Jarak | Jarakdistance
|
| Elektrokardiogram (EKG) | Elektrokardiogram (EKG)electrocardiogram
|
| Aktivitas yang direkam | Latihanexercise
|
| Lantai | Lantaifloors
|
| Makanan | Makananfood
|
| Makanan | Makananfood
|
| Unit Pengukuran Makanan | Unit Pengukuran Makananfood-measurement-unit
|
| Unit Pengukuran Makanan | Unit Pengukuran Makananfood-measurement-unit
|
| Detak Jantung | Detak Jantungheart-rate
|
| HRV Intraday | Variabilitas Detak Jantungheart-rate-variability
|
| Notifikasi Irama Tidak Teratur (IRN) | Notifikasi Irama Tidak Teraturirregular-rhythm-notification
|
| Catatan Makanan | Catatan Nutrisinutrition-log
|
| Catatan Makanan | Catatan Nutrisinutrition-log
|
| SpO2 Intraday | Saturasi Oksigenoxygen-saturation
|
| Nilai VO2 Maks saat pengguna berlari | VO2 Maks Larirun-vo2-max
|
| Menit deret waktu aktivitas tidak aktif | Periode Tidak Aktifsedentary-period
|
| Tidur | Tidursleep
|
| Langkah | Langkahsteps
|
| Deret waktu aktivitas stroke renang | Data Panjang Renangswim-lengths-data
|
Aktivitas caloriesOut |
Total Kaloritotal-calories
|
| Nilai VO2 Maks | VO2 Maksvo2-max
|
| Berat | Beratweight
|
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 |