Trip replay (V2)
Telemetry & replay
Trip replay
Paginated trip replay for a vehicle within a date range.
GET
Trip replay (V2)
Overview
Returns a paginated list of trips for the vehicle betweenfrom and to (both UTC), ordered oldest first. Each trip includes route points, addresses, and a Google Polyline encoded path.
This endpoint is equivalent to V1 Trip Replay (UTC) and Trip replay (user time). V2 is paginated.
Rate limit: 20 requests per 60 seconds per token.
Endpoint
GET /api/v2/replay/{id}
Path parameters
Legacy vehicle ID.
Query parameters
Range start (UTC, ISO 8601).
Range end (UTC, ISO 8601).
Page number (1-based).
Records per page.
Response
200 OK —PagedListResult<TripDto>
| Field | Type | Description |
|---|---|---|
| id | integer | Synthetic trip ID |
| distance | number | null | Trip distance in km (odometer delta — see note below) |
| duration | string | Trip duration as .NET TimeSpan string: "hh:mm:ss" for < 1 day, "d.hh:mm:ss.fffffff" for ≥ 1 day |
| startAddress | string | Reverse-geocoded start address |
| endAddress | string | Reverse-geocoded end address |
| startTimeUser | string | Trip start in user’s timezone (formatted string) |
| endTimeUser | string | Trip end in user’s timezone (formatted string) |
| encoded | string | Google Polyline Algorithm encoded path — decode with any standard polyline library |
| url | string | Google Static Maps thumbnail URL (⚠ requires valid API key configured server-side) |
| points | array | Array of PointDto — see below |
PointDto fields (items in points). All field names are camelCase — no [JsonPropertyName] overrides.
| Field | Type | Description |
|---|---|---|
| id | integer | Synthetic point ID |
| lat | number | Latitude |
| lng | number | Longitude |
| timeUtc | datetime | Point timestamp (UTC, no fractional seconds) |
| speed | number | Speed at this point (km/h) |
| direction | number | Compass heading in degrees (N=0, E=90, S=180, W=270) |
| ignition | boolean | Ignition state at this point |
| timeUser | datetime | Point timestamp in the user’s timezone |
| odo | number | null | Odometer reading at this point (km) |
| fuelLevel | integer | null | Fuel level at this point (%) |
| fuelVolume | number | null | Fuel volume at this point (litres) |
Error responses
| Status | Meaning |
|---|---|
| 401 | Token does not have access to this vehicle |
| 403 | Token scope does not include replay access |
| 404 | Vehicle not found |
| 422 | Invalid date range |
Authorizations
JWT Bearer token obtained from POST /api/v2/authentication/token/api-key.
Lifetime: ~24 hours (86,399 seconds). Cache the token and reuse it. Re-authenticate 5 minutes before expiry.
Scoping: API key tokens are scoped to the company the key belongs to and may restrict access to a vehicle allowlist and/or action set (see token claims).
No refresh endpoint — re-authenticate with your API key when the token expires.
Path Parameters
Query Parameters
Response
Successful response