Zdravotné metriky - formát exportu JSON
Dokumentácia štruktúry zdravotných metrík v JSON exportoch
Posledná aktualizácia: 31. októbra 2026
Na tejto stránke
JSON exporty ukladajú zdravotné metriky v poli metrics.
Formát názvu metriky
Všetky názvy metrík v JSON exportoch používajú formát snake_case (malé písmená s podčiarkovníkmi). Napríklad:
- "Step Count" sa stane
"step_count" - "Blood Pressure" sa stane
"blood_pressure" - "Heart Rate" sa stane
"heart_rate" - "Walking + Running Distance" sa stane
"walking_running_distance"
Štruktúra
Pole metrics obsahuje objekty, z ktorých každý predstavuje konkrétny typ zdravotnej metriky. Väčšina zdravotných metrík nasleduje spoločnú štruktúru:
{
"name": "step_count",
"units": "count",
"data": [
{
"qty": 8500,
"date": "2024-02-06 14:30:00 -0800",
"source": "Apple Watch"
}
]
}
Spoločné polia
name(String): Názov zdravotnej metriky vo formáte snake_case (napr. "step_count", "heart_rate", "active_energy")units(String): Merná jednotka (napr. "count", "count/min", "kcal")data(Array): Pole dátových bodov, z ktorých každý obsahuje:qty(Number): Hodnota množstvadate(Date): Časová pečiatka vo formáteyyyy-MM-dd HH:mm:ss Zsource(String, keď je dostupný): Aplikácia alebo zariadenie, ktoré zaznamenalo vzorku
Špeciálne formáty metrík
Niektoré zdravotné metriky majú unikátne štruktúry odlišné od spoločného formátu:
Krvný tlak
Hodnoty krvného tlaku zahŕňajú systolické aj diastolické hodnoty:
{
"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"
}
]
}
Polia:
systolic(Number): Systolická (horná) hodnota krvného tlaku. Sumarizované exporty používajú priemer hodnôt v časovej skupine.diastolic(Number): Diastolická (dolná) hodnota krvného tlaku. Sumarizované exporty používajú priemer hodnôt v časovej skupine.
Srdcová frekvencia
Údaje srdcovej frekvencie zahŕňajú minimálne, priemerné a maximálne hodnoty:
{
"name": "heart_rate",
"units": "count/min",
"data": [
{
"date": "2024-02-06 14:30:00 -0800",
"Min": 65,
"Avg": 72,
"Max": 85,
"source": "Apple Watch"
}
]
}
Polia:
Min(Number): Minimálna srdcová frekvencia počas obdobia meraniaAvg(Number): Priemerná srdcová frekvencia počas obdobia meraniaMax(Number): Maximálna srdcová frekvencia počas obdobia merania
Variabilita srdcovej frekvencie
Pri vypnutom Sumarizovať údaje môžu JSON exporty Variability srdcovej frekvencie (SDNN) zahŕňať dostupné hodnoty úder za úderom. Vyžadujú prístup na čítanie Série srdcových úderov v Apple Health.
Sumarizované exporty, CSV exporty a Recovery HRV hodnoty úder za úderom nezahŕňajú.
Analýza spánku
Štruktúra údajov spánku závisí od toho, či je Sumarizovať údaje zapnuté alebo vypnuté.
Sumarizovať údaje zapnuté
Pri zapnutom Sumarizovať údaje sa údaje spánku sumarizujú podľa dňa. Trvania v tej istej fáze sa sčítajú. Celkový spánok je súčet asleep, core, deep a REM. JSON zachová každý deň. V CSV hrubšia časová skupina zobrazí najneskorší deň v tej skupine:
{
"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"
}
]
}
Polia:
totalSleep(Number): Celkový čas spánku v hodináchasleep(Number): Čas spánku bez zaznamenanej fázy spánku, v hodináchcore(Number): Trvanie core spánku v hodináchdeep(Number): Trvanie hlbokého spánku v hodináchrem(Number): Trvanie REM spánku v hodináchawake(Number): Čas bdenia v hodináchsleepStart(Date): Kedy spánok skutočne začalsleepEnd(Date): Kedy spánok skutočne skončilinBed(Number): Celkový čas v posteli v hodináchinBedStart(Date): Kedy ste si ľahliinBedEnd(Date): Kedy ste vstali
Sumarizovať údaje vypnuté
Pri vypnutom Sumarizovať údaje sú zahrnuté jednotlivé segmenty spánku:
{
"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"
}
]
}
Polia:
date,start,startDate(Date): Začiatočný čas segmentu spánkuend,endDate(Date): Koncový čas segmentu spánkusource(String): Aplikácia alebo zariadenie, ktoré segment zaznamenaloqty(Number): Trvanie segmentu v hodináchvalue(String): Stav spánku - jedno z:"Awake""Asleep"(nekategorizovaná fáza spánku)"In Bed""Core""REM""Deep""Unspecified"
Poznámka: "Asleep" označuje nekategorizovanú fázu spánku (nie celkový čas spánku). Môže sa vyskytnúť, ak zdroj údajov nepodporuje sledovanie fáz spánku.
Glykémia
Hodnoty glykémie zahŕňajú informácie o čase jedla:
{
"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"
}
]
}
Polia:
qty(Number): Úroveň glykémiemealTime(String): Jedno z:"Before Meal""After Meal""Unspecified"
Výživa
Keď je Sumarizovať údaje vypnuté, jednotlivé množstevné vzorky výživy (napríklad Dietárna energia alebo Sacharidy) môžu zahŕňať podrobnosti o jedle zaznamenané v Apple Health. Napríklad:
{
"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"
}
]
}
Polia:
qty(Number): Množstvo živiny pre vzorkufoodType(String, voliteľné): Názov jedla zaznamenaný zdrojovou aplikáciou, keď je dostupný
Pri zapnutom Sumarizovať údaje súčty výživy foodType nezahŕňajú.
Sexuálna aktivita
Položky sexuálnej aktivity sledujú použitie ochrany:
{
"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"
}
]
}
Polia:
Unspecified(Number): Počet udalostí v daný deň, keď je stav ochrany neznámyProtection Used(Number): Počet udalostí v daný deň, keď bola ochrana použitáProtection Not Used(Number): Počet udalostí v daný deň, keď ochrana nebola použitá
Sumarizované exporty počítajú každý kalendárny deň. JSON zachová každý deň. V CSV hrubšia časová skupina zobrazí najneskorší deň v tej skupine.
Umývanie rúk
Udalosti umývania rúk sledujú stav dokončenia:
{
"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"
}
]
}
Polia:
qty(Number): Trvanie v sekundách. Sumarizované exporty používajú priemerné trvanie v časovej skupine.value(String):"Completed", keď relácia trvá viac než 20 sekúnd, inak"Incomplete"
Čistenie zubov
Udalosti čistenia zubov sledujú stav dokončenia:
{
"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"
}
]
}
Polia:
qty(Number): Trvanie v sekundách. Sumarizované exporty používajú priemerné trvanie v časovej skupine.value(String):"Completed", keď relácia trvá aspoň 2 minúty, inak"Incomplete"
Podanie inzulínu
Položky podania inzulínu zahŕňajú dôvod podania:
{
"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"
}
]
}
Polia:
qty(Number): Množstvo podaného inzulínu. Sumarizované exporty sčítajú množstvá v časovej skupine.reason(String): Jedno z:"Bolus"(inzulín pri jedle)"Basal"(bazálny inzulín)