Blog·Note·

We put the data on GitHub

github.com/parseapi/lists is CC0 flat JSON and CSV, regenerated from the live API. Countries, states, timezones, currencies, area codes, and daily EUR rates.

Stop vendoring a stale countries.json from a gist.

GET https://raw.githubusercontent.com/parseapi/lists/main/countries/countries.json
[
  {
    "country": "AD",
    "iso3": "AND",
    "numeric": 20,
    "name": "Andorra",
    "capital": "Andorra la Vella",
    "continent": "EU",
    "currency": "EUR",
    "calling_code": "+376",
    "emoji": "🇦🇩",
    "population": 81938
  }
]

github.com/parseapi/lists is 250 countries, plus states, counties, languages, timezones, currencies, area codes, and daily EUR exchange rates. Every list is {folder}/{folder}.json and {folder}/{folder}.csv, so a raw URL is guessable. CC0. The files are generated from the live API, not a one-shot dump. Rates refresh every day. The rest refresh monthly. A run that changes nothing writes the same bytes.

Hotlink the raw file

A script can fetch countries/countries.json or exchange-rates/exchange-rates.json and keep going. Live lookups still live at the API. The repo is the copy you can pin, diff, and vendor without standing up a key.

Try it

Open github.com/parseapi/lists and hit raw on any JSON. The gist in your repo can retire.