Real-time Health Logs

Streaming Logs offer a detailed and unprocessed stream of data across various health metrics. This raw data is useful for in-depth health analysis, research, and discovery. It acts as the foundational layer for advanced applications.

Prefer a Simpler Way to Understand Health Data?

Dive into Sahha's Digital Biomarkers for straightforward and accessible health measurements. Biomarkers translate complex raw health data into clear, accurate metrics. Ideal for most use-cases, they eliminate the hassle of aggregating, de-duplicating and handling raw data. Only opt for Streaming Logs if your specific needs demand the most detailed and unprocessed data, such as research studies.

Data Points in Streaming Logs

Below are the key data types captured in Streaming Logs, categorized by their respective health aspects. The logs can be streamed via webhooks for real-time data reception.

Activity Logs

Data Type Unit Description Webhook Event
custom_step_sessions count Customizable sessions tracking steps. DataLogReceivedIntegrationEvent
exercise_time minute Duration of physical exercise. DataLogReceivedIntegrationEvent
floor_count count Number of floors climbed. DataLogReceivedIntegrationEvent
stand_time minute Time spent standing. DataLogReceivedIntegrationEvent
step_count count Total steps taken. DataLogReceivedIntegrationEvent

Blood Logs

Data Type Unit Description Webhook Event
blood_glucose mg/dL Glucose levels in the blood. DataLogReceivedIntegrationEvent
blood_pressure_diastolic mmHg Diastolic blood pressure. DataLogReceivedIntegrationEvent
blood_pressure_systolic mmHg Systolic blood pressure. DataLogReceivedIntegrationEvent

Body Logs

Data Type Unit Description Webhook Event
body_fat percent Percentage of body fat. DataLogReceivedIntegrationEvent
body_mass_index count Body Mass Index (BMI). DataLogReceivedIntegrationEvent
lean_body_mass kg Weight of lean body mass. DataLogReceivedIntegrationEvent
weight kg Total body weight. DataLogReceivedIntegrationEvent

Device Logs

Data Type Unit Description Webhook Event
device_lock boolean Indicates if the device is locked. DataLogReceivedIntegrationEvent

Energy Logs

Data Type Unit Description Webhook Event
active_energy_burned kcal Calories burned through activity. DataLogReceivedIntegrationEvent
basal_energy_burned kcal Calories burned at rest. DataLogReceivedIntegrationEvent
time_in_daylight minute Time spent in natural daylight. DataLogReceivedIntegrationEvent

Heart Logs

Data Type Unit Description Webhook Event
heart_rate bpm Beats per minute. DataLogReceivedIntegrationEvent
heart_rate_variability ms Variation in intervals between heartbeats. DataLogReceivedIntegrationEvent
heart_rate_variability_sdnn ms Standard deviation of NN intervals. DataLogReceivedIntegrationEvent
resting_heart_rate bpm Heart rate at rest. DataLogReceivedIntegrationEvent
walking_heart_rate_average bpm Average heart rate while walking. DataLogReceivedIntegrationEvent

Oxygen Logs

Data Type Unit Description Webhook Event
oxygen_saturation percent Percentage of oxygen-saturated hemoglobin. DataLogReceivedIntegrationEvent
respiratory_rate bps Breaths per second. DataLogReceivedIntegrationEvent
vo2_max ml/kg/min Maximum rate of oxygen consumption during exercise. DataLogReceivedIntegrationEvent

Sleep Logs

Data Type Unit Description Webhook Event
sleep_stage_asleep_unspecified minute Duration in unspecified asleep stage. DataLogReceivedIntegrationEvent
sleep_stage_awake minute Duration in awake stage. DataLogReceivedIntegrationEvent
sleep_stage_awake_in_or_out_of_bed minute Duration awake in or out of bed. DataLogReceivedIntegrationEvent
sleep_stage_deep minute Duration in deep sleep stage. DataLogReceivedIntegrationEvent
sleep_stage_in_bed minute Duration in bed, not necessarily asleep. DataLogReceivedIntegrationEvent
sleep_stage_light minute Duration in light sleep stage. DataLogReceivedIntegrationEvent
sleep_stage_rem minute Duration in REM sleep stage. DataLogReceivedIntegrationEvent
sleep_stage_sleeping minute Total sleeping duration. DataLogReceivedIntegrationEvent
sleep_stage_unknown minute Duration in unknown sleep stage. DataLogReceivedIntegrationEvent

Temperature Logs

Data Type Unit Description Webhook Event
basal_body_temperature degC Body temperature at rest. DataLogReceivedIntegrationEvent
sleeping_wrist_temperature degC Temperature measured at the wrist during sleep

Enabling Sensors on SDK

Sensor Android Permissions iOS Permissions
sleep SleepSession SleepAnalysis
activity Steps, FloorsClimbed StepCount, FlightsClimbed, MoveTime, StandTime, ExerciseTime, ActivitySummary
device Permission Not Required Permission Not Required
heart HeartRate, RestingHeartRate, HeartRateVariabilityRmssd HeartRate, RestingHeartRate, WalkingHeartRateAverage, HeartRateVariabilitySDNN
blood BloodPressure, BloodGlucose BloodPressureSystolic, BloodPressureDiastolic, BloodGlucose
oxygen OxygenSaturation, RespiratoryRate, Vo2Max VO2Max, OxygenSaturation, RespiratoryRate
energy ActiveCaloriesBurned, BasalMetabolicRate, TotalCaloriesBurned ActiveEnergyBurned, BasalEnergyBurned, TimeInDaylight
body Height, Weight, BodyFat, BodyWaterMass, BoneMass, LeanBodyMass Height, Weight, LeanBodyMass, BodyMassIndex, BodyFat, WaistCircumference
temperature BodyTemperature, BasalBodyTemperature BodyTemperature, BasalBodyTemperature, AppleSleepingWristTemperature
exercise Exercise Workout

Output Schema for Streaming Logs

When you receive data from Streaming Logs, it comes in a structured format, or "schema," that looks like this:

"logType": "activity",
"dataType": "steps",
"externalId": "ext-789",
"receivedAtUtc": "2023-06-26T12:34:56+00:00",
"dataLogs": [
"id": "123e4567-e89b-12d3-a456-426614174003",
"parentId": null,
"value": 10000,
"unit": "count",
"source": "iPhone X",
"deviceType": "iPhone13,2",
"startDateTime": "2023-06-25T00:00:00+00:00",
"endDateTime": "2023-06-25T23:59:59+00:00",
"additionalProperties": {
"": ""
  • LogType : Specifies the grouping the log fits into such as activity or sleep or energy etc.
  • DataType : Specifies what kind of health data is being logged, such as heart_rate or step_count.
  • ExternalId : The identifier for the profile / device that send the log.
  • ReceivedAtUtc : The date and time in UTC that the log was received.
  • DataLogs : Contains an array of objects where each object is an individual data log.
  • Id :
  • Value : The recorded value for the data type.
  • Unit : The measurement unit for the Value, like beats per minute (bpm) or count.
  • Source : Identifies where or what device the data came from.
  • RecordingMethod : Describes how the data was collected, which might not always be specified.
  • DeviceType : The specific type or model of the device that recorded the data.
  • StartDateTime : When the data recording started, in an ISO 8601 format.
  • EndDateTime : When the data recording ended, also in an ISO 8601 format.