Kiwi.com

HealthyRead-only

Search and compare flights on Kiwi.com — itineraries with live prices, airlines, routes and departure/arrival times, plus location and route discovery. Generated from www.kiwi.com.

Base URL
https://api.maviapi.com/v1/sites/kiwi
Version
3
Endpoints
0
Calls / 30d
GET/places

Location search

Search Kiwi locations (city/airport/country/region/subdivision) by name or IATA code. Params: q, type, limit/offset.

Bearer auth. Pass your key as Authorization: Bearer <key> on every request.
stringOptionalin query

Search term (place name or IATA code).

stringOptionalin query

Location type to search.

integerOptionalin query

Max places per page.

integerOptionalin query

Pagination offset.

dataobject
cachedboolean
sourcestring
paginationobject
Try itLive
GET
https://api.maviapi.com/v1/sites/kiwi/places?q=paris&type=city&limit=10&offset=0
Request
curl "https://api.maviapi.com/v1/sites/kiwi/places?q=paris&type=city&limit=10&offset=0" \
-H "Authorization: Bearer $MAVI_KEY"
Example797 B
{
  "data": {
    "query": "paris",
    "type": "city",
    "count": 6,
    "places": [
      {
        "id": "paris_fr",
        "name": "Paris",
        "code": "PAR",
        "type": "city",
        "slug": "paris-france",
        "city": null,
        "subdivision": "Ile-de-France",
        "country": {
          "code": "FR",
          "name": "France"
        },
        "region": "Western Europe",
        "continent": "Europe",
        "timezone": "Europe/Paris",
        "population": 2138551,
        "airports": 4,
        "coordinates": {
          "lat": 48.856614,
          "lon": 2.352222
        }
      }
    ]
  },
  "cached": false,
  "source": "kiwi:locations",
  "pagination": {
    "total": 6,
    "limit": 50,
    "offset": 0,
    "count": 50,
    "has_more": false
  }
}

Get all the data, no code

Collect every page of GET /places into a dataset, then download it as CSV or JSON. One credit per page; the download is free.