Skip to main content
POST
Error

Authorizations

Authorization
string
header
required

The pilot's API key, obtained via POST /pilot/login or your OAuth flow. Send as Authorization: Bearer <api_key> on every authenticated request.

Body

application/json
bid_id
integer
required
aircraft_id
integer
required

Must be one of the IDs from GET /flights/bookings/{bid}/aircraft.

Response

Updated booking.

bid_id
integer
required

Unique bid ID. Used by /flights/start and /flights/unbook.

number
string
required

Flight number (no airline code).

code
string
required

Operating airline code.

departure_airport
string
required

Departure airport ID (ICAO).

Example:

"YSSY"

arrival_airport
string
required
Example:

"YMML"

route
string[]
required

Route waypoints split on whitespace. Empty array if no route is filed.

Example:
flight_level
string
required

Cruise altitude as filed (free-form string, e.g. 360 or FL360).

distance
number<float>
required

Great-circle distance in the VA's configured local unit (typically nautical miles).

departure_time
string
required

Scheduled departure, free-form per VA setting.

Example:

"0930"

arrival_time
string
required
Example:

"1145"

flight_time
number<float>
required

Scheduled flight time in decimal hours.

Example:

1.42

days_of_week
integer[]
required

Days the flight operates (0 = Sunday). Empty if not configured.

Required range: 0 <= x <= 6
type
enum<string>
required

Coarse flight category derived from phpVMS's flight_type. P = passenger (scheduled/charter/extra/govt/other), C = cargo (ambulance/cargo/training/mail/military/positioning/special/general aviation/technical).

Available options:
P,
C
aircraft
integer | null
required

Aircraft ID assigned to the bid: the SimBrief airframe if set, otherwise the bid's aircraft. Null when no aircraft is assigned — the pilot must pick one (e.g. via /flights/change-aircraft) before starting.

notes
string
required
aircraft_changeable
boolean

Whether the pilot may switch the aircraft for this bid before starting. False when the authenticated pilot has their own SimBrief OFP for this flight — per-pilot, so another pilot's OFP does not lock it. Drives the client's dropdown-vs-text rendering.