健康指標 - JSON 匯出格式
JSON 匯出中健康指標結構的文件
Last updated: February 6, 2026
健康指標
健康指標代表由您的 Apple Health 應用程式和連接的裝置收集的各種測量值和資料點。在 JSON 匯出中,健康指標儲存在 metrics 陣列中。
指標名稱格式
JSON 匯出中的所有指標名稱都使用 snake_case 格式(帶底線的小寫字母)。例如:
- "Step Count" 變為
"step_count" - "Blood Pressure" 變為
"blood_pressure" - "Heart Rate" 變為
"heart_rate" - "Walking + Running Distance" 變為
"walking_running_distance"
結構
metrics 陣列包含物件,每個物件代表特定的健康指標類型。大多數健康指標遵循通用結構:
{
"name": "step_count",
"units": "count",
"data": [
{
"qty": 8500,
"date": "2024-02-06 14:30:00 -0800"
}
]
}
通用欄位
name(String): 健康指標的 snake_case 格式名稱(例如:"step_count"、"heart_rate"、"active_energy")units(String): 測量單位(例如:"count"、"bpm"、"kcal")data(Array): 資料點陣列,每個包含:qty(Number): 數量值date(Date):yyyy-MM-dd HH:mm:ss Z格式的時間戳記
特殊指標格式
某些健康指標具有與通用格式不同的獨特結構:
血壓
血壓讀數包括收縮壓和舒張壓值:
{
"name": "blood_pressure",
"units": "mmHg",
"data": [
{
"date": "2024-02-06 14:30:00 -0800",
"systolic": 120,
"diastolic": 80
}
]
}
欄位:
systolic(Number): 收縮壓(上)血壓讀數diastolic(Number): 舒張壓(下)血壓讀數
心率
心率資料包括最小值、平均值和最大值:
{
"name": "heart_rate",
"units": "bpm",
"data": [
{
"date": "2024-02-06 14:30:00 -0800",
"Min": 65,
"Avg": 72,
"Max": 85
}
]
}
欄位:
Min(Number): 測量期間的最小心率Avg(Number): 測量期間的平均心率Max(Number): 測量期間的最大心率
睡眠分析
睡眠資料結構根據匯出設定中是否啟用資料聚合而有所不同。
聚合的睡眠資料
啟用聚合後,睡眠資料按天彙總:
{
"name": "sleep_analysis",
"units": "hr",
"data": [
{
"date": "2024-02-06",
"totalSleep": 7.5,
"asleep": 7.0,
"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"
}
]
}
欄位:
totalSleep(Number): 總睡眠時間(以小時為單位)asleep(Number): 任何睡眠狀態的總時間core(Number): 淺睡眠持續時間(以小時為單位)deep(Number): 深睡眠持續時間(以小時為單位)rem(Number): REM 睡眠持續時間(以小時為單位)sleepStart(Date): 睡眠實際開始的時間sleepEnd(Date): 睡眠實際結束的時間inBed(Number): 在床上的總時間(以小時為單位)inBedStart(Date): 您上床的時間inBedEnd(Date): 您起床的時間
未聚合的睡眠資料
停用聚合後,包含個別的睡眠段:
{
"name": "sleep_analysis",
"units": "hr",
"data": [
{
"startDate": "2024-02-05 23:00:00 -0800",
"endDate": "2024-02-05 23:30:00 -0800",
"qty": 0.5,
"value": "Core",
"deep": 0.0,
"rem": 0.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"
}
]
}
欄位:
startDate(Date): 睡眠段的開始時間endDate(Date): 睡眠段的結束時間qty(Number): 段的持續時間(以小時為單位)value(String): 睡眠狀態 - 以下之一:"Awake""Asleep"(未分類的睡眠階段)"In Bed""Core""REM""Deep""Unspecified"
注意: "Asleep" 指的是未分類的睡眠階段(而不是總睡眠時間)。如果資料來源不支援睡眠階段追蹤,則可能發生這種情況。
血糖
血糖讀數包括進餐時間資訊:
{
"name": "blood_glucose",
"units": "mg/dL",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"qty": 95,
"mealTime": "Before Meal"
}
]
}
欄位:
qty(Number): 血糖水平mealTime(String): 以下之一:"Before Meal""After Meal""Unspecified"
性活動
性活動項目追蹤保護措施的使用:
{
"name": "sexual_activity",
"units": "count",
"data": [
{
"date": "2024-02-06 20:00:00 -0800",
"Unspecified": 0,
"Protection Used": 1,
"Protection Not Used": 0
}
]
}
欄位:
Unspecified(Number): 保護狀態未知時的計數Protection Used(Number): 使用保護時的計數Protection Not Used(Number): 未使用保護時的計數
洗手
洗手事件追蹤完成狀態:
{
"name": "handwashing",
"units": "count",
"data": [
{
"date": "2024-02-06 12:00:00 -0800",
"qty": 1,
"value": "Complete"
}
]
}
欄位:
qty(Number): 洗手事件的數量value(String): 以下之一:"Complete""Incomplete"
刷牙
刷牙事件追蹤完成狀態:
{
"name": "toothbrushing",
"units": "count",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"qty": 1,
"value": "Complete"
}
]
}
欄位:
qty(Number): 刷牙事件的數量value(String): 以下之一:"Complete""Incomplete"
胰島素給藥
胰島素給藥項目包括給藥原因:
{
"name": "insulin_delivery",
"units": "IU",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"qty": 5,
"reason": "Bolus"
}
]
}
欄位:
qty(Number): 給藥的胰島素量reason(String): 以下之一:"Bolus"(餐時胰島素)"Basal"(基礎胰島素)
常見健康指標
一些常見的匯出健康指標包括(所有指標名稱均為 snake_case 格式):
- step_count - 每日步數
- walking_running_distance - 移動距離
- active_energy - 通過活動消耗的卡路里
- resting_heart_rate - 靜息心率
- heart_rate - 心率測量
- respiratory_rate - 呼吸頻率
- body_temperature - 體溫讀數
- blood_oxygen_saturation - SpO2 水平
- weight_&_body_mass - 體重測量
- body_mass_index - 計算的 BMI 值
- height - 身高測量
- dietary_water - 液體攝入量
- mindful_minutes - 冥想或正念時間
提示
- 時間分組: 使用匯出設定中的時間分組設定來控制資料的聚合方式(按秒、分鐘、小時、天等)
- 資料聚合: 啟用資料聚合以按天彙總睡眠和其他指標,以便於分析
- 選擇性匯出: 您可以選擇在匯出中包含哪些特定的健康指標,以減少檔案大小和處理時間