Blazing fast and stupid simple
city level address autocomplete API

Free & no API key up to 1000 requests/day

Try it here!
/api/city//
[
  {
    "name": "Albuquerque",
    "slug": "albuquerque",
    "country": "US",
    "population": 559121,
    "lat": "35.08449",
    "long": "-106.65114"
  },
  {
    "name": "Albany",
    "slug": "albany",
    "country": "US",
    "population": 98469,
    "lat": "42.65258",
    "long": "-73.75623"
  },
  {
    "name": "West Albany",
    "slug": "west-albany",
    "country": "US",
    "population": 93794,
    "lat": "42.68313",
    "long": "-73.77845"
  },
  {
    "name": "Albany",
    "slug": "albany",
    "country": "US",
    "population": 74843,
    "lat": "31.57851",
    "long": "-84.15574"
  },
  {
    "name": "Albany",
    "slug": "albany",
    "country": "US",
    "population": 52175,
    "lat": "44.63651",
    "long": "-123.10593"
  }
]

Pricing

Free

  • 1000 request/day
  • 60 request/minute
  • no API token
POPULAR

$19 / month

  • 24 000 requests/day
  • 3600 requests/minute

$49 / month

  • 100 000 requests/day
  • 3600 requests/minute
  • priority support

Usage

There is one GET endpoint with one required and two optional parameters:

https://autocomplete.city/api/city/{query}/{?country_iso2}?token=

Example request

GET https://autocomplete.city/api/city/ber/DE

Response will contain five matches sorted by city population in descending order:

[
  {
    "name": "Berlin",
    "slug": "berlin",
    "country": "DE",
    "population": 3426354,
    "lat": "52.52437",
    "long": "13.41053"
  },
  {
    "name": "Nürnberg",
    "slug": "nurnberg",
    "country": "DE",
    "population": 515543,
    "lat": "49.45421",
    "long": "11.07752"
  },
  {
    "name": "Oberhausen",
    "slug": "oberhausen",
    "country": "DE",
    "population": 219176,
    "lat": "51.47805",
    "long": "6.8625"
  },
  {
    "name": "Kreuzberg",
    "slug": "kreuzberg",
    "country": "DE",
    "population": 153135,
    "lat": "52.49973",
    "long": "13.40338"
  },
  {
    "name": "Prenzlauer Berg",
    "slug": "prenzlauer-berg",
    "country": "DE",
    "population": 148878,
    "lat": "52.53878",
    "long": "13.42443"
  }
]