Wego Flights Scraper – MENA Flights Scraper avatar

Wego Flights Scraper – MENA Flights Scraper

Pricing

from $0.50 / 1,000 results

Go to Apify Store
Wego Flights Scraper – MENA Flights Scraper

Wego Flights Scraper – MENA Flights Scraper

Search Wego flights between any two airports and extract every itinerary with its cheapest price, airline, stops, flight numbers, durations and booking providers for Saudi Arabia, UAE, Kuwait, Qatar, Bahrain and Oman.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

Boring Internet Explorer

Boring Internet Explorer

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

✈️ Wego Flights Scraper — Saudi Arabia, UAE, Kuwait, Qatar, Bahrain & Oman

Wego is the leading travel metasearch engine in the Middle East. It compares flight prices from airlines and hundreds of online travel agencies in one place, with dedicated sites for Saudi Arabia, the UAE, Kuwait, Qatar, Bahrain, Oman and Egypt. This scraper searches Wego for any route and date and returns every flight itinerary with its cheapest price, airline, stops, flight numbers, timings and the full list of booking providers, so you can track GCC airfare, compare providers and build travel-data products without manual searching.

Why use this scraper?

  • 📉 Airfare monitoring — track the cheapest price on any route (Riyadh → Dubai, Kuwait → London, Doha → Cairo...) day after day.
  • 🧭 Provider price comparison — see which airline or travel agency is cheapest for each itinerary, and how much the alternatives cost.
  • 🏷️ Competitor intelligence for travel agencies — benchmark your fares against what Wego shows to customers in Saudi Arabia, UAE, Kuwait, Qatar, Bahrain and Oman.
  • 📊 Demand and pricing research — build datasets on fares, durations, stops and airline share across GCC routes and cabin classes.
  • 🔔 Deal alerts — schedule the actor and notify yourself when a route drops below a target price.
  • 🌍 Multi-market pricing — run the same route on different Wego country sites and currencies to see how prices differ per market.
  • 🤖 Data for apps and AI agents — feed clean, structured fare data into dashboards, notebooks or LLM workflows.

Supported URL types

This actor is configured with dedicated flight search fields instead of start URLs. Each run searches one route:

SearchExample input
One-way flightorigin: RUH, destination: DXB, departureDate: 2026-11-20
Round-trip flighttripType: roundTrip, origin: JED, destination: DXB, departureDate: 2026-11-20, returnDate: 2026-11-27
Business / first classcabinClass: business
Family searchadults: 2, children: 1, infants: 1
Another country site and currencymarket: kw, currency: USD

Input fields

FieldTypeDefaultDescription
originstringRUH3-letter IATA code of the departure airport or city, e.g. RUH, JED, DXB, KWI.
destinationstringDXB3-letter IATA code of the arrival airport or city, e.g. DXB, CAI, LHR.
tripTypestringoneWayoneWay or roundTrip. Round trips require a return date.
departureDatestring14 daysDeparture date (YYYY-MM-DD) or a relative date such as 14 days or 2 weeks.
returnDatestring–Return date (YYYY-MM-DD) or relative date. Only used for round trips.
adultsinteger1Adult passengers (12+ years).
childreninteger0Children (2-11 years).
infantsinteger0Infants (under 2). Cannot exceed the number of adults.
cabinClassstringeconomyeconomy, premium_economy, business or first.
directOnlybooleanfalseKeep only itineraries without stops.
sortBystringrecommendedrecommended (Wego's ranking, fastest), price, duration or departureTime.
marketstringsaWego country site: sa, ae, kw, qa, bh, om, eg. Decides the providers and default currency.
currencystringmarket currencyOptional 3-letter currency code, e.g. USD, EUR.
languagestringenen or ar — language of airline, airport and city names.
maxItemsinteger50Maximum number of itineraries to return.
proxyConfigurationobjectno proxyApify proxy settings. Leave disabled unless your IP gets blocked.

Example input

{
"origin": "RUH",
"destination": "DXB",
"tripType": "oneWay",
"departureDate": "2026-11-25",
"cabinClass": "economy",
"directOnly": true,
"sortBy": "price",
"market": "sa",
"maxItems": 50,
"proxyConfiguration": { "useApifyProxy": false }
}

Output

Each scraped item is stored as one record in the default dataset: one record per flight itinerary (for round trips, the outbound and return flights together), priced at its cheapest available offer.

Example output

{
"scrapedAt": "2026-10-07T17:09:09.445Z",
"url": "https://sa.wego.com/en/flights/searches/RUH-DXB-2026-11-25/economy/1a:0c:0i?currency=SAR",
"title": "Riyadh (RUH) → Dubai (DXB) · flyadeal",
"price": 323,
"currency": "SAR",
"country": "Saudi Arabia",
"market": "sa",
"tripId": "5b64a1b67441334emsr:F3507~25~1655~1950",
"tripType": "oneWay",
"origin": "RUH",
"originCity": "Riyadh",
"destination": "DXB",
"destinationCity": "Dubai",
"departureDate": "2026-11-25",
"returnDate": null,
"cabinClass": "economy",
"passengers": { "adults": 1, "children": 0, "infants": 0 },
"pricePerAdult": 323.1,
"taxAmount": 0,
"provider": "Safarni",
"providerCode": "safarni.com",
"providerType": "ota",
"bookingUrl": "https://handoff.wego.com/flights/continue?currency=SAR&url_locale=en&site_code=SA&device_type=desktop&app_type=WEB_APP&domain=sa.wego.com&fare_id=5b64a1b67441334emsr:safarni.com:92f2ac045f492995&route=RUH-DXB&search_id=5b64a1b67441334emsr&trip_id=RUH:DXB:2026-11-25&pwa=false&api_version=2&integration_code=safarni.com&region=us-east-1&placement_type=metasearch&show_weegio=true",
"offersCount": 19,
"otherOffers": [
{
"provider": "Makemytrip",
"price": 334,
"bookingUrl": "https://handoff.wego.com/flights/continue?currency=SAR&url_locale=en&site_code=SA&device_type=desktop&app_type=WEB_APP&domain=sa.wego.com&fare_id=5b64a1b67441334emsr:makemytrip.com-sa:507932f75bf2c8b6&route=RUH-DXB&search_id=5b64a1b67441334emsr&trip_id=RUH:DXB:2026-11-25&pwa=false&api_version=2&integration_code=makemytrip.com&region=us-east-1&placement_type=metasearch&show_weegio=true"
}
],
"checkedBagIncluded": null,
"refundable": false,
"exchangeable": false,
"remainingSeats": null,
"outbound": {
"origin": "RUH",
"destination": "DXB",
"departure": "2026-11-25T16:55:00.000+03:00",
"arrival": "2026-11-25T19:50:00.000+04:00",
"durationMinutes": 115,
"stops": 0,
"stopoverAirports": [],
"layoverMinutes": 0,
"overnight": false,
"airlines": ["flyadeal"],
"flightNumbers": ["F3507"],
"segments": [
{
"flightNumber": "F3507",
"airline": "flyadeal",
"origin": "RUH",
"destination": "DXB",
"departure": "2026-11-25T16:55:00.000+03:00",
"arrival": "2026-11-25T19:50:00.000+04:00",
"durationMinutes": 115,
"aircraft": "Airbus Industrie A321"
}
]
},
"inbound": null
}

The example is shortened: otherOffers normally lists up to five alternative providers.

Field reference

FieldTypeDescription
scrapedAtstringISO 8601 timestamp of the scrape.
urlstringWego results page for the search.
titlestringRoute and airlines, e.g. Riyadh (RUH) → Dubai (DXB) · flyadeal.
pricenumberTotal price for all passengers at the cheapest offer.
currencystringCurrency of all prices (SAR, AED, KWD, QAR, BHD, OMR, EGP or your override).
countrystringCountry of the Wego site searched.
marketstringMarket code: sa, ae, kw, qa, bh, om, eg.
tripIdstringWego identifier of the itinerary within the search.
tripTypestringoneWay or roundTrip.
origin / destinationstringIATA codes of the searched route.
originCity / destinationCitystring | nullPlace names in the selected language.
departureDate / returnDatestring | nullSearched dates.
cabinClassstringSearched cabin class.
passengersobjectAdults, children and infants searched.
pricePerAdultnumber | nullPrice per adult at the cheapest offer.
taxAmountnumber | nullTaxes included in the price.
provider / providerCode / providerTypestring | nullCheapest provider, its code and type (airline or ota).
bookingUrlstring | nullWego redirect link to book the cheapest offer.
offersCountnumberNumber of providers offering this itinerary.
otherOffersarrayUp to five next-cheapest offers (provider, price, bookingUrl).
checkedBagIncludedboolean | nullWhether a checked bag is included, when known.
refundable / exchangeableboolean | nullFare conditions of the cheapest offer.
remainingSeatsnumber | nullSeats left, when reported.
outboundobjectOutbound flight: times, duration, stops, layover airports, airlines, flight numbers and segments.
inboundobject | nullReturn flight (round trips only), same structure as outbound.

❓ FAQ

Which countries and currencies are supported? Use the market field to pick the Wego country site: Saudi Arabia (sa, SAR), UAE (ae, AED), Kuwait (kw, KWD), Qatar (qa, QAR), Bahrain (bh, BHD), Oman (om, OMR) or Egypt (eg, EGP). Set currency to price in any other currency such as USD.

Can I search round trips? Yes. Set tripType to roundTrip and provide returnDate. Each item contains both the outbound and the return flight with a single total price.

Do I need start URLs? No. Flights are defined with origin, destination and dates. Use IATA codes — airport codes (RUH) or city codes (LON) both work.

Does it support Arabic? Yes. Set language to ar to get airline, airport and city names in Arabic.

How many results can I get, and in what order? Up to maxItems itineraries. recommended follows Wego's default ranking and is the fastest. price, duration and departureTime load all results first, so they take a little longer but return the true cheapest, shortest or earliest flights.

How fresh is the data? Every run searches Wego live, so prices and availability are as current as the moment of the run. Prices can change quickly, and some providers may show different fares on later runs.

What if Wego blocks my requests? Wego limits how many searches it accepts from one IP. If a run reports rate limiting, retry a little later or enable an Apify proxy in proxyConfiguration.

🔗 Want More Data?

Explore more scrapers from boring_internet_explorer:

🛠️ Need a custom scraper?

Need this scraper adapted to your use case — extra fields, additional filters, a different output format, or a new website? Reach out at boringinternetexplorer@gmail.com and we'll make it happen.