Skip to main content
Health check with pipeline metrics
curl --request GET \
  --url https://api.example.com/health
{
  "status": "<string>",
  "status_code": 123,
  "frame_status": "<string>",
  "audio_status": "<string>",
  "message": "<string>",
  "last_frame_timestamp": "2023-11-07T05:31:56Z",
  "last_audio_timestamp": "2023-11-07T05:31:56Z",
  "verbose_instructions": "<string>",
  "device_status_details": "<string>",
  "monitors": [
    "<string>"
  ],
  "pipeline": {
    "uptime_secs": 123,
    "frames_captured": 123,
    "frames_db_written": 123,
    "frames_dropped": 123,
    "frame_drop_rate": 123,
    "capture_fps_actual": 123,
    "avg_ocr_latency_ms": 123,
    "avg_db_latency_ms": 123,
    "ocr_queue_depth": 123,
    "video_queue_depth": 123,
    "time_to_first_frame_ms": 123,
    "pipeline_stall_count": 123,
    "ocr_cache_hit_rate": 123
  },
  "audio_pipeline": {
    "uptime_secs": 123,
    "chunks_sent": 123,
    "chunks_channel_full": 123,
    "stream_timeouts": 123,
    "vad_passed": 123,
    "vad_rejected": 123,
    "vad_passthrough_rate": 123,
    "avg_speech_ratio": 123,
    "transcriptions_completed": 123,
    "transcriptions_empty": 123,
    "transcription_errors": 123,
    "db_inserted": 123,
    "total_words": 123,
    "words_per_minute": 123,
    "transcription_mode": "<string>",
    "transcription_paused": true,
    "segments_deferred": 123,
    "segments_batch_processed": 123,
    "batch_paused_reason": "<string>"
  }
}

Response

200 - application/json

System health status

status
string
required

"healthy" or "degraded"

status_code
integer
required
frame_status
string
required

"ok", "stale", "not_started", or "disabled"

audio_status
string
required
message
string
required
last_frame_timestamp
string<date-time> | null
last_audio_timestamp
string<date-time> | null
verbose_instructions
string | null
device_status_details
string | null
monitors
string[] | null
pipeline
object
audio_pipeline
object