Ryanair Scraper avatar

Ryanair Scraper

Pricing

from $0.03 / 1,000 scraped fares

Go to Apify Store
Ryanair Scraper

Ryanair Scraper

Scrape Ryanair fares by route, date, flexible date window, passenger mix, price, and sort order. Export prices, flight numbers, local times, duration, airport details, booking links, and scrape timestamps.

Pricing

from $0.03 / 1,000 scraped fares

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

✈️ Ryanair scraper API for flight fares

Ryanair Scraper collects public fare data from Ryanair by route, travel date, flexible date window, passenger mix, maximum price, and sort order. Enter origin and destination airport IATA codes, pick a departure date, and get structured fare rows with prices, passenger fare breakdowns, flight numbers, local times, duration, airport details, source IDs, and booking links.

Use this Ryanair scraper when you need repeatable route fare checks without opening Ryanair pages by hand. It is useful for fare monitoring, route research, price comparison workflows, OTA checks, travel dashboards, and internal tools that need Ryanair flight data through Apify exports, API access, schedules, webhooks, or integrations.

For a quick first run, keep the prefilled STN to DUB route, keep the prefilled date, and leave Maximum fare rows at 100. After you inspect the output, change the airports and date, add a return date, adjust the flexible date window, set a maximum fare price, or call the Actor through the Apify API.

🔎 What this Actor does

  • Searches public Ryanair fare data for one-way and round-trip route inputs.
  • Accepts three-letter IATA airport codes for origin and destination airports.
  • Uses departureDate as the outbound travel date.
  • Uses optional returnDate to search the reverse route as the inbound leg.
  • Supports adult, teen, child, and infant passenger counts.
  • Supports a flexible date window around each submitted travel date.
  • Filters saved fares by maximum price in the source currency when you set one.
  • Sorts saved fares by source order, cheapest, earliest departure, or shortest duration.
  • Saves one dataset item for each accepted Ryanair fare.
  • Works with Apify dataset exports, API clients, schedules, webhooks, and integrations.

The Actor focuses on public Ryanair fare options returned for the submitted route and date window. It does not compare other airlines, book flights, hold fares, log in to Ryanair accounts, redeem vouchers, or scrape seat maps.

📦 Ryanair fare data you can extract

Each dataset item is one Ryanair fare option. Nullable fields are empty when Ryanair does not return that value for the fare.

  • rank - result position after filtering and sorting
  • legDirection, departureDate, and returnDate
  • price - total fare, source currency, and passenger-level fare breakdown
  • flightNumber and carrier
  • departureAirport and arrivalAirport - airport code, name, city, country, and country code when available
  • localDepartureTime, localArrivalTime, and durationMinutes
  • passengers - adult, teen, child, infant, and total passenger counts
  • availability - fares left when Ryanair returns the value
  • fareClass - Ryanair fare class when available
  • sourceIds - Ryanair source identifiers when available
  • bookingUrl - Ryanair page URL for checking or booking the fare

You can export the dataset as JSON, CSV, Excel, XML, RSS, or HTML, or read the same rows from the Apify API.

🚀 How to run it

  1. Open the Input tab.
  2. Enter an origin airport IATA code, such as STN.
  3. Enter a destination airport IATA code, such as DUB.
  4. Pick the outbound departure date.
  5. Add a return date when you want inbound leg rows.
  6. Set adult, teen, child, and infant passenger counts.
  7. Optional: set a flexible date window, maximum price, sort order, and maximum fare rows.
  8. Run the Actor and open the dataset.

⚙️ Input options

Origin airport and Destination airport are three-letter IATA airport codes. The Actor normalizes them to uppercase and stops cleanly when both airports are the same.

Departure date is the outbound travel date to search. Return date is optional. When you add it, the Actor searches the reverse route as an inbound leg and returns those rows with legDirection: "inbound".

Flexible date window sets how many days around each travel date to include. Use 0 for the exact date only, or raise it when you want nearby fare options.

Adults, Teens, Children, and Infants set the passenger mix used for the fare search. The Actor stops cleanly before source traffic when the passenger mix is not accepted by the search rules, such as more infants than adults.

Maximum fare price keeps only fare rows at or below the submitted price in Ryanair's source currency.

Sort fare rows by controls result order before the limit is applied. Use Cheapest for price checks, Earliest departure for schedule checks, Shortest duration for quick trips, or Source order to keep Ryanair's order.

Maximum fare rows caps how many fare rows are saved and charged. Use a small limit for a quick first run.

🧾 Example input

{
"originAirport": "STN",
"destinationAirport": "DUB",
"departureDate": "2026-07-15",
"flexDays": 3,
"adults": 1,
"teens": 0,
"children": 0,
"infants": 0,
"sortBy": "cheapest",
"maxResults": 100
}

📊 Example output

{
"rank": 1,
"legDirection": "outbound",
"departureDate": "2026-07-15",
"returnDate": null,
"price": {
"total": 19.99,
"currency": "GBP",
"passengerFares": [
{
"type": "ADT",
"count": 1,
"amount": 19.99,
"total": 19.99
}
]
},
"flightNumber": "FR256",
"carrier": {
"code": "FR",
"name": "Ryanair"
},
"departureAirport": {
"code": "STN",
"name": "London (Stansted)",
"city": "London (Stansted)",
"country": null,
"countryCode": null
},
"arrivalAirport": {
"code": "DUB",
"name": "Dublin",
"city": "Dublin",
"country": null,
"countryCode": null
},
"localDepartureTime": "22:45",
"localArrivalTime": "00:05",
"durationMinutes": 80,
"passengers": {
"adults": 1,
"teens": 0,
"children": 0,
"infants": 0,
"total": 1
},
"availability": {
"faresLeft": 3
},
"fareClass": null,
"sourceIds": {
"flightKey": "FR~256~STN~07/15/2026 22:45~DUB~07/16/2026 00:05",
"fareKey": null
},
"bookingUrl": "https://www.ryanair.com/gb/en/trip/flights/select?originIata=STN&destinationIata=DUB"
}

💳 Pricing

This Actor uses pay-per-event pricing. You are charged once for each scraped fare saved to the dataset.

Set Maximum fare rows to control the upper bound for one run. Runs with no matching fares complete successfully and do not save placeholder rows.

⚠️ Limits and caveats

  • Prices and availability can change after the run. Use the booking link to verify the fare before acting on it.
  • Currency is returned from Ryanair's source response. The Actor does not convert prices.
  • Round-trip searches return outbound and inbound leg rows, not paired booking itineraries.
  • No-flight routes, sold-out dates, and unavailable source responses can produce zero rows.
  • The Actor does not require Ryanair credentials, cookies, or user-provided proxy settings.

❓ FAQ

🔌 Can I use this as a Ryanair API?

Yes. Run the Actor from Apify Console, call it through the Apify API, schedule recurring runs, or connect results to webhooks and integrations. The output is saved as structured dataset rows.

🔁 Does it support round trips?

Yes. Add returnDate and the Actor searches the reverse route as the inbound leg. Output rows use legDirection so you can separate outbound and inbound fares.

📅 Can I search flexible Ryanair fares?

Yes. Set flexDays to include dates around the submitted departure date and return date. Use 0 when you only want the exact travel date.

🎟️ Does it book flights?

No. It extracts public Ryanair fare data and includes Ryanair links for follow-up. It does not reserve, hold, or buy tickets.

📝 Changelog

  • 1.0: Updated fare rows with route, schedule, price, passenger fare breakdown, availability hints, source IDs, and booking links.
  • 0.1: Initial release.

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

🔗 Other actors

  • Flight Scraper ↗ - Compare public itinerary prices, airlines, stops, duration, baggage hints, and booking links from multiple flight sources.
  • EasyJet Scraper ↗ - Extract EasyJet route fares, flight numbers, local times, duration, airport details, and booking links.
  • Award Flights Scraper ↗ - Search award flight availability by route, date window, cabin, and loyalty program.
  • Realtor Scraper ↗ - Scrape Realtor.com property listings with prices, addresses, photos, agents, and property details.
  • Business Address Scraper ↗ - Find public business addresses from company websites and keep source evidence for each row.

Made with ❤️ by Maxime Dupré