SmartSpectra SDK

Getting Started

Set up your API key and integrate the SmartSpectra SDK in your app.

1. Get an API key

Register at physiology.presagetech.com to get a free API key. See Authentication for OAuth setup and key management.

2. Install the SDK

3. Configure

Configure metrics: Swift

SDK metric capabilities

Important: SDK metrics are offered for general wellness and informational purposes only. SDK metrics have not been cleared by the FDA and may not be used for medical diagnosis or treatment.

The SDK exposes one language-agnostic metrics payload across platforms. When platform pages lag the underlying SDK, this overview uses the highest currently documented capability and calls out validation gaps directly. See the payload schema for field names and wire types.

Relative Arterial Pressure Waveform

Waveform of relative arterial pressure (amplitude in arbitrary units vs. time). Represents waveform shape only (e.g., heartbeat timing, shape and relative changes). Not a blood pressure measurement and cannot be used to estimate systolic or diastolic pressure.

See model card for confidence to error mapping.

Range
Valid when pulse rate is 40-110 BPM.
Works when
  • Subject is stationary.
  • Camera is relatively stable; handheld is acceptable.
  • Face and upper chest are visible, unobstructed, and well illuminated.
Does not work when

These conditions may produce inaccurate measurements with high confidence and should be avoided.

  • Large head, body, or camera motion.
  • Chewing gum.
  • Flickering illumination, such as TV screens.
Model card

Heart Rate Variability

60-second beat-to-beat (NN interval) statistics with confidence. Confidence is 0 until the full 60-second window is reached.

See model card for confidence to error mapping.

Metrics

  • Mean NN: Average NN interval in milliseconds.
  • RMSSD: Root mean square of successive NN differences in milliseconds.
  • SDNN: Standard deviation of NN intervals in milliseconds.
  • Baevsky Stress Index: Measure of autonomic balance in arbitrary units.
Range
Valid when pulse rate is 40-110 BPM.
Works when
  • Subject is stationary.
  • Camera is relatively stable; handheld is acceptable.
  • Face and upper chest are visible, unobstructed, and well illuminated.
Does not work when

These conditions may produce inaccurate measurements with high confidence and should be avoided.

  • Large head, body, or camera motion.
  • Chewing gum.
  • Flickering illumination, such as TV screens.
Model card

Pulse Rate

12-second average pulse rate in beats per minute (BPM) with confidence.

See model card for confidence to error mapping.

Range
40-110 BPM.
Works when
  • Subject is stationary.
  • Camera is relatively stable; handheld is acceptable.
  • Face and upper chest are visible, unobstructed, and well illuminated.
Does not work when

These conditions may produce inaccurate measurements with high confidence and should be avoided.

  • Large head, body, or camera motion.
  • Chewing gum.
  • Flickering illumination, such as TV screens.
Model card

Face Analysis

Includes:

  • 478 facial landmark coordinates as x/y pixel locations.
  • Eye blink detection (binary).
  • Talking detection (binary).
  • Facial expression classification with probabilities across anger, contempt, disgust, fear, happiness, sadness, surprise, and neutral.
Works when
  • Face is visible, unobstructed, and well illuminated.
Does not work when
  • Face is significantly rotated and not approximately orthogonal to the camera.

Breathing Rate

30-second average breathing rate in breaths per minute with confidence. Confidence is 0 until the full 30-second window is reached.

See model card for confidence to error mapping.

Range
5-40 breaths per minute.
Works when
  • Subject is stationary.
  • Camera is stable and not handheld.
  • Face and chest are visible and well illuminated.
Does not work when
  • Talking.
  • Large body motion.
  • Unstable camera, including handheld capture.
  • Dark clothing.
  • Tightly striped patterns on clothing causing image aliasing.
Model card

Upper and Lower Breathing Waveforms

Upper chest and lower abdominal breathing waveforms (amplitude in arbitrary units vs. time) with confidence. Confidence is derived from breathing rate confidence and remains 0 until 30 seconds is reached.

See model card for confidence to error mapping.

Range
Valid for breathing rates of 5-40 breaths per minute.
Works when
  • Subject is stationary.
  • Camera is stable.
  • Face and chest are visible and well illuminated.
  • Lower abdominal waveform requires waistline visibility.
Does not work when
  • Talking.
  • Large body motion.
  • Unstable camera, including handheld capture.
  • Dark clothing.
  • Tightly striped patterns on clothing causing image aliasing.
Model card

On this page