Metrik Kesihatan - Format Eksport JSON
Dokumentasi untuk struktur metrik kesihatan dalam eksport JSON
Kemas kini terakhir: 31 Oktober 2026
Pada halaman ini
Eksport JSON menyimpan metrik kesihatan dalam tatasusunan metrics.
Format Nama Metrik
Semua nama metrik dalam eksport JSON menggunakan format snake_case (huruf kecil dengan garis bawah). Contohnya:
- "Step Count" menjadi
"step_count" - "Blood Pressure" menjadi
"blood_pressure" - "Heart Rate" menjadi
"heart_rate" - "Walking + Running Distance" menjadi
"walking_running_distance"
Struktur
Tatasusunan metrics mengandungi objek, setiap satu mewakili jenis metrik kesihatan tertentu. Kebanyakan metrik kesihatan mengikuti struktur umum:
{
"name": "step_count",
"units": "count",
"data": [
{
"qty": 8500,
"date": "2024-02-06 14:30:00 -0800",
"source": "Apple Watch"
}
]
}
Medan Lazim
name(String): Nama metrik kesihatan dalam format snake_case (cth. "step_count", "heart_rate", "active_energy")units(String): Unit ukuran (cth. "count", "count/min", "kcal")data(Array): Tatasusunan titik data, setiap satu mengandungi:qty(Number): Nilai kuantitidate(Date): Cap masa dalam formatyyyy-MM-dd HH:mm:ss Zsource(String, apabila tersedia): Aplikasi atau peranti yang merakam sampel
Format Metrik Khas
Sesetengah metrik kesihatan mempunyai struktur unik yang berbeza daripada format umum:
Tekanan Darah
Bacaan tekanan darah termasuk nilai sistolik dan diastolik:
{
"name": "blood_pressure",
"units": "mmHg",
"data": [
{
"date": "2024-02-06 14:30:00 -0800",
"start": "2024-02-06 14:30:00 -0800",
"end": "2024-02-06 14:30:00 -0800",
"systolic": 120,
"diastolic": 80,
"source": "Health"
}
]
}
Medan:
systolic(Number): Bacaan tekanan darah sistolik (atas). Eksport yang diringkaskan menggunakan purata bacaan dalam kumpulan masa.diastolic(Number): Bacaan tekanan darah diastolik (bawah). Eksport yang diringkaskan menggunakan purata bacaan dalam kumpulan masa.
Kadar Jantung
Data kadar jantung termasuk nilai minimum, purata, dan maksimum:
{
"name": "heart_rate",
"units": "count/min",
"data": [
{
"date": "2024-02-06 14:30:00 -0800",
"Min": 65,
"Avg": 72,
"Max": 85,
"source": "Apple Watch"
}
]
}
Medan:
Min(Number): Kadar jantung minimum semasa tempoh pengukuranAvg(Number): Kadar jantung purata semasa tempoh pengukuranMax(Number): Kadar jantung maksimum semasa tempoh pengukuran
Kebolehubahan Kadar Jantung
Dengan Ringkaskan Data dimatikan, eksport JSON Kebolehubahan Kadar Jantung (SDNN) mungkin termasuk bacaan denyut-ke-denyut yang tersedia. Ini memerlukan akses baca Siri Degupan Jantung dalam Apple Health.
Eksport yang diringkaskan, eksport CSV, dan Recovery HRV tidak termasuk bacaan denyut-ke-denyut.
Analisis Tidur
Struktur data tidur bergantung pada sama ada Ringkaskan Data dihidupkan atau dimatikan.
Ringkaskan Data Dihidupkan
Dengan Ringkaskan Data dihidupkan, data tidur diringkaskan mengikut hari. Tempoh dalam peringkat yang sama dijumlahkan. Jumlah tidur ialah asleep, core, deep, dan REM digabungkan. JSON mengekalkan setiap hari. Dalam CSV, kumpulan masa yang lebih kasar menunjukkan hari terkini dalam kumpulan itu:
{
"name": "sleep_analysis",
"units": "hr",
"data": [
{
"date": "2024-02-06 00:00:00 -0800",
"totalSleep": 7.5,
"asleep": 0.5,
"core": 3.5,
"deep": 1.5,
"rem": 2.0,
"sleepStart": "2024-02-05 23:00:00 -0800",
"sleepEnd": "2024-02-06 06:30:00 -0800",
"inBed": 8.0,
"inBedStart": "2024-02-05 22:45:00 -0800",
"inBedEnd": "2024-02-06 06:45:00 -0800",
"awake": 0.0,
"source": "Apple Watch"
}
]
}
Medan:
totalSleep(Number): Jumlah masa tidur dalam jamasleep(Number): Masa tidur tanpa peringkat tidur yang direkodkan, dalam jamcore(Number): Tempoh tidur core dalam jamdeep(Number): Tempoh tidur dalam dalam jamrem(Number): Tempoh tidur REM dalam jamawake(Number): Masa terjaga dalam jamsleepStart(Date): Bila tidur benar-benar bermulasleepEnd(Date): Bila tidur benar-benar berakhirinBed(Number): Jumlah masa di atas katil dalam jaminBedStart(Date): Bila anda masuk ke atas katilinBedEnd(Date): Bila anda keluar dari katil
Ringkaskan Data Dimatikan
Dengan Ringkaskan Data dimatikan, segmen tidur individu disertakan:
{
"name": "sleep_analysis",
"units": "hr",
"data": [
{
"date": "2024-02-05 23:00:00 -0800",
"start": "2024-02-05 23:00:00 -0800",
"end": "2024-02-05 23:30:00 -0800",
"startDate": "2024-02-05 23:00:00 -0800",
"endDate": "2024-02-05 23:30:00 -0800",
"qty": 0.5,
"value": "Core",
"source": "Apple Watch"
}
]
}
Medan:
date,start,startDate(Date): Masa mula segmen tidurend,endDate(Date): Masa akhir segmen tidursource(String): Aplikasi atau peranti yang merakam segmenqty(Number): Tempoh segmen dalam jamvalue(String): Keadaan tidur - salah satu daripada:"Awake""Asleep"(fasa tidur tidak dikategorikan)"In Bed""Core""REM""Deep""Unspecified"
Nota: "Asleep" merujuk kepada fasa tidur tidak dikategorikan (bukan jumlah masa tidur). Ini mungkin berlaku jika sumber data tidak menyokong penjejakan fasa tidur.
Glukosa Darah
Bacaan glukosa darah termasuk maklumat masa makan:
{
"name": "blood_glucose",
"units": "mg/dL",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"start": "2024-02-06 08:00:00 -0800",
"end": "2024-02-06 08:00:00 -0800",
"qty": 95,
"mealTime": "Before Meal",
"source": "Health"
}
]
}
Medan:
qty(Number): Tahap glukosa darahmealTime(String): Salah satu daripada:"Before Meal""After Meal""Unspecified"
Pemakanan
Apabila Ringkaskan Data dimatikan, sampel kuantiti pemakanan individu (contohnya Dietary Energy atau Carbohydrates) mungkin termasuk butiran makanan yang direkodkan dalam Apple Health. Contohnya:
{
"name": "dietary_energy",
"units": "kcal",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"start": "2024-02-06 08:00:00 -0800",
"end": "2024-02-06 08:00:00 -0800",
"qty": 240,
"source": "Lose It!",
"foodType": "Boneless, Skinless Grilled Chicken Breast"
}
]
}
Medan:
qty(Number): Kuantiti nutrien untuk sampelfoodType(String, pilihan): Nama makanan yang direkodkan oleh aplikasi sumber, apabila tersedia
Dengan Ringkaskan Data dihidupkan, jumlah pemakanan tidak termasuk foodType.
Aktiviti Seksual
Entri aktiviti seksual menjejaki penggunaan perlindungan:
{
"name": "sexual_activity",
"units": "count",
"data": [
{
"date": "2024-02-06 00:00:00 -0800",
"Unspecified": 0,
"Protection Used": 1,
"Protection Not Used": 0,
"source": "Health"
}
]
}
Medan:
Unspecified(Number): Kiraan peristiwa hari itu apabila status perlindungan tidak diketahuiProtection Used(Number): Kiraan peristiwa hari itu apabila perlindungan digunakanProtection Not Used(Number): Kiraan peristiwa hari itu apabila perlindungan tidak digunakan
Eksport yang diringkaskan mengira setiap hari kalendar. JSON mengekalkan setiap hari. Dalam CSV, kumpulan masa yang lebih kasar menunjukkan hari terkini dalam kumpulan itu.
Mencuci Tangan
Peristiwa mencuci tangan menjejaki status penyelesaian:
{
"name": "handwashing",
"units": "s",
"data": [
{
"date": "2024-02-06 12:00:00 -0800",
"start": "2024-02-06 12:00:00 -0800",
"end": "2024-02-06 12:00:25 -0800",
"qty": 25,
"value": "Completed",
"source": "Apple Watch"
}
]
}
Medan:
qty(Number): Tempoh dalam saat. Eksport yang diringkaskan menggunakan tempoh purata dalam kumpulan masa.value(String):"Completed"apabila sesi berlangsung lebih daripada 20 saat, jika tidak"Incomplete"
Menggosok Gigi
Peristiwa menggosok gigi menjejaki status penyelesaian:
{
"name": "toothbrushing",
"units": "s",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"start": "2024-02-06 08:00:00 -0800",
"end": "2024-02-06 08:02:10 -0800",
"qty": 130,
"value": "Completed",
"source": "Health"
}
]
}
Medan:
qty(Number): Tempoh dalam saat. Eksport yang diringkaskan menggunakan tempoh purata dalam kumpulan masa.value(String):"Completed"apabila sesi berlangsung sekurang-kurangnya 2 minit, jika tidak"Incomplete"
Penghantaran Insulin
Entri penghantaran insulin termasuk sebab penghantaran:
{
"name": "insulin_delivery",
"units": "IU",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"start": "2024-02-06 08:00:00 -0800",
"end": "2024-02-06 08:00:00 -0800",
"qty": 5,
"reason": "Bolus",
"source": "Health"
}
]
}
Medan:
qty(Number): Jumlah insulin yang dihantar. Eksport yang diringkaskan menambah jumlah dalam kumpulan masa.reason(String): Salah satu daripada:"Bolus"(insulin waktu makan)"Basal"(insulin latar belakang)