Hälsomätvärden - JSON Exportformat
Dokumentation om hälsomätvärdenas struktur i JSON-exporter
Last updated: February 6, 2026
On this page
Hälsomätvärden
Hälsomätvärden representerar de olika mätningar och datapunkter som samlas in av din Apple Health-app och anslutna enheter. I JSON-exporter lagras hälsomätvärden i arrayen metrics.
Format för Mätvärdesnamn
Alla mätvärdesnamn i JSON-exporter använder snake_case-format (gemener med understreck). Till exempel:
- "Step Count" blir
"step_count" - "Blood Pressure" blir
"blood_pressure" - "Heart Rate" blir
"heart_rate" - "Walking + Running Distance" blir
"walking_running_distance"
Struktur
Arrayen metrics innehåller objekt, varje objekt representerar en specifik typ av hälsomätvärde. De flesta hälsomätvärden följer en gemensam struktur:
{
"name": "step_count",
"units": "count",
"data": [
{
"qty": 8500,
"date": "2024-02-06 14:30:00 -0800"
}
]
}
Gemensamma Fält
name(String): Namnet på hälsomätvärdet i snake_case-format (t.ex. "step_count", "heart_rate", "active_energy")units(String): Mätenheten (t.ex. "count", "bpm", "kcal")data(Array): En array av datapunkter, varje punkt innehåller:qty(Number): Kvantitetsvärdetdate(Date): Tidsstämpel i formatetyyyy-MM-dd HH:mm:ss Z
Särskilda Mätvärdesformat
Vissa hälsomätvärden har unika strukturer som skiljer sig från det gemensamma formatet:
Blodtryck
Blodtrycksmätningar inkluderar både systoliska och diastoliska värden:
{
"name": "blood_pressure",
"units": "mmHg",
"data": [
{
"date": "2024-02-06 14:30:00 -0800",
"systolic": 120,
"diastolic": 80
}
]
}
Fält:
systolic(Number): Den systoliska (övre) blodtrycksmätningendiastolic(Number): Den diastoliska (nedre) blodtrycksmätningen
Hjärtfrekvens
Hjärtfrekvensdata inkluderar minimi-, genomsnitts- och maximivärden:
{
"name": "heart_rate",
"units": "bpm",
"data": [
{
"date": "2024-02-06 14:30:00 -0800",
"Min": 65,
"Avg": 72,
"Max": 85
}
]
}
Fält:
Min(Number): Minsta hjärtfrekvens under mätperiodenAvg(Number): Genomsnittlig hjärtfrekvens under mätperiodenMax(Number): Högsta hjärtfrekvens under mätperioden
Sömnanalys
Sömnens datastruktur varierar beroende på om dataaggregering är aktiverad i dina exportinställningar.
Aggregerade Sömndata
När aggregering är aktiverad sammanfattas sömnens data per dag:
{
"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"
}
]
}
Fält:
totalSleep(Number): Total sömn tid i timmarasleep(Number): Total tid i vilket sömtillstånd som helstcore(Number): Lätt sömn varaktighet i timmardeep(Number): Djup sömn varaktighet i timmarrem(Number): REM-sömn varaktighet i timmarsleepStart(Date): När sömnen faktiskt börjadesleepEnd(Date): När sömnen faktiskt slutadeinBed(Number): Total tid i sängen i timmarinBedStart(Date): När du gick till sängsinBedEnd(Date): När du steg upp
Icke-agregerade Sömndata
När aggregering är inaktiverad inkluderas individuella sömnsegment:
{
"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"
}
]
}
Fält:
startDate(Date): Starttid för sömnsegmentetendDate(Date): Sluttid för sömnsegmentetqty(Number): Varaktighet för segmentet i timmarvalue(String): Sömtillstånd - en av:"Awake""Asleep"(okategoriserad sömnfas)"In Bed""Core""REM""Deep""Unspecified"
Obs: "Asleep" hänvisar till en okategoriserad sömnfas (snarare än total sömn tid). Detta kan inträffa om datakällan inte stöder sömnfas spårning.
Blodsocker
Blodsockermätningar inkluderar information om måltidstiming:
{
"name": "blood_glucose",
"units": "mg/dL",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"qty": 95,
"mealTime": "Before Meal"
}
]
}
Fält:
qty(Number): BlodsockernivåmealTime(String): En av:"Before Meal""After Meal""Unspecified"
Sexuell Aktivitet
Sexuell aktivitet-poster spårar användning av skydd:
{
"name": "sexual_activity",
"units": "count",
"data": [
{
"date": "2024-02-06 20:00:00 -0800",
"Unspecified": 0,
"Protection Used": 1,
"Protection Not Used": 0
}
]
}
Fält:
Unspecified(Number): Antal när skyddsstatus är okändProtection Used(Number): Antal när skydd användesProtection Not Used(Number): Antal när skydd inte användes
Handtvätt
Handtvätt-händelser spårar slutförandestatus:
{
"name": "handwashing",
"units": "count",
"data": [
{
"date": "2024-02-06 12:00:00 -0800",
"qty": 1,
"value": "Complete"
}
]
}
Fält:
qty(Number): Antal handtvätt-händelservalue(String): En av:"Complete""Incomplete"
Tandborstning
Tandborstnings-händelser spårar slutförandestatus:
{
"name": "toothbrushing",
"units": "count",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"qty": 1,
"value": "Complete"
}
]
}
Fält:
qty(Number): Antal tandborstnings-händelservalue(String): En av:"Complete""Incomplete"
Insulintillförsel
Insulintillförsel-poster inkluderar anledningen till tillförsel:
{
"name": "insulin_delivery",
"units": "IU",
"data": [
{
"date": "2024-02-06 08:00:00 -0800",
"qty": 5,
"reason": "Bolus"
}
]
}
Fält:
qty(Number): Mängd insulin som tillförsreason(String): En av:"Bolus"(måltidsinsulin)"Basal"(bakgrundsinsulin)
Vanliga Hälsomätvärden
Några vanligt exporterade hälsomätvärden inkluderar (alla mätvärdesnamn är i snake_case-format):
- step_count - Dagliga stegräkningar
- walking_running_distance - Tillryggalagd sträcka
- active_energy - Kalorier förbrända genom aktivitet
- resting_heart_rate - Hjärtfrekvens i vila
- heart_rate - Hjärtfrekvensmätningar
- respiratory_rate - Andningsfrekvens
- body_temperature - Kroppstemperaturmätningar
- blood_oxygen_saturation - SpO2-nivåer
- weight_&_body_mass - Kroppsviktsmätningar
- body_mass_index - Beräknade BMI-värden
- height - Längdmätningar
- dietary_water - Vätskeintag
- mindful_minutes - Meditation eller mindfulness-tid
Tips
- Tidsgruppering: Använd tidsgrupperingsinställningar i din exportkonfiguration för att kontrollera hur data aggregeras (per sekund, minut, timme, dag, etc.)
- Dataaggregering: Aktivera dataaggregering för att sammanfatta sömn och andra mätvärden per dag för enklare analys
- Selektiv Export: Du kan välja vilka specifika hälsomätvärden som ska inkluderas i din export för att minska filstorleken och bearbetningstiden