Métricas de Salud - Formato de Exportación JSON

Documentación sobre la estructura de métricas de salud en exportaciones JSON

Last updated: February 6, 2026

On this page

Métricas de Salud

Las métricas de salud representan las diversas mediciones y puntos de datos recopilados por tu aplicación Apple Health y dispositivos conectados. En las exportaciones JSON, las métricas de salud se almacenan en el array metrics.

Formato de Nombre de Métrica

Todos los nombres de métricas en las exportaciones JSON usan el formato snake_case (minúsculas con guiones bajos). Por ejemplo:

  • "Step Count" se convierte en "step_count"
  • "Blood Pressure" se convierte en "blood_pressure"
  • "Heart Rate" se convierte en "heart_rate"
  • "Walking + Running Distance" se convierte en "walking_running_distance"

Estructura

El array metrics contiene objetos, cada uno representando un tipo específico de métrica de salud. La mayoría de las métricas de salud siguen una estructura común:

{
  "name": "step_count",
  "units": "count",
  "data": [
    {
      "qty": 8500,
      "date": "2024-02-06 14:30:00 -0800"
    }
  ]
}

Campos Comunes

  • name (String): El nombre de la métrica de salud en formato snake_case (ej: "step_count", "heart_rate", "active_energy")
  • units (String): La unidad de medida (ej: "count", "bpm", "kcal")
  • data (Array): Un array de puntos de datos, cada uno conteniendo:
    • qty (Number): El valor de la cantidad
    • date (Date): Marca de tiempo en formato yyyy-MM-dd HH:mm:ss Z

Formatos Especiales de Métricas

Algunas métricas de salud tienen estructuras únicas que difieren del formato común:

Presión Arterial

Las lecturas de presión arterial incluyen valores sistólicos y diastólicos:

{
  "name": "blood_pressure",
  "units": "mmHg",
  "data": [
    {
      "date": "2024-02-06 14:30:00 -0800",
      "systolic": 120,
      "diastolic": 80
    }
  ]
}

Campos:

  • systolic (Number): La lectura de presión arterial sistólica (superior)
  • diastolic (Number): La lectura de presión arterial diastólica (inferior)

Frecuencia Cardíaca

Los datos de frecuencia cardíaca incluyen valores mínimos, promedio y máximos:

{
  "name": "heart_rate",
  "units": "bpm",
  "data": [
    {
      "date": "2024-02-06 14:30:00 -0800",
      "Min": 65,
      "Avg": 72,
      "Max": 85
    }
  ]
}

Campos:

  • Min (Number): Frecuencia cardíaca mínima durante el período de medición
  • Avg (Number): Frecuencia cardíaca promedio durante el período de medición
  • Max (Number): Frecuencia cardíaca máxima durante el período de medición

Análisis de Sueño

La estructura de datos de sueño varía dependiendo de si la agregación de datos está habilitada en la configuración de exportación.

Datos de Sueño Agregados

Cuando la agregación está habilitada, los datos de sueño se resumen por día:

{
  "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"
    }
  ]
}

Campos:

  • totalSleep (Number): Tiempo total dormido en horas
  • asleep (Number): Tiempo total en cualquier estado de sueño
  • core (Number): Duración del sueño ligero en horas
  • deep (Number): Duración del sueño profundo en horas
  • rem (Number): Duración del sueño REM en horas
  • sleepStart (Date): Cuándo comenzó realmente el sueño
  • sleepEnd (Date): Cuándo terminó realmente el sueño
  • inBed (Number): Tiempo total en la cama en horas
  • inBedStart (Date): Cuándo te acostaste
  • inBedEnd (Date): Cuándo te levantaste

Datos de Sueño No Agregados

Cuando la agregación está deshabilitada, se incluyen segmentos individuales de sueño:

{
  "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"
    }
  ]
}

Campos:

  • startDate (Date): Hora de inicio del segmento de sueño
  • endDate (Date): Hora de finalización del segmento de sueño
  • qty (Number): Duración del segmento en horas
  • value (String): Estado del sueño - uno de:
    • "Awake"
    • "Asleep" (fase de sueño no categorizada)
    • "In Bed"
    • "Core"
    • "REM"
    • "Deep"
    • "Unspecified"

Nota: "Asleep" se refiere a una fase de sueño no categorizada (en lugar del tiempo total dormido). Esto puede ocurrir si la fuente de datos no admite el seguimiento de fases de sueño.

Glucosa en Sangre

Las lecturas de glucosa en sangre incluyen información sobre el momento de la comida:

{
  "name": "blood_glucose",
  "units": "mg/dL",
  "data": [
    {
      "date": "2024-02-06 08:00:00 -0800",
      "qty": 95,
      "mealTime": "Before Meal"
    }
  ]
}

Campos:

  • qty (Number): Nivel de glucosa en sangre
  • mealTime (String): Uno de:
    • "Before Meal"
    • "After Meal"
    • "Unspecified"

Actividad Sexual

Las entradas de actividad sexual rastrean el uso de protección:

{
  "name": "sexual_activity",
  "units": "count",
  "data": [
    {
      "date": "2024-02-06 20:00:00 -0800",
      "Unspecified": 0,
      "Protection Used": 1,
      "Protection Not Used": 0
    }
  ]
}

Campos:

  • Unspecified (Number): Conteo cuando el estado de protección es desconocido
  • Protection Used (Number): Conteo cuando se usó protección
  • Protection Not Used (Number): Conteo cuando no se usó protección

Lavado de Manos

Los eventos de lavado de manos rastrean el estado de finalización:

{
  "name": "handwashing",
  "units": "count",
  "data": [
    {
      "date": "2024-02-06 12:00:00 -0800",
      "qty": 1,
      "value": "Complete"
    }
  ]
}

Campos:

  • qty (Number): Número de eventos de lavado de manos
  • value (String): Uno de:
    • "Complete"
    • "Incomplete"

Cepillado de Dientes

Los eventos de cepillado de dientes rastrean el estado de finalización:

{
  "name": "toothbrushing",
  "units": "count",
  "data": [
    {
      "date": "2024-02-06 08:00:00 -0800",
      "qty": 1,
      "value": "Complete"
    }
  ]
}

Campos:

  • qty (Number): Número de eventos de cepillado de dientes
  • value (String): Uno de:
    • "Complete"
    • "Incomplete"

Administración de Insulina

Las entradas de administración de insulina incluyen la razón de la administración:

{
  "name": "insulin_delivery",
  "units": "IU",
  "data": [
    {
      "date": "2024-02-06 08:00:00 -0800",
      "qty": 5,
      "reason": "Bolus"
    }
  ]
}

Campos:

  • qty (Number): Cantidad de insulina administrada
  • reason (String): Uno de:
    • "Bolus" (insulina de comida)
    • "Basal" (insulina de fondo)

Métricas de Salud Comunes

Algunas métricas de salud comúnmente exportadas incluyen (todos los nombres de métricas están en formato snake_case):

  • step_count - Conteos diarios de pasos
  • walking_running_distance - Distancia recorrida
  • active_energy - Calorías quemadas mediante actividad
  • resting_heart_rate - Frecuencia cardíaca en reposo
  • heart_rate - Mediciones de frecuencia cardíaca
  • respiratory_rate - Frecuencia respiratoria
  • body_temperature - Lecturas de temperatura corporal
  • blood_oxygen_saturation - Niveles de SpO2
  • weight_&_body_mass - Mediciones de peso corporal
  • body_mass_index - Valores de IMC calculados
  • height - Mediciones de altura
  • dietary_water - Consumo de líquidos
  • mindful_minutes - Tiempo de meditación o atención plena

Consejos

  • Agrupación Temporal: Usa la configuración de agrupación temporal en tu configuración de exportación para controlar cómo se agregan los datos (por segundo, minuto, hora, día, etc.)
  • Agregación de Datos: Habilita la agregación de datos para resumir el sueño y otras métricas por día para facilitar el análisis
  • Exportación Selectiva: Puedes elegir qué métricas de salud específicas incluir en tu exportación para reducir el tamaño del archivo y el tiempo de procesamiento

Documentación Relacionada