Piratefly

Kayak API alternative: no application, no partner agreement

Getting at Kayak’s data means applying as a partner and waiting for someone to say yes — which for a side project or a prototype is where it ends. Piratefly answers one question — is this fare good for this route, and when should I buy — over price history we observe and store ourselves. No application, no account, no queue. If what you needed was a live metasearch over every airline, this is not that.

What Piratefly does not do

No live metasearch, no bookable itineraries, no deeplinks to OTAs, no hotels or cars. We are not affiliated with Kayak and we do not resell their data. What we have is a long observation history of real fares on real routes, and a verdict built on it.

What maps across, and what does not

What you wanted from KayakPiratefly
Live search across airlines and OTAsNot covered. Everything here is observed history, not a live availability query.
Booking, deeplinks, affiliate redirectsNot covered, and not planned. Nothing you build on Piratefly owes us a redirect.
Price trend — is it going up or down?A percentile over that route’s own observed history plus a verdict (buy / wait / your call).
Cheapest month to flyGET /v1/analisi ranks months by median fare, with the sample size behind each one.
How far ahead to bookanticipoConsigliato is the booking window that has historically come out cheapest on that route.
Access: partner application and approval30 requests/day per IP with no key at all; $9.99/month removes the cap, card or USDC, key issued immediately.

One call, no key

Cities by name, not IATA codes. This is a real response from the live API:

curl "https://next.piratefly.com/v1/analisi?origine=Stockholm&destinazione=Rome"
{
  "origine": "Stockholm",
  "destinazione": "Rome",
  "valuta": "EUR",
  "verdetto": {
    "livello": "ottimo",
    "percentile": 9,
    "medianaCent": 5600,
    "minimoCent": 2500,
    "campione": 23
  },
  "mesiPerConvenienza": [
    { "mese": 8, "medianaCent": 5900, "campione": 33 },
    { "mese": 10, "medianaCent": 8900, "campione": 74 }
  ],
  "anticipoConsigliato": { "daGiorni": 56, "aGiorni": 83, "medianaCent": 5800 },
  "osservazioni": 169
}

Reading the response

percentile is where today’s cheapest fare sits in that route’s own history (9 = cheaper than 91% of everything we have seen), campione is how many observations that verdict rests on, mesiPerConvenienza ranks months by median fare, and anticipoConsigliato is the booking window that has historically come out cheapest. Prices are cents, EUR.

Try it, then decide

The free tier needs no account: paste the URL above in a browser. When 30 calls a day stops being enough, the Pro plan is on the API page.

See plans and get a Pro key

Can I use this to show fares to my users?

You can show what a route has historically cost and whether today’s fare is good. You cannot show a bookable itinerary — we do not have one. Most people pair us with whatever booking path they already have.

Do I need an approval or a contract?

No. The free tier is 30 requests per day per IP with no key and no signup. Pro is $9.99/month for no daily cap, paid by card on Stripe or in USDC on Solana, with the key handed back immediately.

How many routes are covered?

We cover the routes we observe continuously, and we never show a verdict on fewer than 8 observations. Ask for a route we do not have and you get an honest empty answer, not an invented one.