TMV RESTful API endpoints & methods
This is minimum backend API necessary to implement a backend for the Track My Vehicle APK.
Each action should respond with a 200 OK (unless otherwise stated)
All API requests are made with the https protocol / scheme, this can't be changed - the serving source will likely need to have a valid cert signed by a ca that the hardware trusts.
/tmv/device
PUT /tmv/device [application/json]
When the app starts up some details are PUT to the backend. The backend simply replies with 200 OK.
{ GUID: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx', VERN: '20250317-1716', ICEN: '', VREG: '', BOARD: 'MSM8974', BRAND: 'samsung', DISPLAY: 'lineage_klte-userdebug 9 PQ3A.190801.002 6870657b23', MANUFACTURER: 'samsung', MODEL: 'SM-G900F' }
200 OK
POST /tmv/device [application/json]
Used to update the Vehicle Reg or the Emergency Contact no.
{ GUID: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
k: 'VREG', v: 'XX 00 XXX' }
200 OK
{ ICEN: null, reg: 'XX 00 XXX', isLocked: 0 }
All calls are make with https protocol / scheme
/tmv/status
POST /tmv/status [application/json]
bump magnitude and location are updated here along with the device power status, in case it's battery powered or a cable has fallen out. Current isLocked status is returned.
{ GUID: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
devEpoch: 1742301990, bumpMag: 0.5973532199859619, satellites: 17, gpsEpoch: 1742301989, lat: 51.04179746, lon: -0.02161447, alt: 117, vel: 0, acc: 3, provider: 'gps', chargeLevel: 100, chargePlug: 1 }
200 OK
{ ICEN: '+447500000000', reg: 'XX 00 XXX', isLocked: 1 }