New API is in preview! Subject to change. Send feedback to contact@mtd.dev

Vehicles

Includes buses and some service vehicles. All vehicles belong to a vehicle configuration, which contains details about that fleet's powertrain and acquisition.

API Definitions

Get a vehicle

Path Parameters

vehicleId

string

required

The id of a vehicle.

Query Parameters

No query parameters.

Response Object

id

string

The number displayed on the side of the vehicle.
vehicleConfigurationId

string

The ID of the vehicle configuration this vehicle belongs to.
isActive

boolean

True if this vehicle is currently in the active fleet. Does not indicate whether the vehicle is currently running a route.
dateInService

string | null

The date the vehicle was put into service (YYYY-MM-DD).
GEThttps://api.mtd.dev/vehicles/{vehicleId}
curl -X GET "https://api.mtd.dev/vehicles/{vehicleId}" \
  -H "X-ApiKey: YOUR_API_KEY"
Sample Response Object
{
	"result": {
		"id": "1346",
		"vehicleConfigurationId": "2771c386-b316-4dbb-89d0-a89e3c774bff",
		"isActive": true,
		"dateInService": "2013-01-10"
	},
	"error": null
}

Get a vehicle configuration

Path Parameters

configurationId

string

required

The id of a vehicle configuration.

Query Parameters

No query parameters.

Response Object

id

string

Stable identifier for this vehicle configuration.
vehicleType

integer

The type of vehicle.
ValueDefinition
0Bus
1ADA Van
2C-Carts Van
3DRES Van
4Supervisor Vehicle
5Maintenance Vehicle
6Pool Car
7Tractor
8Historical
year

integer | string

The model year.
make

string

The vehicle manufacturer.
model

string

The vehicle model.
lengthFeet

integer | string | null

The vehicle length in feet.
powertrain

integer

The powertrain type.
GEThttps://api.mtd.dev/vehicles/configurations/{configurationId}
curl -X GET "https://api.mtd.dev/vehicles/configurations/{configurationId}" \
  -H "X-ApiKey: YOUR_API_KEY"
Sample Response Object
{
	"result": {
		"id": "2771c386-b316-4dbb-89d0-a89e3c774bff",
		"vehicleType": 0,
		"year": 2013,
		"make": "New Flyer",
		"model": "XDE40",
		"lengthFeet": 40,
		"powertrain": 2
	},
	"error": null
}

Get all vehicle configurations

Path Parameters

No path parameters.

Query Parameters

No query parameters.

Response Object

id

string

Stable identifier for this vehicle configuration.
vehicleType

integer

The type of vehicle.
ValueDefinition
0Bus
1ADA Van
2C-Carts Van
3DRES Van
4Supervisor Vehicle
5Maintenance Vehicle
6Pool Car
7Tractor
8Historical
year

integer | string

The model year.
make

string

The vehicle manufacturer.
model

string

The vehicle model.
lengthFeet

integer | string | null

The vehicle length in feet.
powertrain

integer

The powertrain type.
GEThttps://api.mtd.dev/vehicles/configurations
curl -X GET "https://api.mtd.dev/vehicles/configurations" \
  -H "X-ApiKey: YOUR_API_KEY"
Sample Response Object
{
	"result": [
		{
			"id": "0e029025-5166-4486-9ee0-f9c34207aeed",
			"vehicleType": 0,
			"year": 2011,
			"make": "New Flyer",
			"model": "DE40LFR",
			"lengthFeet": 40,
			"powertrain": 2
		},
		{
			"id": "18ccf143-21e3-4163-858c-3ffe35e3b8e0",
			"vehicleType": 0,
			"year": 2022,
			"make": "New Flyer",
			"model": "XDE60",
			"lengthFeet": 60,
			"powertrain": 2
		}
	],
	"error": null
}

Get a vehicle location

Path Parameters

vehicleId

string

required

The id of a vehicle.

Query Parameters

No query parameters.

Response Object

id

string

The number displayed on the side of the vehicle.
location

object | null

The current vehicle location.

latitude

float

Latitude coordinate.
longitude

float

Longitude coordinate.
lastUpdated

string | null

The time the realtime vehicle position was last updated.
trip

object | null

Trip details associated with the vehicle's assigned trip, when available.

id

string

Stable identifier for this trip.
headsign

string

The headsign for this trip.
direction

object | null

The direction of travel for this trip.

id

integer | null

Direction id (0 or 1).
name

string

Direction display name.
shortName

string | null

Short direction code.
route

object | null

Route details associated with the vehicle's assigned trip, when available.

id

string

Stable identifier for the route.
routeGroupId

string | null

Stable identifier for the route group.
gtfsRouteId

string

Stable GTFS route identifier.
longName

string | null

Long route name.
shortName

string | null

Short route name or number.
color

string | null

Hex route color code without #.
textColor

string | null

Hex text color code without #.
GEThttps://api.mtd.dev/vehicles/{vehicleId}/location
curl -X GET "https://api.mtd.dev/vehicles/{vehicleId}/location" \
  -H "X-ApiKey: YOUR_API_KEY"
Sample Response Object
{
	"result": {
		"id": "1612",
		"location": {
			"latitude": 40.116617,
			"longitude": -88.2075
		},
		"lastUpdated": "2026-04-07T18:47:50.8386734+00:00",
		"trip": {
			"id": "[@14.0.52435578@][4][1275670882890]/11__O4_RUBY_MF",
			"headsign": "Illinois Terminal",
			"direction": {
				"id": 1,
				"name": "West",
				"shortName": "W"
			}
		},
		"route": {
			"id": "45eb37e3-c484-469f-89c9-8eb9ec9a43ec",
			"gtfsRouteId": "ORANGEHOPPER",
			"longName": "Orange",
			"shortName": "6",
			"color": "f99f2a",
			"textColor": "000000"
		}
	},
	"error": null
}

Get all vehicle locations

Path Parameters

No path parameters.

Query Parameters

No query parameters.

Response Object

id

string

The number displayed on the side of the vehicle.
location

object | null

The current vehicle location.

latitude

float

Latitude coordinate.
longitude

float

Longitude coordinate.
lastUpdated

string | null

The time the realtime vehicle position was last updated.
trip

object | null

Trip details associated with the vehicle's assigned trip, when available.

id

string

Stable identifier for this trip.
headsign

string

The headsign for this trip.
direction

object | null

The direction of travel for this trip.

id

integer | null

Direction id (0 or 1).
name

string

Direction display name.
shortName

string | null

Short direction code.
route

object | null

Route details associated with the vehicle's assigned trip, when available.

id

string

Stable identifier for the route.
routeGroupId

string | null

Stable identifier for the route group.
gtfsRouteId

string

Stable GTFS route identifier.
longName

string | null

Long route name.
shortName

string | null

Short route name or number.
color

string | null

Hex route color code without #.
textColor

string | null

Hex text color code without #.
GEThttps://api.mtd.dev/vehicles/locations
curl -X GET "https://api.mtd.dev/vehicles/locations" \
  -H "X-ApiKey: YOUR_API_KEY"
Sample Response Object
{
	"result": [
		{
			"id": "2102",
			"location": {
				"latitude": 40.1162,
				"longitude": -88.19825
			},
			"lastUpdated": "2026-04-07T18:37:20.4313484+00:00",
			"trip": null,
			"route": null
		},
		{
			"id": "1722",
			"location": {
				"latitude": 40.115417,
				"longitude": -88.198567
			},
			"lastUpdated": "2026-04-07T18:37:20.4314403+00:00",
			"trip": null,
			"route": null
		}
	],
	"error": null
}

Get all vehicles

Path Parameters

No path parameters.

Query Parameters

No query parameters.

Response Object

id

string

The number displayed on the side of the vehicle.
vehicleConfigurationId

string

The ID of the vehicle configuration this vehicle belongs to.
isActive

boolean

True if this vehicle is currently in the active fleet. Does not indicate whether the vehicle is currently running a route.
dateInService

string | null

The date the vehicle was put into service (YYYY-MM-DD).
GEThttps://api.mtd.dev/vehicles
curl -X GET "https://api.mtd.dev/vehicles" \
  -H "X-ApiKey: YOUR_API_KEY"
Sample Response Object
{
	"result": [
		{
			"id": "e88c48c3-4999-4b6e-8b08-2231b6e2afb6",
			"vehicleNumber": "1346",
			"vehicleConfigurationId": "2771c386-b316-4dbb-89d0-a89e3c774bff",
			"isActive": true,
			"dateInService": "2013-01-10"
		},
		{
			"id": "95a662ef-ff6d-41b7-9378-4b49536dddae",
			"vehicleNumber": "1347",
			"vehicleConfigurationId": "2771c386-b316-4dbb-89d0-a89e3c774bff",
			"isActive": true,
			"dateInService": "2013-01-15"
		}
	],
	"error": null
}
* * *