Base URL
Every endpoint in this reference is documented under/api/stratos — that’s what the phpVMS module uses and what we recommend for consistency. You’re free to mount the surface anywhere; the desktop client just uses whatever base URL is set in your Stratos airline configuration.
So a VA running the reference module ends up with something like https://crew.youva.com/api/stratos, but https://api.youva.com/stratos/v1 or https://crew.youva.com/integrations/stratos works equally well.
Authentication
Most endpoints require a Bearer token — the pilot’s API key, obtained viaPOST /pilot/login or your OAuth flow.
GET / and POST /pilot/login.
Conventions
- JSON,
snake_casefield names. - Distances in nautical miles, weights in pounds, flight times in decimal hours (unless suffixed
_minutes). - Coordinates are decimal degrees (WGS84).
- CORS is wide-open; the client preflights every method.
The flight lifecycle
POST /flights/start
The pilot clicks Start Flight on a bid. The server prefiles a PIREP and returns a
tracking_id.POST /flights/update
Sent at the pilot’s chosen position-update interval (currently 15, 30, or 60 seconds) while the flight is active. Each update writes a flight-path point and advances the PIREP status based on the reported phase.
POST /flights/cancel discards the in-progress PIREP at any point before completion. POST /flights/unbook is unrelated — it just removes a bid the pilot no longer wants to fly.
Minimum viable surface
To get a Stratos client booking and flying, you need:GET /— handshake.POST /pilot/login— issue the pilot an API key.GET /pilot/verify— token re-validation on app launch.GET /data/aircraftandGET /data/airports— reference data.GET /flights/bookings— the pilot’s current bids.POST /flights/start,/update,/complete— the flight lifecycle.
/pilot/statistics, /data/announcements, /flights/search, /flights/cancel, /flights/unbook) is needed for full feature parity but not for a basic round-trip.
Reference implementation
The canonical implementation is the phpVMS 7 module — MIT-licensed, ~1000 lines of Laravel controllers. When this reference and the module disagree, the module wins; please file an issue so we can fix the docs.phpVMS module
Drop-in reference implementation for phpVMS 7.
Install guide
Step-by-step install and configuration walkthrough.