Skip to content

Vehicles, groups & drivers ​

List vehicles ​

GET /fleet/vehicles

Every vehicle in the organisation, whether or not it has reported a position. Sorted by id.

Query parameters ​

NameTypeDescription
groupIdstringOnly vehicles in this group. 404 if the group doesn't exist.
statusstringACTIVE, INACTIVE, MAINTENANCE or RETIRED.
limit, cursorSee Pagination.

Example ​

bash
curl "https://api.routetracks.com/api/v1/partner/v1/fleet/vehicles?limit=2" \
  -H "Authorization: Bearer $TOKEN"
json
{
  "data": [
    {
      "id": "cm1veh0003",
      "licensePlate": "WP CAB-1234",
      "trailerLicensePlate": "WP TR-5521",
      "make": "Isuzu",
      "model": "NPR",
      "year": 2021,
      "vin": "JALC4B16007000123",
      "status": "ACTIVE",
      "workStatus": "Loading",
      "odometerKm": 184230,
      "customFields": [
        { "key": "cost_center", "name": "Cost center", "fieldType": "TEXT", "value": "North" },
        { "key": "axles", "name": "Axles", "fieldType": "NUMBER", "value": null }
      ],
      "groups": [
        { "id": "cm1grp0001", "name": "Colombo North" }
      ],
      "driver": { "id": "cm1drv0007", "name": "Nimal Perera", "phone": "+94771234567" },
      "createdAt": "2025-03-14T09:12:00.000Z",
      "updatedAt": "2026-10-20T06:40:11.000Z"
    },
    {
      "id": "cm1veh0004",
      "licensePlate": "WP CAB-5678",
      "trailerLicensePlate": null,
      "make": "Tata",
      "model": "LPT 1615",
      "year": 2019,
      "vin": null,
      "status": "ACTIVE",
      "workStatus": null,
      "odometerKm": 263400,
      "customFields": [
        { "key": "cost_center", "name": "Cost center", "fieldType": "TEXT", "value": null },
        { "key": "axles", "name": "Axles", "fieldType": "NUMBER", "value": 3 }
      ],
      "groups": [],
      "driver": null,
      "createdAt": "2025-03-14T09:15:00.000Z",
      "updatedAt": "2026-09-02T11:00:00.000Z"
    }
  ],
  "meta": { "limit": 2, "hasMore": true, "nextCursor": "eyJ2IjoxLCJpZCI6ImNtMXZlaDAwMDQifQ" }
}

Fields ​

FieldTypeDescription
idstringVehicle ID. The same ID is used by every other endpoint.
licensePlatestringRegistration plate as entered.
trailerLicensePlatestring | nullAttached trailer, if recorded.
make, model, year, vinVehicle details, null when not recorded.
statusstringFleet lifecycle state: ACTIVE, INACTIVE, MAINTENANCE, RETIRED.
workStatusstring | nullThe organisation's own current status for the vehicle, for example "Loading".
odometerKmnumberOdometer reading in km.
customFieldsarrayEvery custom field the organisation has defined for vehicles. value is null when this vehicle has none. fieldType is TEXT, NUMBER, DATE, BOOLEAN, SELECT or MULTI_SELECT. DATE and SELECT values are strings. MULTI_SELECT is a string array.
groupsarrayGroups the vehicle belongs to (a vehicle can be in several).
driverobject | nullDriver currently assigned to the vehicle.

Get a vehicle ​

GET /fleet/vehicles/{vehicleId}

Returns one vehicle object (same fields as above, not wrapped in data). 404 if it doesn't exist.

List groups ​

GET /fleet/groups

json
{
  "data": [
    {
      "id": "cm1grp0001",
      "name": "Colombo North",
      "description": "Northern distribution routes",
      "color": "#2563eb",
      "vehicleCount": 14
    }
  ],
  "meta": { "limit": 100, "hasMore": false, "nextCursor": null }
}

Takes limit and cursor.

List drivers ​

GET /fleet/drivers

NameTypeDescription
statusstringACTIVE, INACTIVE or SUSPENDED.
limit, cursorSee Pagination.
json
{
  "data": [
    {
      "id": "cm1drv0007",
      "name": "Nimal Perera",
      "phone": "+94771234567",
      "email": "nimal@example.com",
      "employeeReference": "EMP-0042",
      "licenseNumber": "B1234567",
      "licenseExpiryDate": "2028-05-31",
      "status": "ACTIVE",
      "vehicle": { "id": "cm1veh0003", "licensePlate": "WP CAB-1234" }
    }
  ],
  "meta": { "limit": 100, "hasMore": false, "nextCursor": null }
}

vehicle is the vehicle the driver is currently assigned to, or null.

Partner API v1