Vehicle#
The Vehicle is the core object in the Fleet API. It represents a physical or simulated unit in the fleet and exposes both its state and capabilities including its capacity, location, and current mission.
Vehicle Object#
A Vehicle
contains the following key fields:
id
– Unique identifier of the Vehicle within the Fleet.telemetry
– Latest location, heading and speed of the Vehicle.configuration
type of vehicle (i.e. self driving)capacity
– The capacity of this Vehiclemission
– The ordered list of zero or more Waypoints with Waypoint Actions currently assigned to the Vehicle.status
– Current operational status of the Vehicle (e.g., available, busy, offline).
Capacity#
Capacity describes the maximum load a Vehicle can carry. For passenger fleets, this primarily represents the number of passengers that can be transported. For future multi-purpose fleets, capacity may represent different load types (e.g., packages, mixed transport). This can be used by clients to ensure that the Vehicle has sufficient capacity for the requested Ride.
Each Vehicle
includes a capacity
section, which specifies:
capacityDefinitionId
– the identifier of the capacity definition (e.g. “static”).types
– a list of capacity types supported by the Vehicle, each with an optionalcount
indicating how many units are available (e.g. seats, child seats, wheelchair spaces).convertibleTypes
– capacity types that can dynamically convert into another type (e.g. a convertible child seat), depending on how the vehicle is configured.
"capacity": {
"capacityDefinitionId": "static",
"types": [
{
"key": "seat",
"count": 4
},
{
"key": "child_seat",
"count": 1
},
{
"key": "booster_seat",
"count": 1
},
{
"key": "wheelchair_space",
"count": 0
}
],
"convertibleTypes": [
{
"key": "convertible_child_seat",
"count": 1
}
]
}
CapacityDefinition#
The CapacityDefinition
defines one or more capacity slots that a Vehicle supports. Each slot describes a dimension of capacity that can be consumed when missions or rides are assigned.
Each Vehicle
includes a capacity
section, which specifies:
capacityDefinitionId
– the identifier of the capacity definition (e.g. “static”).types
– a list of capacity types supported by the Vehicle (e.g. seats, child seats, wheelchair spaces).convertibleTypes
– a list of capacity types that can dynamically convert into another type (e.g. a convertible child seat).
Each capacity type
/ convertibleType
have optional:
count
indicating how many units are normally available. The counts for specific vehicles might be different (e.g. when one seat is broken).claims
detailing the number of units of other capacity types taken up by a unit of this capacity type (i.e. achild_seat
takes up 1seat
).associatedConvertible
linking a capacity type with aconvertibleType
. For example, when a child seat is installed on top of a regular seat, a unit of theseat
capacity type is taken up by a unit of thechild_seat
capacity type (i.e. 1 child_seat takes up 1 seat).
{
"capacityDefinition": {
"id": "static",
"types": [
{
"key": "seat",
"count": 6
},
{
"key": "child_seat",
"claims": [
{
"key": "seat",
"count": 1
}
],
"associatedConvertible": "convertible_child_seat"
},
{
"key": "booster_seat",
"count": 1,
"claims": [
{
"key": "seat",
"count": 1
}
],
"associatedConvertible": "convertible_child_seat"
},
{
"key": "wheelchair_space"
}
],
"convertibleTypes": [
{
"key": "convertible_child_seat",
"count": 1,
"claims": [
{
"key": "seat",
"count": 1
}
]
}
]
}
}
convertibleTypes
define physical, convertible capacity units that can be configured into other capacity modes. In the example above a convertible_child_seat
can be used as either a child_seat
or booster_seat
).