Core API Endpoints
Systems & Architectures
GET/api/systemsList systems
GET/api/systems/{system_id}Get system by id
POST/api/systemsCreate system
PUT/api/systems/{system_id}Update system
DELETE/api/systems/{system_id}Delete system
GET/api/architecturesList architectures
Users & Organizations
GET/api/users/{user_id}Get user
POST/api/usersCreate user
PUT/api/users/{user_id}Update user
DELETE/api/users/{user_id}Delete user
GET/api/organizationsList organizations
GET/api/organizations/{org_id}Get organization
GET/api/organizations/{org_id}/usersList organization users
POST/api/organizationsCreate organization
PUT/api/organizations/{org_id}Update organization
DELETE/api/organizations/{org_id}Delete organization
Sensors
GET/api/sensorsList sensors
GET/api/sensors/{sensor_id}Get sensor by id
GET/api/sensors/serial/{serial_number}Get sensor by serial
GET/api/systems/{system_id}/sensorsList sensors in a system
POST/api/systems/{system_id}/sensorsCreate sensor in system
PUT/api/systems/{system_id}/sensors/{sensor_id}Update sensor
DELETE/api/systems/{system_id}/sensors/{sensor_id}Delete sensor
Files & Storage
GET
/api/files
List stored files (optional ?extension=.DAT)
GET
/api/files/content?path={relative_path}
Get file content as JSON
GET
/api/files/search?q={query}
Search files by name/path
GET/api/sensors/{sensor_id}/filesList sensor files
GET/api/sensors/{sensor_id}/latestGet latest sensor file
GET/api/sensors/{sensor_id}/statsGet sensor aggregates
GET/api/storage/statsStorage statistics
GET/api/storage/structureStorage folder summary
Time Series
GET/api/sensors/{sensor_id}/timeseriesTime series data (supports start, end, max_points)
GET/api/sensors/{sensor_id}/timeseries/rangeMin/max available timestamps
Logs
GET/api/logsList logs (filterable)
GET/api/logs/{log_id}Get log by id
POST/api/logsCreate log entry
DELETE/api/logs/{log_id}Delete log entry
GET/api/systems/{system_id}/logsList system logs
GET/api/sensors/{sensor_id}/logsList sensor logs
GET/api/logs/statsLog statistics
Data-Service Bridge Endpoints
POST/api/data-service/discover/{system_id}Discover sensor serials and sync DB for the system
GET/api/data-service/activity-windowSensor activity window used by discovery
GET/api/data-service/commander/statusCommander bridge connection status
GET/api/data-service/commander/sessionsList active Commander bridge sessions
POST/api/data-service/commander/connect/{serial_number}Ask data-service to open Commander socket to sensor
POST/api/data-service/commander/ping/{serial_number}Commander ping status read
GET/api/data-service/commander/cfgread/{serial_number}Commander read configuration
POST/api/data-service/commander/cfgset/{serial_number}Commander set one config parameter
POST/api/data-service/commander/cfgsave/{serial_number}Commander save configuration
POST/api/data-service/commander/cmd/{serial_number}Commander operational command
POST/api/data-service/commander/reset/{serial_number}Commander cmd reset shortcut
POST/api/data-service/commander/close/{serial_number}Ask data-service to close Commander socket
POST/api/data-service/commander/disconnectDisconnect Commander bridge TCP session
Quick Start
# 1) Login and get token
curl -X POST http://localhost:5000/api/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"user@example.com","password":"password123"}'
# 2) Use token for protected APIs
curl http://localhost:5000/api/systems \
-H "Authorization: Bearer <TOKEN>"
# 3) Discover sensors from data-service for a system
curl -X POST http://localhost:5000/api/data-service/discover/1 \
-H "Authorization: Bearer <TOKEN>"