Vehicle Boarding#

The Fleet API supports several different flows for boarding a Vehicle:

  • Passenger Authentication – via onboard methods such as Bluetooth, NFC, or PIN pad

  • Manual Boarding Preparation – triggered externally through the API to complete the boarding process (e.g., open doors)

The boarding preparation process is a critical step in the vehicle’s operation. It ensures that the assigned passenger is near the Vehicle and properly authenticated before boarding.

Depending on the configured operation mode, this preparation can either be:

  • performed directly by the Vehicle, interacting with the passenger (e.g., NFC tap, PIN entry, BLE exchange), or

  • handled externally by the API user (e.g., through a Mobility App that authenticates the passenger and confirms readiness).


Authentication Capabilities#

Vehicles in the Fleet can advertise one or more authentication capabilities:

  • BOARDING_PREPARATION_CAPABILITY_API – API-triggered boarding (external control)

  • BOARDING_PREPARATION_CAPABILITY_NFC – NFC-based authentication

  • BOARDING_PREPARATION_CAPABILITY_BLE – Bluetooth Low Energy authentication

  • BOARDING_PREPARATION_CAPABILITY_PINPAD – PIN pad authentication

Capabilities are exposed per vehicle and per ride, allowing API users to choose a compatible authentication flow.


Authentication Flow#

  1. Authentication Data Provisioning
    When a ride without explicit boarding preparation data is assigned to a vehicle, a BoardingPreparationDataUpdated event is emitted.

    • This event carries authentication tokens or keys needed by the client.

    • The data is sent early to ensure that clients can already prepare, even before the Vehicle reaches the pick-up location.

  2. Boarding Preparation Start
    Once the Vehicle reaches the pick-up waypoint (WaypointReached event), it initiates the boarding preparation process.

    • A BoardingPreparationStarted event is emitted.

    • The event includes:

      • the boarding preparation capabilities available for this ride,

      • the authentication data (e.g., NFC token, BLE secret) required to authenticate.

  3. Passenger Authentication

    • The client or passenger uses the provided data to authenticate with the Vehicle (depending on capability).

    • For API-controlled boarding, the Mobility App ensures authentication externally.

  4. Boarding Preparation Completion

    • Once authentication is successful, a BoardingPreparationCompleted event is emitted.

    • If authentication fails or times out, a BoardingPreparationFailed event may be emitted.


Manual Completion of Boarding Preparation#

If the vehicle supports API-triggered boarding (BOARDING_PREPARATION_CAPABILITY_API), the API user is responsible for explicitly completing the process.

  • The user must issue a SendBoardingPreparationSuccessful command to the Fleet API.

  • This triggers the Vehicle to finalize boarding preparation, which may include opening the doors.

Note

The API user is responsible for ensuring that the passenger is physically at the vehicle and properly authenticated before sending this command.

The outcome can be monitored via Mission Events:

  • Success: A BoardingPreparationCompleted event is emitted.

  • Failure: A BoardingPreparationFailed event is emitted, including error details (e.g., invalid auth data, timeout, passenger not detected).