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 Vehicle

  • mission – 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 optional count 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. a child_seat takes up 1 seat).

  • associatedConvertible linking a capacity type with a convertibleType. For example, when a child seat is installed on top of a regular seat, a unit of the seat capacity type is taken up by a unit of the child_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).