- GET /openapi.yaml: raw OpenAPI spec - GET /openapi.json: JSON-formatted spec - GET /docs: Swagger UI for interactive API docs - 19 endpoints documented with schemas - Added pyyaml dependency
1.5 KiB
1.5 KiB
ESP32-Web Tasks
Last Updated: 2026-02-05
Current Sprint: v0.1.3 — Fleet Management
P1 - High
GET /api/v1/sensors/<id>/config— read sensor configPUT /api/v1/sensors/<id>/config— update sensor configPOST /api/v1/sensors/<id>/ota— trigger OTA updatePOST /api/v1/sensors/<id>/calibrate— trigger calibration
P2 - Normal
- Sensor heartbeat timeout detection
- Sensor metrics history endpoint
P3 - Low
- Add pagination to all list endpoints
- Add OpenAPI/Swagger spec
- Add request logging middleware
Completed: v0.1.2 - OSINT Features
- IEEE OUI database download (
make oui) - MAC vendor lookup utility
- BLE company_id mapping (30+ vendors)
- Device profile enrichment in API
- Export endpoints (devices.csv, devices.json, alerts.csv, probes.csv)
- Auto-populate vendor on device creation
Completed: v0.1.1 - Server Management
- Makefile start/stop/restart/status commands
- Health endpoint with uptime tracking
- CLI module (esp32-web command)
- Initial database migration
- Listen on all interfaces (0.0.0.0:5500)
Completed: v0.1.0 - Project Scaffold
- Flask app factory pattern
- SQLAlchemy 2.x models
- API blueprint with endpoints
- UDP collector with parsers
- pytest fixtures and tests
- Containerfile for podman
- Makefile for common tasks
Notes
- Sensors send data to UDP 5500
- API listens on TCP 5500
- Commands sent to sensors on UDP 5501
- SQLite for dev, PostgreSQL for prod