Skip to main content
POST
Flights observed between two places on exact dates (no price)
Returns the trips the flight catalog has observed for one origin, one destination and an exact date pair. trip_type says which kind: oneway (no return_date) or roundtrip (return_date required); a round trip is an outbound + inbound pairing that was actually observed together, never a combination built from two one-ways. The answer carries no price, and last_seen is when a fare search last observed the trip, not a statement that it can be booked. Results are paged: send pagination.next_page_token back as page_token until it is empty.

Authorizations

X-API-Key
string
header
required

Body

application/json
origin
string
required
Pattern: ^[A-Za-z]{3}$
Example:

"BOS"

destination
string
required
Pattern: ^[A-Za-z]{3}$
Example:

"NCE"

trip_type
enum<string>
required

oneway returns trips observed as one-way offers and takes no return_date. roundtrip returns observed outbound + inbound pairings and requires return_date.

Available options:
oneway,
roundtrip
Example:

"roundtrip"

departure_date
string
required

Local departure day of the outbound journey.

Pattern: ^\d{4}-\d{2}-\d{2}$
Example:

"2026-10-11"

origin_type
enum<string>

How to read the code: city (default) expands a city code to all of its airports; airport restricts to that one airport.

Available options:
city,
airport
destination_type
enum<string>

How to read the code: city (default) expands a city code to all of its airports; airport restricts to that one airport.

Available options:
city,
airport
return_date
string

Local departure day of the inbound journey. Required when trip_type is roundtrip; not accepted when it is oneway.

Pattern: ^\d{4}-\d{2}-\d{2}$
Example:

"2026-10-18"

cabin_class
enum<string>

Filters on the trip’s cabin (the highest over its segments). Omit for all cabins — unlike flight search there is no economy default.

Available options:
economy,
premium_economy,
business,
first
max_stops
integer

Most stops allowed in EACH direction. Omit for no bound.

Required range: 0 <= x <= 3
Example:

1

limit
integer

Page size. Defaults to 50.

Required range: 1 <= x <= 200
Example:

50

page_token
string

pagination.next_page_token of the previous page. Send it with the same request fields.

Minimum string length: 1
intent
object

Response

Observed trips; trips is empty when nothing matches

trips
object[]
required

The page of observed trips. Empty when nothing matches.

total
integer
required

Trips matching the whole request across all pages. A lower bound when truncated is true.

Example:

116

truncated
boolean
required

True when an airport pair held more trips than one catalog read covers. Narrow by cabin_class, max_stops or a single airport to see the rest.

pagination
object
required