How it works
Search flights with your trip dates and the nearest airports
Kokai doesn’t sell tickets or check prices: it searches its own list of 3,244 airports, offline, for the ones nearest your destination and for your departure airport, and builds the search link for seven websites (Google Flights, Skyscanner, Kayak, Momondo, eDreams, Trip.com and Aviasales) with the trip dates and travellers already filled in. Nothing leaves your device until you tap one.
In a nutshell
- Where it is
- The «Buscar vuelos» (“Search flights”) button in the trip’s «Resumen» (“Summary”), if the trip hasn’t ended, and in «Documentos» (“Documents”).
- Airports
- 3,244, the ones with scheduled flights and an IATA code, from OurAirports (public domain). They’re built into the app.
- Destination airports
- Those less than 150 km from the destination placed on the map, up to four; small ones count as if they were twice as far away.
- Websites
- Seven: Google Flights, Skyscanner, Kayak, Momondo, eDreams, Trip.com and Aviasales. Return or one way.
- What gets filled in
- Departure and arrival airport, dates and travellers (1 to 9). Google Flights doesn’t accept travellers in the link.
- What leaves your device
- Nothing until you tap a link. Only if you type a city that isn’t on the list is it looked up in Nominatim to find its airports.
- Price
- Free. Kokai charges nothing and takes no commission, unless a link one day becomes an affiliate link, and then it says so.
What it does and what it doesn’t
Searching for a flight is nearly always the same: choose where you’re leaving from, where you’re going, the dates and how many of you are travelling, and repeat it on three or four websites to compare. Kokai already knows your trip’s destination, dates and travellers, so it saves you the repetitive part: it opens each search engine with all of that already typed in.
- Yes: it finds the airports near the destination, remembers your departure airport on that device and opens seven search engines with the search done.
- No: it doesn’t show prices, compare fares or schedules, buy tickets or alert you when a price drops. Each website does all that, under its own terms.
- Afterwards: when you buy, add the ticket PDF in Documents. Kokai reads it on your device, without AI, and reminds you of the flight the day before.
Why links and not a search inside the app
Showing prices inside Kokai would need a flight API or reading other sites’ results pages. Checked on September 17, 2026, neither route works for an app that has no search server and doesn’t want your trip to go through one:
| Route | What happens today |
|---|---|
| Amadeus for Developers | Its self-service portal, the one that gave out free keys, “was decommissioned on July 17”: its website now only offers the enterprise portal. |
| Kiwi.com (Tequila) | Its developer portal doesn’t let you in: it replies with a 403 error. |
| Skyscanner | Its search APIs are for its commercial partners, with usage and design rules; what it does publish for anyone is the format of its links. |
| Duffel | It’s an API for selling tickets: it requires an account, and each booking is paid for. An app that sells nothing doesn’t need it. |
| Reading the results pages | It goes against those websites’ terms, the browser prevents it (a web app can’t read pages from another domain) and it would mean sending your trip to a server to do it for you. |
A link, on the other hand, needs nobody’s permission, works the same in the browser and on a phone, and sends nothing until you tap it. It’s the same thing Accommodation does with Booking.com or Airbnb.
The airport list, offline
Kokai includes the airport list from OurAirports, an open data project in the public domain. Of its more than 80,000 airfields, it keeps the ones you can buy a ticket for: large and medium airports, with scheduled flights and a three-letter IATA code. That’s 3,244.
- What it keeps for each one
- The IATA code, name, city, country, coordinates (to three decimal places, about 100 m), whether it’s large, and its other names (“Lisboa” and “Portela” for Lisbon, “Londres” for Heathrow).
- How much space it takes
- 278 KB, 112 KB compressed. It only loads when you open the flight search, not when you open the app.
- How it’s updated
- With
npm run aeropuertos, which downloads the list again and trims it. The one in the app is from September 17, 2026.
Names come in English, as OurAirports publishes them (“Lisbon Humberto Delgado Airport”); the country comes in the app’s language. The IATA code is what’s sent to each search engine, and it’s the same in every language.
The airports nearest the destination
If the trip’s destination is placed on the map, Kokai measures the straight-line distance from that point to each airport on the list and offers up to four less than 150 km away, with their distance. It picks the first one on its own.
A large airport 40 km away usually has more flights than a small one 15 km away, so when sorting, small airports count as if they were twice as far away. If there are none within 150 km, the nearest one is offered, wherever it is.
| Destination placed in… | What it offers, in order |
|---|---|
| Lisbon | LIS (6.6 km away) and CAT, Cascais (18.7 km away) |
| Vilafranca del Penedès | BCN, Barcelona (32 km away), REU, Reus (50 km away), GRO, Girona (108 km away) and ILD, Lleida (106 km away) |
| Ciutadella de Menorca | MAH, Menorca (36 km away) and PMI, Palma (106 km away) |
| Kyoto | ITM, Osaka Itami (39 km away), UKB, Kobe (65 km away), KIX, Kansai (81 km away) and NGO, Chubu (96 km away) |
| Flores Island (Azores) | FLW, Santa Cruz das Flores (6 km away) |
The distance is in a straight line, not by road. Before choosing a distant airport, check how you get from it to the destination: sometimes the cheapest one is the one that costs most afterwards.
Where you’re leaving from
The «Desde dónde sales» (“Where you’re leaving from”) field searches by code, city or name, ignoring accents and capital letters. First comes the exact code (“MAD”), then cities or other names starting with what you typed (“Londres”, London in Spanish, gives Heathrow) and then airports with any word starting that way (“Humberto” gives Lisbon); when tied, large airports come first.
It searches by words, not fragments: “oporto” doesn’t find the Italian airports whose name contains “aeroporto”. If what you typed isn’t on the list (a city without an airport, or a name in another language such as “Oporto” or “Nueva York”), «Buscar aeropuertos cerca de «…»» (“Search for airports near “…””) appears: Kokai places that location on the map with Nominatim, as it does with the trip’s destination, and offers its nearby airports.
The departure airport is remembered on that device for the next trip. It isn’t copied to your account or to your other devices.
The seven websites and the format of each link
Each link was opened in Chromium on September 17, 2026, from Madrid to Lisbon, October 3 to 8, with 2 adults, return and one way, checking what each website filled in:
| Website | Format | What it fills in |
|---|---|---|
| Google Flights | google.com/travel/flights?q=… with the search written in English: Flights to LIS from MAD on 2026-10-03 through 2026-10-08 | Airports and dates. Not travellers: it searches for one person |
| Skyscanner | skyscanner.net/g/referrals/v1/flights/day-view/ with origin, destination, outboundDate, inboundDate, adultsv2 and locale | The format is the one published in its documentation; its website doesn’t let an automated browser in and couldn’t be opened |
| Kayak | kayak.es/flights/MAD-LIS/2026-10-03/2026-10-08/2adults (kayak.com in English) | Airports, dates and travellers |
| Momondo | momondo.es/flight-search/MAD-LIS/2026-10-03/2026-10-08/2adults | Airports, dates and travellers |
| eDreams | edreams.es/travel/#results/type=R;from=MAD;to=LIS;dep=…;ret=…;adults=2 (type=O and no ret for one way) | Airports, dates and travellers |
| Trip.com | es.trip.com/flights/showfarefirst with dcity, acity, ddate, rdate, triptype (rt or ow) and quantity | Airports, dates and travellers |
| Aviasales | aviasales.com/search/MAD0310LIS08102: origin, outbound day and month, destination, return day and month, and travellers | Airports, dates and travellers |
Left out were Kiwi.com, which finds nothing with airport codes (it wants city names in its own language, such as madrid-espana), and Expedia, which doesn’t publish its link format and wouldn’t open either. Websites change their addresses without warning: if a link stops filling something in, write to us through the contact form.
Dates, return trips and travellers
- «Ida» (“Outbound”) and «Vuelta» (“Return”) start with the trip dates, and you can change them without touching the trip: for example, to see whether coming back a day later is cheaper.
- With «Solo ida» (“One way”) the return disappears. If the return is before the outbound date, no links are generated until you fix it.
- «Viajeros» (“Travellers”) starts with the trip’s travellers. Search engines receive 1 to 9, all as adults: children and infants are adjusted on each website.
- Without a departure or arrival airport, or with both the same, Kokai tells you what’s missing instead of showing broken links.
Affiliate links
Like the accommodation links, the flight links are ready for affiliate programmes, which pay a commission to whoever brings them a purchase without the price changing. They’re switched on when the app is built (VITE_AFILIADOS), with each programme’s parameters or with the link of a network that redirects. Kayak, Trip.com and Google share their configuration with the accommodation ones, because the programme is the same.
Today the app is published without affiliates. If a link ever is one, this appears below the list: «Algunos son enlaces de afiliado: si reservas desde ellos, Kokai puede recibir una comisión, sin que te cueste más.» (“Some are affiliate links: if you book through them, Kokai may receive a commission, at no extra cost to you.”)
What leaves your device
| When | Who receives it | What |
|---|---|---|
| When you open «Buscar vuelos» | Nobody | The airport list is built into the app, and the nearby ones are worked out on the device |
| When you tap «Buscar aeropuertos cerca de «…»» | Nominatim, by the OpenStreetMap Foundation | Only the text you typed |
| When you tap a search engine | That website | The two airport codes, the dates, the travellers and the language, in the link’s address |
The rest of the trip (places, plan, documents) doesn’t go in any link. What each website does with your search is set out in its terms and privacy policy. More in Your data.
Frequently asked questions
Does Kokai tell me which flight is cheapest?
No. It doesn’t check prices: it opens each search engine with your search done, and each website does the comparing. Opening two or three helps you see whether a price is good.
Why does Google Flights search for one person?
Because its address doesn’t accept the number of travellers: you change it on the page itself, at the top, next to “Round trip”. Google Flights prices are per person.
What if my city has no airport?
Type it in «Desde dónde sales» (“Where you’re leaving from”) and tap «Buscar aeropuertos cerca de…» (“Search for airports near…”): Kokai places it on the map and offers the airports less than 150 km away.
Does it work for flights with stopovers or multi-city trips?
It searches from one airport to another, return or one way; each website suggests stopovers. Multi-city trips, for now, are searched on the website.
Does it save the flight I buy?
No, because the purchase happens on the other website. Add the ticket PDF in «Documentos» (“Documents”): it’s read on your device, 15 airlines are recognised (Ryanair, Vueling, Iberia, TAP Air Portugal…), and you get the alert the day before.
Sources and references
The original documentation for what is cited here, checked on this page’s review date.
- Open data @ OurAirports OurAirports
- ourairports-data (Unlicense, public domain) David Megginson, on GitHub
- Referrals: examples (link format) Skyscanner Developers
- API usage guidelines Skyscanner Developers
- Notice of the self-service portal shutdown Amadeus for Developers
- Find plane tickets on Google Flights Google Help
- IATA airport code Wikipedia
- Nominatim Usage Policy OpenStreetMap Foundation
Keep reading
- AccommodationHow Kokai organises accommodation by night: bookings, undecided options, gaps, double bookings, free cancellation alerts and the hotel address offline.
- Search for accommodationHow to build Booking.com, Airbnb, Expedia, Vrbo, Agoda, Trip.com, Kayak and Google Hotels search URLs with destination, dates and guests, with examples.
- DocumentsHow Kokai keeps tickets, bookings and passport as PDF or photo to open offline, what it warns you about before they expire and what stays on your device.
- Booking PDFsWhat Kokai reads from a booking confirmation PDF offline without AI: 65 brands, 8 classes, labels in 7 languages, dates, price, cancellation and an example.
- Your dataWhat Kokai keeps on your device, what goes to your account copy, which services get anything and when, what never leaves, and how to export or delete it all.
- Plan a tripA five-night trip to Lisbon and Sintra planned from start to finish: places, accommodation, a timed plan, documents, packing list, alerts and On the road mode.