Toshiba Global Commerce Solutions
ELERAIQ Portal
← Portal Home

Api Reference

All endpoints are on the running camera app (http://<host>:8000), not the portal. Everything is GET with query params, except the video stream.

Stream & Status

Endpoint Description
GET /api/stream MJPEG video stream (multipart/x-mixed-replace)
GET /api/status {status, is_running, mode, config, error} - status is connected / stopped / error
GET /api/stats {fps, detections_count, entry_count, exit_count, current_occupancy, people_in_area, daily_date}

Camera control

Endpoint Params Description
GET /api/start_camera - Start the pipeline
GET /api/stop_camera - Stop the pipeline (watchdog won't auto-restart while intentionally stopped)
GET /api/set_mode mode = preview | yolov6 | tracking | yunet | edges Switch detection mode (restarts the pipeline, ~1.2s)

Configuration

Endpoint Params Description
GET /api/set_config key, value Detection settings: confidence, filter_mode (exclude/include), filter_classes (comma-separated), boundary_line_type (vertical/horizontal), boundary_line_pos (0-1), boundary_direction (normal/anything else = reversed)
GET /api/set_camera key, value Camera hardware settings: brightness, contrast, saturation, auto_exposure, exposure_time, iso, auto_focus, focus_lens
GET /api/reset_counters - Zeroes today's in/out counts (persisted to data/daily_counts.json)

Zones

Endpoint Params Description
GET /api/add_zone name Add a detection zone (default box, drag/resize in the UI after)
GET /api/delete_zone id Remove a zone
GET /api/toggle_zone id, active Enable/disable a zone without deleting it
GET /api/update_zone id, name?, active?, xmin?, ymin?, xmax?, ymax? Update zone geometry/name (all coords normalized 0-1)

Audio alerts

Endpoint Params Description
GET /api/add_alert item, sound, custom_path?, cooldown?, trigger_mode? (once/interval) Add an alert rule for a detected class
GET /api/delete_alert id Remove an alert rule
GET /api/toggle_alert id, active Enable/disable a rule

Portal API (this service)

Endpoint Description
GET / Homepage, lists all files by category
GET /files/{category}/{filename} Download a file (category = packages | service-files | docs)
GET /view/{category}/{filename} Render a markdown doc inline
POST /upload/{category} Upload a file - multipart file field, X-Upload-Token header must match PORTAL_UPLOAD_TOKEN
GET /healthz Health check

v1.5.1 - 2026-08-20

v1.5.0 - 2026-08-20

v1.4.0 - 2026-08-20

v1.3.1 - 2026-08-20

v1.3.0 - 2026-08-20

v1.2.0 - 2026-08-19

v1.1.0 - 2026-08-19

v1.0.0 - 2026-08-19