When I started building Hyikko, I knew I needed access to flight data. The obvious choice would be to use existing APIs, right? Well, that's what I thought too. But reality had other plans.
SkyScanner offers an affiliate program with API access. Sounds perfect, right?
Until you read the fine print: they require 100,000 monthly visits to qualify for API access.
As a bootstrapped startup with zero users, this was obviously not an option. The classic chicken-and-egg problem - you need users to get the API, but you need the API to get users.
Next, I tried various scraping APIs like BrightData and other vendors.
The results were disappointing:
Errors every now and then, not showing all available flights when comparing with the actual engines - caused me to lose faith pretty quick.
The APIs didn't support all the advanced filters I needed for complex searches.
Things like roundtrip searches, setting max stops, specific airlines, departure & arrival times, were either missing or poorly implemented.
Stops information, departure & arrival times, were often missing from the results.
Faced with these limitations, I had a choice: settle for mediocre results or build something better.
I chose the latter. It was time to get my hands dirty and hone my reverse engineering skills.
Create the BEST flight search API that scans the main engines directly.
This meant reverse engineering Google Flights and SkyScanner.
A journey that would take me 2 months of intense development - and would end in a result that far exceeded my expectations (the existing APIs.)
The result was a custom scraping system that:
Scrapes Google Flights, SkyScanner, and other major engines directly.
No middleman, no API limitations, no rate limiting from third-party services.
Supports all the advanced filters users need: direct flights, specific airlines, flexible dates, arrival & departure times, and more.
The same filters that work on the original engines.
Results in seconds, not minutes. Optimized for speed and reliability.
Built to handle concurrent requests efficiently + handle flex searches that require many combinations (multiple dates / airports at once).
Robust error handling, retry & fallback mechanisms, and IP rotation strategies.
Designed to handle the load of a growing user base.
Building this wasn't easy. It required:
After 2 months of development, I've created something that works better than any existing solution.
It's been used in Hyikko to serve the word's first and most powerful natural language flight search engine. But there has been requests to share it with the community as a standalone API.
This flight scraping technology will be released on Apify and as a standalone MCP server.
Stay tuned for updates - you'll be able to use this same powerful flight search technology in your own projects.
When existing solutions don't meet your needs, build something better.
The investment in custom development often pays off in superior user experience.
Understanding how existing systems work can help you build better solutions.
It's not just about copying - it's about learning and improving.
If you're results are lying, your users will leave.
New software needs to EARN trust.
Building custom scraping logic was a challenging but rewarding journey.
The result is a flight search engine that's more powerful, faster, more reliable, and more feature-complete than anything available through existing APIs.
Sometimes the best solution is the one you build yourself.
This technology will be available soon for other developers to use.
Follow the blog for updates on the Apify release and MCP server availability.