Kayak Flights Scraper avatar

Kayak Flights Scraper

Pricing

from $0.20 / 1,000 results

Go to Apify Store
Kayak Flights Scraper

Kayak Flights Scraper

Get Kayak one-way or round-trip itineraries with flight legs, travel times, provider counts, and shareable links. Add several origin-destination routes in one run to compare fares or plan trips.

Pricing

from $0.20 / 1,000 results

Rating

0.0

(0)

Developer

Scrappa

Scrappa

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 hours ago

Last modified

Categories

Share

Search Kayak for airport routes and collect itinerary IDs, flight legs, timing, provider counts, and shareable result links. Choose one-way or round-trip searches.

What data can you extract?

FieldTypeDescription
resultIdStringIdentifier for the flight itinerary in this Kayak result set.
typeStringKayak trip type for the itinerary, such as one-way or round trip.
shareableIdStringKayak identifier used to reopen the saved itinerary search.
shareableUrlStringURL that opens this itinerary or its search results on Kayak.
legsArray<object>Flight segments with airports, departure and arrival times, and duration.
totalProvidersIntegerNumber of booking providers offering this itinerary.
totalBookingOptionsIntegerNumber of distinct booking choices reported for the itinerary.
input_routeObjectOrigin, destination, and any dates submitted for this route search.
scraped_atStringUTC date and time when this itinerary was collected.

Use cases

  • Travel planners can compare itineraries across multiple airport routes.
  • Travel agencies can check providers, flight times, and booking choices.
  • Fare analysts can track options for one-way and round-trip searches.

How to use

  1. Add one route object with origin and destination to flights per search.
  2. Choose one-way or round-trip; omitted dates are set relative to today.
  3. Set passenger and cabin options, then cap pages and results.
{
"flights": [
{
"origin": "JFK",
"destination": "LAX"
}
],
"tripType": "one-way",
"maxResults": 20,
"maxPages": 2
}

Input

FieldTypeRequiredDescription
flightsArray<object>YesFlight routes with an origin and destination for each search.
flights[].originstringYes per entry3-letter IATA airport or metro code.
flights[].destinationstringYes per entry3-letter IATA airport or metro code.
flights[].departure_datestringNoDeparture date in YYYY-MM-DD format. When omitted, departure is set to 30 days from today.
flights[].adultsintegerNoAdult passengers, 1-9.
flights[].childrenintegerNoChild passengers, 0-8.
flights[].infants_in_seatintegerNoInfants with a seat, 0-8.
flights[].infants_on_lapintegerNoLap infants, 0-8.
flights[].cabinstringNoeconomy, premium_economy, business, or first.
flights[].sortstringNobest, price, or duration.
flights[].pageintegerNoResults page, 1-20.
flights[].currencystringNo3-letter ISO currency code.
flights[].localestringNoLanguage locale such as en-US.
flights[].include_price_predictionbooleanNoInclude available price insight data.
flights[].include_display_metadatabooleanNoInclude available display and offer metadata.
flights[].return_datestringConditionalReturn date in YYYY-MM-DD format. Required when tripType is round-trip. Required for Round trip searches. When omitted for a round trip, return is set to 4 days after departure.
destinationstringNo3-letter IATA airport or metro code.
departure_datestringNoDeparture date in YYYY-MM-DD format. When omitted, departure is set to 30 days from today.
adultsintegerNoAdult passengers, 1-9.
childrenintegerNoChild passengers, 0-8.
infants_in_seatintegerNoInfants with a seat, 0-8.
infants_on_lapintegerNoLap infants, 0-8.
cabinstringNoeconomy, premium_economy, business, or first.
sortstringNobest, price, or duration.
pageintegerNoResults page, 1-20.
currencystringNo3-letter ISO currency code.
localestringNoLanguage locale such as en-US.
include_price_predictionbooleanNoInclude available price insight data.
include_display_metadatabooleanNoInclude available display and offer metadata.
return_datestringConditionalReturn date in YYYY-MM-DD format. Required when tripType is round-trip. Required for Round trip searches. When omitted for a round trip, return is set to 4 days after departure.
tripTypestringNoChoose a one-way or round-trip search. Round-trip routes use a return date.
maxResultsintegerNoMaximum dataset items to save across this entire run.
maxPagesintegerNoMaximum pages to request for each batch entry.

Output example

{
"resultId": "FL-JFK-LAX-20261114-01",
"type": "ONE_WAY",
"shareableId": "8f31b7",
"shareableUrl": "https://www.kayak.com/flights/JFK-LAX/2026-11-14",
"legs": [
{
"id": "leg-1",
"departure": "2026-11-14T08:00:00Z",
"arrival": "2026-11-14T11:00:00Z",
"duration": 360
}
],
"totalProviders": 2,
"totalBookingOptions": 3,
"input_route": {
"origin": "JFK",
"destination": "LAX"
},
"scraped_at": "2026-10-01T12:00:00Z"
}

Pricing

$0.30 per 1,000 results. Apify saves one dataset item per result and applies the Actor’s per-result price to saved items.

Pagination follows the source response. Set maxPages per batch entry and maxResults across the run.

FAQ

Rules depend on the source, location, data type, and intended use. Check applicable laws and source terms, and make sure your workflow follows privacy and data protection requirements.

What limits apply?

Submit up to 100 batch entries per run. Use maxResults to cap saved items and maxPages to limit pages for each entry. Results also depend on source availability and your Scrappa API plan.

Can I start runs through the Apify API?

Yes. Send a POST request to https://api.apify.com/v2/acts/thescrappa~kayak-flights-scraper/runs with your Actor input, or use an Apify client library. Read the output from the run dataset.

Can I connect the results to other tools?

Yes. Apify integrations and APIs can pass dataset results to Make, Zapier, n8n, Google Sheets, and other data workflows.

What happens when one input fails?

The Actor logs a short source error and continues with the remaining entries. Transient rate limits and gateway errors are retried; if every entry fails, the run reports an error.

How are travel dates chosen when omitted?

Departure defaults to 30 days from the run date. A round-trip return defaults to four days later; dates can be overridden per route or at the top level.