Prices in this command’s output are integers in minor units. Money objects
carry
decimal_places — divide by 10 ** decimal_places to display
({ "value": 15977, "decimal_places": 2 } is 159.77, not 15,977). See
Money & prices.applied_filters) and which they do not, with a reason (unapplied_filters).
Usage
jinko flight-search [options]
Options
| Flag | Required | Description | Default |
|---|---|---|---|
--origin <code> | Yes, search mode | origin IATA code (e.g. PAR for city, JFK for airport). JSON: origin. | |
--destination <code> | Yes, search mode | destination IATA code (e.g. NYC for city, LAX for airport). JSON: destination. | |
--origin-type <type> | No | how to read —origin: city (every airport of the metro area) or airport. Omit to let the platform classify the code. JSON: origin_type. | |
--destination-type <type> | No | how to read —destination: city (every airport of the metro area) or airport. Omit to let the platform classify the code. JSON: destination_type. | |
--departure-date <date> | Yes, search mode | departure date (YYYY-MM-DD). JSON: departure_date. | |
--return-date <date> | No | return date for round-trip (YYYY-MM-DD). JSON: return_date. | |
--trip-type <type> | No | oneway or roundtrip (default: roundtrip when —return-date is set, else oneway). JSON: trip_type. | |
--adults <n> | No | number of adult passengers (default: 1). JSON: adults. | |
--children <n> | No | number of child passengers. JSON: children. | |
--infants <n> | No | number of infant passengers. JSON: infants. | |
--cabin-class <class> | No | preferred cabin: economy, premium_economy, business, first (default: economy). Advisory, providers may still return other cabins, and it never appears in applied_filters. JSON: cabin_class. | |
--direct-only | No | only show direct flights. DEPRECATED in the contract, prefer —max-stops 0; the report always names max_stops. JSON: direct_only. | |
--max-stops <n> | No | maximum stops per leg: 0 non-stop, 1 one connection, 2 two. JSON: max_stops. | |
--multi-fare | No | return the branded fare ladder, several fares per itinerary (the platform default). JSON: multi_fare. | |
--no-multi-fare | No | return a single fare per itinerary and a smaller response. JSON: multi_fare. | |
--max-price <amount> | No | drop fares whose total price for all passengers exceeds this cap, in —currency, major units. JSON: max_price. | |
--include-carriers <codes...> | No | include only these IATA 2-letter carrier codes (e.g. AF KL). JSON: include_carriers. | |
--exclude-carriers <codes...> | No | exclude these IATA 2-letter carrier codes (e.g. FR U2). JSON: exclude_carriers. | |
--departure-time-range <window> | No | filter the OUTBOUND leg by local departure time-of-day, HH:MM-HH:MM (either bound may be omitted, e.g. 08:00- or -12:00). JSON: departure_time_range. | |
--arrival-time-range <window> | No | filter the OUTBOUND leg by local arrival time-of-day, HH:MM-HH:MM. JSON: arrival_time_range. | |
--return-departure-time-range <window> | No | filter the RETURN leg by local departure time-of-day, HH:MM-HH:MM (round-trip only). JSON: return_departure_time_range. | |
--return-arrival-time-range <window> | No | filter the RETURN leg by local arrival time-of-day, HH:MM-HH:MM (round-trip only). JSON: return_arrival_time_range. | |
--connection-time-min-minutes <n> | No | shortest acceptable layover, in minutes, on every connection. JSON: connection_time_min_minutes. | |
--connection-time-max-minutes <n> | No | longest acceptable layover, in minutes, on every connection. JSON: connection_time_max_minutes. | |
--max-total-duration-minutes <n> | No | cap each leg’s door-to-door elapsed travel time, in minutes. JSON: max_total_duration_minutes. | |
--single-carrier-only | No | only itineraries marketed end-to-end by one carrier. JSON: single_carrier_only. | |
--via-airports <codes...> | No | restrict connections to these airports, an itinerary qualifies when at least one connection is one of them; non-stops are kept. JSON: via_airports. | |
--exclude-via-airports <codes...> | No | ban connections at these airports. Must not overlap —via-airports. JSON: exclude_via_airports. | |
--aircraft-types <codes...> | No | only itineraries whose every segment flies one of these IATA equipment codes (e.g. 320 77W). JSON: aircraft_types. | |
--same-connection-airport-only | No | only itineraries whose connections leave from the airport they arrived at (no cross-town transfer). JSON: same_connection_airport_only. | |
--same-origin-airport-only | No | only round trips that return to the airport the trip departed from. JSON: same_origin_airport_only. | |
--same-turnaround-airport-only | No | only round trips whose return departs from the airport the outbound arrived at. JSON: same_turnaround_airport_only. | |
--origin-alternate-airports <codes...> | No | ADDITIONAL departure airports searched alongside —origin (widening only). Takes effect with an airport anchor; against a city anchor the list comes back under origin in unapplied_filters. The anchor decides ranking, so put the airport that matters most in —origin. JSON: origin_alternate_airports. | |
--destination-alternate-airports <codes...> | No | ADDITIONAL arrival airports searched alongside —destination (widening only). Same anchor rules as —origin-alternate-airports; reported under destination. JSON: destination_alternate_airports. | |
--nearby-airports | No | also search the alternate airports around each leg’s origin and destination (widening). JSON: nearby_airports. | |
--refundable-only | No | only fares that can be cancelled before departure. Conservative, fares whose rules cannot be verified are dropped. JSON: refundable_only. | |
--changeable-only | No | only fares that allow a voluntary change. Conservative in the same way as —refundable-only. JSON: changeable_only. | |
--checked-bag-included | No | only fares whose price already includes a checked bag. JSON: checked_bag_included. | |
--limit <n> | No | TOTAL flights to return (1-300), not a page size. Search mode only; omit to let the platform choose. JSON: limit. | |
--currency <code> | No | ISO 4217 currency for the returned prices and —max-price. JSON: currency. | |
--locale <locale> | No | locale for provider-supplied text (e.g. fr-FR). JSON: locale. | |
--offer-token <token> | Yes, price-check mode | price-check a specific offer (live pricing). JSON: offer_token. | |
--user-intent <text> | No | the end user’s request in their own words, forwarded to Jinko for observability and relevance (avoid PII). Env fallback: JINKO_USER_INTENT. JSON: intent.user_intent. |
Examples
# Price-check a discovery offer
jinko flight-search --offer-token "$OFFER_TOKEN" --format json | jq '.fares[0]'
# Live search by route
jinko flight-search --origin CDG --destination JFK --departure-date 2026-06-15 --return-date 2026-06-22 \
--adults 2 --cabin-class economy --format json
