AviationService

SearchFlightPrices

Search per-person flight price offers by route, dates and cabin, with indicative-price and provider status. PRO-gated. Requires an active Pro subscription.

get/api/aviation/v1/search-flight-prices

Request

  • Base URL: https://api.worldmonitor.app
  • URL: https://api.worldmonitor.app/api/aviation/v1/search-flight-prices
  • Auth: one of:
    • API key in header X-WorldMonitor-Key
    • API key in header X-Api-Key
    • HTTP bearer

Query parameters

originstring required

Origin airport IATA code.

destinationstring required

Destination airport IATA code.

departure_datestring required

Outbound departure date (ISO 8601).

return_datestring

Return date (ISO 8601), empty for one-way.

adultsinteger

Number of adult passengers (1-9). Accepted but currently ignored; quotes are per-person and the count does not filter.

cabin'CABIN_CLASS_ECONOMY' | 'CABIN_CLASS_PREMIUM_ECONOMY' | 'CABIN_CLASS_BUSINESS' | 'CABIN_CLASS_FIRST'

Desired cabin class.

nonstop_onlyboolean

Whether to restrict to nonstop flights only.

max_resultsinteger

Maximum number of quotes to return (1-50).

currencystring

ISO 4217 currency code for prices (e.g., "usd", "eur", "try").

marketstring

Market/locale code (e.g., "us", "tr").

jmespathstring

Optional JMESPath expression applied server-side to project or reduce the JSON response before it is returned (mirrors the MCP jmespath argument). Invalid expressions, expressions larger than 1024 UTF-8 bytes, or projections that exceed the 256 KB output cap return HTTP 400 with a {_jmespath_error, original_keys} envelope. Grammar and worked examples: https://www.worldmonitor.app/docs/mcp-jmespath.

Response

OK

providerstring

Provider name: "travelpayouts_data", "demo", or "none" when no live provider is configured.

isDemoModeboolean

Whether results are from demo/simulated mode. Requires explicit AVIATION_DEMO_PRICES=1 opt-in on the server. Never true in default self-host / production runs. See issue #3756.

updatedAtinteger

Warning: Values > 2^53 may lose precision in JavaScript

isIndicativeboolean

Whether returned prices are indicative (subject to change).

degradedboolean

True when the live provider could not satisfy the request — missing credentials, upstream failure, or zero results. Mirrors the searchGoogleFlights pattern so clients can render distinct messages for each error class.

errorstring

Discriminator for the degraded state: "" (ok), "missing_credentials" (TRAVELPAYOUTS_API_TOKEN unset), "upstream_error" (provider call threw), "no_results" (provider returned empty for this route).

Changes

No recorded changes to this operation across all 1 revision of this API.