Skip to content

Instantly share code, notes, and snippets.

@vool
Last active May 17, 2025 21:02
Show Gist options
  • Save vool/bbd64eeee313d27a82ab to your computer and use it in GitHub Desktop.
Save vool/bbd64eeee313d27a82ab to your computer and use it in GitHub Desktop.
Ryanair api endpoints

API domains

https://desktopapps.ryanair.com

https://api.ryanair.com

Airports

https://api.ryanair.com/aggregate/3/common?embedded=airports,countries,cities,regions,nearbyAirports,defaultAirport&market=en-gb

https://desktopapps.ryanair.com/en-gb/res/stations

Closures

https://api.ryanair.com/aggregate/3/common?embedded=closures

Flight info

https://api.ryanair.com/flightinfo/3/flights/?&arrivalAirportIataCode=&departureAirportIataCode=DUB&departureTimeScheduledFrom=00:00&departureTimeScheduledTo=23:59&length=&number=&offset=

Schedules

https://desktopapps.ryanair.com/Calendar?Destination=EIN&IsTwoWay=false&Months=16&Origin=CFU&StartDate=2016-11-06

https://api.ryanair.com/timetable/3/schedules/DUB/LGW/years/2016/months/11

Availability and fares info

https://desktopapps.ryanair.com/en-gb/availability?ADT=1&CHD=0&DateIn=2016-11-24&DateOut=2016-11-10&Destination=STN&FlexDaysIn=6&FlexDaysOut=6&INF=0&Origin=VLC&RoundTrip=true&TEEN=0&ToUs=AGREED

Fair Finder

One way

https://services-api.ryanair.com/farfnd/3/oneWayFares?&departureAirportIataCode=BCN&language=en&limit=16&market=en-gb&offset=0&outboundDepartureDateFrom=2019-02-11&outboundDepartureDateTo=2019-10-28&priceValueTo=150

Return

https://services-api.ryanair.com/farfnd/3/roundTripFares?&arrivalAirportIataCode=STN&departureAirportIataCode=VLC&inboundDepartureDateFrom=2019-04-11&inboundDepartureDateTo=2019-04-28&language=es&limit=16&market=es-es&offset=0&outboundDepartureDateFrom=2019-03-11&outboundDepartureDateTo=2019-03-28&priceValueTo=150

Cheapest per day as well as availability:

https://api.ryanair.com/farefinder/3/oneWayFares/SXF/TSR/cheapestPerDay?market=de-de&outboundMonthOfDate=2017-04-01

FareFinder Image paths

https://www.ryanair.com/de/de.farefinder.json is an JSON file in which several picture paths are declared :)

Currencies

https://desktopapps.ryanair.com/bg-bg/res/currencies

Discounts

https://api.ryanair.com/discount/3/discounts

Markets

https://ryanair.com/ie/en.markets.json https://www.ryanair.com/content/ryanair.markets.json

Requires auth/session

https://desktopapps.ryanair.com/en-gb/checkin/checkinpassengers

@mtrovo
Copy link

mtrovo commented Jun 13, 2024 via email

@Storeship
Copy link

Is there any updated links to this api, getting "Availability declined" from the last few or if anyone can help me set up a scraper for Ryanair and other airlines happy to pay.

@Gustelo1
Copy link

@Storeship currently playing around with Ryanair and Wizzair, what are you looking for exactly?

@alexcagliari87
Copy link

alexcagliari87 commented May 17, 2025

@Storeship currently playing around with Ryanair and Wizzair, what are you looking for exactly?

i'm trying to use for example:
https://www.ryanair.com/api/booking/v4/it-it/availability?ADT=1&TEEN=0&CHD=1&INF=0&Origin=BRI&Destination=CAG&promoCode=&IncludeConnectingFlights=false&DateOut=2025-06-26&DateIn=2025-06-27&FlexDaysBeforeOut=2&FlexDaysOut=2&FlexDaysBeforeIn=2&FlexDaysIn=2&RoundTrip=true&IncludePrimeFares=false&ToUs=AGREED

(sniffed from ryanair website) but if i try with postman (even if i export as a curl) i get:
"message": "Availability declined"

Can you help us?
Without availability endpoint we can't do anything

@alexcagliari87
Copy link

That's their fancy map redirect url not the endpoint. You can maybe find new arguments if you study network tab using site, but the api looks similar to before: ryan-bp

ie. https://www.ryanair.com/api/farfnd/v4/roundTripFares/BRI/CAG/cheapestPerDay?outboundMonthOfDate=2025-07-01&inboundMonthOfDate=2025-07-01

https://www.ryanair.com/api/farfnd/v4/roundTripFares?departureAirportIataCode=BRI&outboundDepartureDateFrom=2025-07-01&market=en-gb&adultPaxCount=1&arrivalAirportIataCode=CAG&searchMode=ALL&outboundDepartureDateTo=2025-07-30&inboundDepartureDateFrom=2025-07-01&inboundDepartureDateTo=2025-07-03&durationFrom=1&durationTo=7&outboundDepartureTimeFrom=00:00&outboundDepartureTimeTo=23:59&inboundDepartureTimeFrom=00:00&inboundDepartureTimeTo=23:59

First of all, thank you for your response and help. I am a back-end developer and I am interested in what you showed me. Before I wrote the message I had already inspected the network tab and I saw that the calls that were leaving were leaving to the end
point that I provided. Please explain more about this fancy url thing, thank you

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment