API
Endpoints
The REST surface, by area.
All paths are under https://<host>/api/v1/. Every call is scoped to the tenant in the token.
Fleet
| Method | Path | What |
|---|---|---|
| GET | /vehicles | List vehicles |
| POST | /vehicles | Create: plate (required), name, make, model, modelYear, category |
| GET, PUT, DELETE | /vehicles/{id} | Read, update, delete (refused while a tracker is assigned) |
| GET | /devices | List trackers |
| POST | /devices | Register: imei (required), protocol, model, simMsisdn, notes |
| PUT | /devices/{id}/assign/{vehicleId} | Assign to a vehicle |
| PUT | /devices/{id}/unassign | Release |
| PUT | /devices/{id}/decommission, /reactivate | Stop or resume accepting the device |
Live and history
| Method | Path | What |
|---|---|---|
| GET | /live/vehicles | Last known state of every vehicle |
| GET | /trips?vehicleId=&limit= | Recent trips of a vehicle |
| GET | /trips/{id}/path | The ordered track of a trip: t, lat, lon, speedKmh, headingDeg |
| GET | /stops?vehicleId=&limit= | Recent stops |
| GET | /summary?date=YYYY-MM-DD | The day's distance, driving, idle, trips, fuel and idle cost per vehicle (default: yesterday) |
Safety
| Method | Path | What |
|---|---|---|
| GET | /alerts?vehicleId=&limit= | Alerts, newest first |
| PUT | /alerts/{id}/ack | Acknowledge |
| GET, POST | /alert-rules | Rules: name, type, severity, enabled, params |
| PUT, DELETE | /alert-rules/{id} | Update, delete |
| GET, POST | /geofences | Circles and polygons |
| GET, PUT | /geofences/{id} | Read, update |
Reports, modules, settings
| Method | Path | What |
|---|---|---|
| GET | /digests?limit= | Daily digests |
| POST | /digests/generate?date= | Build the digest for a day now |
| GET | /modules | The catalog with the tenant's on/off state |
| PUT | /modules/{key}/enable, /disable | Switch a module |
| GET | /admin/settings | Runtime settings |
| PUT | /admin/settings/{key} | Change one: body { "value": "..." } |