Skip to main content

Idle Report

Vehicle idle time analysis — engine-on idle, engine-off stops, and signal loss periods with geofence context.

GET/apidev/v1/reports/avl/idle
PermissionAPICLI_RPTAVL_DETENIDO
Rate Limit10 req/min (sliding window)
Cache300s (5 min)
Max Range31 days

Overview

Detailed breakdown of every period a vehicle was stationary, classified by ignition state.

  • Ignition filteringignition isolates engine-on idle (fuel waste) vs engine-off stops
  • Geofence contextgeofences restricts to specific zones
  • Duration thresholdidle_min excludes brief stops
  • Subtotalssubtotals=true for aggregated summaries

Query Parameters

ParameterTypeRequiredDefaultDescription
startdatestringYesISO 8601 start date-time
enddatestringYesISO 8601 end date-time. Max range 31 days
devicesstringNoAll visibleComma-separated device IDs. Max 500
geofencesstringNoAllComma-separated geofence IDs. Max 500
idle_minintegerNo0Minimum idle time in minutes
ignitionenumNoallFilter by ignition state: all, on, off
subtotalsbooleanNofalseInclude subtotal rows
limitintegerNo25Records per page (1100)
offsetintegerNo0Records to skip

Code Examples

curl -s "https://$TENANT/apidev/v1/reports/avl/idle?startdate=2026-03-01T00:00:00&enddate=2026-03-15T23:59:59&limit=50&ignition=on" \
-H "Authorization: Bearer $TOKEN" \
-H "X-API-Key: $APIKEY" \
-H "tenant: $TENANT"

Response Fields

FieldTypeDescription
device_namestringDisplay name of the vehicle/device
person_namestringAssigned driver at the time of the event
datetime_startstring | nullTimestamp when the idle period started
datetime_endstring | nullTimestamp when the idle period ended
idle_minnumberDuration of the idle period in minutes
typestringIdle type description (e.g. engine on, engine off, no signal)
addressstringReverse-geocoded address of the idle location
latitudenumber | nullLatitude of the idle location
longitudenumber | nullLongitude of the idle location
geofencesstringGeofence names the idle location falls within. Empty string if none
poisstringNearby points of interest. Empty string if none

Example Response

{
"success": true,
"data": [
{
"device_name": "Van B-205",
"person_name": "Carlos Medina",
"datetime_start": "2026-03-10T11:05:00",
"datetime_end": "2026-03-10T11:47:00",
"idle_min": 42,
"type": "Detenido con ignición encendida",
"address": "Av. 18 de Julio 1234, Montevideo",
"latitude": -34.9011,
"longitude": -56.1645,
"geofences": "Client Zone A",
"pois": ""
}
],
"meta": {
"total": 38,
"limit": 50,
"offset": 0
}
}

Errors

CodeHTTPDescription
BAD_REQUEST400Missing required headers
VALIDATION_ERROR400Invalid params: missing dates, range > 31 days, invalid ignition value
UNAUTHORIZED401Invalid or expired JWT / API Key
FORBIDDEN403User lacks APICLI_RPTAVL_DETENIDO permission
RATE_LIMITED429Exceeded 10 req/min
INTERNAL_ERROR500Unexpected server error