Health check
curl --request GET \
--url https://api.example.com/healthimport requests
url = "https://api.example.com/health"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/health', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/health",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/health"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/health")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/health")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"status": "<string>",
"status_code": 123,
"last_frame_timestamp": "2023-11-07T05:31:56Z",
"last_audio_timestamp": "2023-11-07T05:31:56Z",
"frame_status": "<string>",
"audio_status": "<string>",
"message": "<string>",
"verbose_instructions": "<string>",
"device_status_details": "<string>",
"vision_db_write_stalled": true,
"audio_db_write_stalled": true,
"drm_content_paused": true,
"schedule_paused": true,
"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,
"chunks_received": 123,
"process_errors": 123,
"audio_level_rms": 123,
"audio_devices": [
"<string>"
],
"transcription_mode": "<string>",
"transcription_paused": true,
"segments_deferred": 123,
"segments_batch_processed": 123,
"batch_paused_reason": "<string>",
"meeting_detected": true,
"meeting_app": "<string>"
},
"accessibility": {
"walks_total": 123,
"walks_stored": 123,
"walks_deduped": 123,
"walks_empty": 123,
"walks_error": 123,
"walks_truncated": 123,
"walks_truncated_timeout": 123,
"walks_truncated_max_nodes": 123,
"truncation_rate": 123,
"avg_walk_duration_ms": 123,
"max_walk_duration_ms": 123,
"avg_nodes_per_walk": 123,
"max_depth_reached": 123,
"total_text_chars": 123
},
"pool_stats": {
"read_pool_size": 123,
"read_pool_idle": 123,
"write_pool_size": 123,
"write_pool_idle": 123
},
"hostname": "<string>",
"version": "<string>"
}System
Health check
Returns system health status including audio/video pipeline state, device info, and version.
Health check
curl --request GET \
--url https://api.example.com/healthimport requests
url = "https://api.example.com/health"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/health', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/health",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/health"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/health")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/health")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"status": "<string>",
"status_code": 123,
"last_frame_timestamp": "2023-11-07T05:31:56Z",
"last_audio_timestamp": "2023-11-07T05:31:56Z",
"frame_status": "<string>",
"audio_status": "<string>",
"message": "<string>",
"verbose_instructions": "<string>",
"device_status_details": "<string>",
"vision_db_write_stalled": true,
"audio_db_write_stalled": true,
"drm_content_paused": true,
"schedule_paused": true,
"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,
"chunks_received": 123,
"process_errors": 123,
"audio_level_rms": 123,
"audio_devices": [
"<string>"
],
"transcription_mode": "<string>",
"transcription_paused": true,
"segments_deferred": 123,
"segments_batch_processed": 123,
"batch_paused_reason": "<string>",
"meeting_detected": true,
"meeting_app": "<string>"
},
"accessibility": {
"walks_total": 123,
"walks_stored": 123,
"walks_deduped": 123,
"walks_empty": 123,
"walks_error": 123,
"walks_truncated": 123,
"walks_truncated_timeout": 123,
"walks_truncated_max_nodes": 123,
"truncation_rate": 123,
"avg_walk_duration_ms": 123,
"max_walk_duration_ms": 123,
"avg_nodes_per_walk": 123,
"max_depth_reached": 123,
"total_text_chars": 123
},
"pool_stats": {
"read_pool_size": 123,
"read_pool_idle": 123,
"write_pool_size": 123,
"write_pool_idle": 123
},
"hostname": "<string>",
"version": "<string>"
}Response
200 - application/json
OK
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Point-in-time snapshot of tree walker health metrics (no private data).
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
⌘I