#World countries in JSON, CSV, XML and YAML.
This repository contains lists of world countries in JSON, CSV and XML. Each line contains the country:
name
common
- common name in englishofficial
- official name in englishnative
- list of all native names- key: three-letter ISO 639-3 language code
- value: name object
- key: official - official name translation
- key: common - common name translation
- country code top-level domain (
tld
) - code ISO 3166-1 alpha-2 (
cca2
) - code ISO 3166-1 numeric (
ccn3
) - code ISO 3166-1 alpha-3 (
cca3
) - ISO 4217 currency code(s) (
currency
) - calling code(s) (
callingCode
) - capital city (
capital
) - alternative spellings (
altSpellings
) - relevance
- region
- subregion
- list of official languages (
languages
)- key: three-letter ISO 639-3 language code
- value: name of the language in english
- list of name translations (
translations
)- key: three-letter ISO 639-3 language code
- value: name object
- key: official - official name translation
- key: common - common name translation
- latitude and longitude (
latlng
) - name of residents (
demonym
) - landlocked status (
landlocked
) - land borders (
borders
) - land area in km² (
area
)
The data folder contains additional data such as the countries GeoJSON outlines and flags in SVG format.
##Examples #####JSON
{
"name": {
"common": "Austria",
"official": "Republic of Austria",
"native": {
"bar": {
"official": "Republik Österreich",
"common": "Österreich"
}
}
},
"tld": [".at"],
"cca2": "AT",
"ccn3": "040",
"cca3": "AUT",
"currency": ["EUR"],
"callingCode": ["43"],
"capital": "Vienna",
"altSpellings": ["AT", "Osterreich", "Oesterreich"],
"relevance": "0",
"region": "Europe",
"subregion": "Western Europe",
"languages": {
"bar": "Austro-Bavarian German"
},
"translations": {
"cym": {"official": "Republic of Austria", "common": "Awstria"},
"deu": {"official": "Republik Österreich", "common": "Österreich"},
"fra": {"official": "République d'Autriche", "common": "Autriche"},
"hrv": {"official": "Republika Austrija", "common": "Austrija"},
"ita": {"official": "Repubblica d'Austria", "common": "Austria"},
"jpn": {"official": "オーストリア共和国", "common": "オーストリア"},
"nld": {"official": "Republiek Oostenrijk", "common": "Oostenrijk"},
"por": {"official": "República da Áustria", "common": "Áustria"},
"rus": {"official": "Австрийская Республика", "common": "Австрия"},
"spa": {"official": "República de Austria", "common": "Austria"}
},
"latlng": [47.33333333, 13.33333333],
"demonym": "Austrian",
"landlocked": true,
"borders": ["CZE", "DEU", "HUN", "ITA", "LIE", "SVK", "SVN", "CHE"],
"area": 83871
}
#####GeoJSON outline See an example for Germany.
#####CSV
"name";"tld";"cca2";"ccn3";"cca3";"currency";"callingCode";"capital";"altSpellings";"relevance";"region";"subregion";"nativeLanguage";"languages";"translations";"latlng";"demonym";"landlocked";"borders";"area"
⋮
"name";"tld";"cca2";"ccn3";"cca3";"currency";"callingCode";"capital";"altSpellings";"relevance";"region";"subregion";"languages";"translations";"latlng";"demonym";"landlocked";"borders";"area"
"Aruba,Aruba,Aruba,Aruba,Aruba,Aruba";".aw";"AW";"533";"ABW";"AWG";"297";"Oranjestad";"AW";"0.5";"Americas";"Caribbean";"Dutch,Papiamento";"Aruba,Aruba,Aruba,Aruba,Aruba,Aruba,Aruba,Aruba,アルバ,アルバ,Aruba,Aruba,Aruba,Aruba,Аруба,Аруба,Aruba,Aruba";"12.5,-69.96666666";"Aruban";"";"";"180"
"Afghanistan,Islamic Republic of Afghanistan,جمهوری اسلامی افغانستان,افغانستان,د افغانستان اسلامي جمهوریت,افغانستان,Owganystan Yslam Respublikasy,Owganystan";".af";"AF";"004";"AFG";"AFN";"93";"Kabul";"AF,Afġānistān";"0";"Asia";"Southern Asia";"Dari,Pashto,Turkmen";"Islamic Republic of Afghanistan,Affganistan,Islamischen Republik Afghanistan,Afghanistan,République islamique d'Afghanistan,Afghanistan,Islamska Republika Afganistan,Afganistan,Repubblica islamica dell'Afghanistan,Afghanistan,アフガニスタン·イスラム共和国,アフガニスタン,Islamitische Republiek Afghanistan,Afghanistan,República Islâmica do Afeganistão,Afeganistão,Исламская Республика Афганистан,Афганистан,República Islámica de Afganistán,Afganistán";"33,65";"Afghan";"1";"IRN,PAK,TKM,UZB,TJK,CHN";"652230"
"Angola,Republic of Angola,República de Angola,Angola";".ao";"AO";"024";"AGO";"AOA";"244";"Luanda";"AO,República de Angola,ʁɛpublika de an'ɡɔla";"0";"Africa";"Middle Africa";"Portuguese";"Republic of Angola,Angola,Republik Angola,Angola,République d'Angola,Angola,Republika Angola,Angola,Repubblica dell'Angola,Angola,アンゴラ共和国,アンゴラ,Republiek Angola,Angola,República de Angola,Angola,Республика Ангола,Ангола,República de Angola,Angola";"-12.5,18.5";"Angolan";"";"COG,COD,ZMB,NAM";"1246700"
⋮
#####XML
<?xml version="1.0" encoding="UTF-8"?>
<countries>
<country name="Aruba,Aruba,Aruba,Aruba,Aruba,Aruba" tld=".aw" cca2="AW" ccn3="533" cca3="ABW" currency="AWG" callingCode="297" capital="Oranjestad" altSpellings="AW" relevance="0.5" region="Americas" subregion="Caribbean" languages="Dutch,Papiamento" translations="Aruba,Aruba,Aruba,Aruba,Aruba,Aruba,Aruba,Aruba,アルバ,アルバ,Aruba,Aruba,Aruba,Aruba,Аруба,Аруба,Aruba,Aruba" latlng="12.5,-69.96666666" demonym="Aruban" landlocked="" borders="" area="180"/>
<country name="Afghanistan,Islamic Republic of Afghanistan,جمهوری اسلامی افغانستان,افغانستان,د افغانستان اسلامي جمهوریت,افغانستان,Owganystan Yslam Respublikasy,Owganystan" tld=".af" cca2="AF" ccn3="004" cca3="AFG" currency="AFN" callingCode="93" capital="Kabul" altSpellings="AF,Afġānistān" relevance="0" region="Asia" subregion="Southern Asia" languages="Dari,Pashto,Turkmen" translations="Islamic Republic of Afghanistan,Affganistan,Islamischen Republik Afghanistan,Afghanistan,République islamique d'Afghanistan,Afghanistan,Islamska Republika Afganistan,Afganistan,Repubblica islamica dell'Afghanistan,Afghanistan,アフガニスタン·イスラム共和国,アフガニスタン,Islamitische Republiek Afghanistan,Afghanistan,República Islâmica do Afeganistão,Afeganistão,Исламская Республика Афганистан,Афганистан,República Islámica de Afganistán,Afganistán" latlng="33,65" demonym="Afghan" landlocked="1" borders="IRN,PAK,TKM,UZB,TJK,CHN" area="652230"/>
<country name="Angola,Republic of Angola,República de Angola,Angola" tld=".ao" cca2="AO" ccn3="024" cca3="AGO" currency="AOA" callingCode="244" capital="Luanda" altSpellings="AO,República de Angola,ʁɛpublika de an'ɡɔla" relevance="0" region="Africa" subregion="Middle Africa" languages="Portuguese" translations="Republic of Angola,Angola,Republik Angola,Angola,République d'Angola,Angola,Republika Angola,Angola,Repubblica dell'Angola,Angola,アンゴラ共和国,アンゴラ,Republiek Angola,Angola,República de Angola,Angola,Республика Ангола,Ангола,República de Angola,Angola" latlng="-12.5,18.5" demonym="Angolan" landlocked="" borders="COG,COD,ZMB,NAM" area="1246700"/>
⋮
<countries>
#####YAML
- { name: { common: Aruba, official: Aruba, native: { nld: { official: Aruba, common: Aruba }, pap: { official: Aruba, common: Aruba } } }, tld: [.aw], cca2: AW, ccn3: '533', cca3: ABW, currency: [AWG], callingCode: ['297'], capital: Oranjestad, altSpellings: [AW], relevance: '0.5', region: Americas, subregion: Caribbean, languages: { nld: Dutch, pap: Papiamento }, translations: { deu: { official: Aruba, common: Aruba }, fra: { official: Aruba, common: Aruba }, hrv: { official: Aruba, common: Aruba }, ita: { official: Aruba, common: Aruba }, jpn: { official: アルバ, common: アルバ }, nld: { official: Aruba, common: Aruba }, por: { official: Aruba, common: Aruba }, rus: { official: Аруба, common: Аруба }, spa: { official: Aruba, common: Aruba } }, latlng: [12.5, -69.96666666], demonym: Aruban, landlocked: false, borders: { }, area: 180 }
- { name: { common: Afghanistan, official: 'Islamic Republic of Afghanistan', native: { prs: { official: 'جمهوری اسلامی افغانستان', common: افغانستان }, pus: { official: 'د افغانستان اسلامي جمهوریت', common: افغانستان }, tuk: { official: 'Owganystan Yslam Respublikasy', common: Owganystan } } }, tld: [.af], cca2: AF, ccn3: '004', cca3: AFG, currency: [AFN], callingCode: ['93'], capital: Kabul, altSpellings: [AF, Afġānistān], relevance: '0', region: Asia, subregion: 'Southern Asia', languages: { prs: Dari, pus: Pashto, tuk: Turkmen }, translations: { cym: { official: 'Islamic Republic of Afghanistan', common: Affganistan }, deu: { official: 'Islamischen Republik Afghanistan', common: Afghanistan }, fra: { official: 'République islamique d''Afghanistan', common: Afghanistan }, hrv: { official: 'Islamska Republika Afganistan', common: Afganistan }, ita: { official: 'Repubblica islamica dell''Afghanistan', common: Afghanistan }, jpn: { official: アフガニスタン·イスラム共和国, common: アフガニスタン }, nld: { official: 'Islamitische Republiek Afghanistan', common: Afghanistan }, por: { official: 'República Islâmica do Afeganistão', common: Afeganistão }, rus: { official: 'Исламская Республика Афганистан', common: Афганистан }, spa: { official: 'República Islámica de Afganistán', common: Afganistán } }, latlng: [33, 65], demonym: Afghan, landlocked: true, borders: [IRN, PAK, TKM, UZB, TJK, CHN], area: 652230 }
- { name: { common: Angola, official: 'Republic of Angola', native: { por: { official: 'República de Angola', common: Angola } } }, tld: [.ao], cca2: AO, ccn3: '024', cca3: AGO, currency: [AOA], callingCode: ['244'], capital: Luanda, altSpellings: [AO, 'República de Angola', 'ʁɛpublika de an''ɡɔla'], relevance: '0', region: Africa, subregion: 'Middle Africa', languages: { por: Portuguese }, translations: { cym: { official: 'Republic of Angola', common: Angola }, deu: { official: 'Republik Angola', common: Angola }, fra: { official: 'République d''Angola', common: Angola }, hrv: { official: 'Republika Angola', common: Angola }, ita: { official: 'Repubblica dell''Angola', common: Angola }, jpn: { official: アンゴラ共和国, common: アンゴラ }, nld: { official: 'Republiek Angola', common: Angola }, por: { official: 'República de Angola', common: Angola }, rus: { official: 'Республика Ангола', common: Ангола }, spa: { official: 'República de Angola', common: Angola } }, latlng: [-12.5, 18.5], demonym: Angolan, landlocked: false, borders: [COG, COD, ZMB, NAM], area: 1246700 }
- { name: { common: Anguilla, official: Anguilla, native: { eng: { official: Anguilla, common: Anguilla } } }, tld: [.ai], cca2: AI, ccn3: '660', cca3: AIA, currency: [XCD], callingCode: ['1264'], capital: 'The Valley', altSpellings: [AI], relevance: '0.5', region: Americas, subregion: Caribbean, languages: { eng: English }, translations: { deu: { official: Anguilla, common: Anguilla }, fra: { official: Anguilla, common: Anguilla }, hrv: { official: Anguilla, common: Angvila }, ita: { official: Anguilla, common: Anguilla }, jpn: { official: アングィラ, common: アンギラ }, nld: { official: Anguilla, common: Anguilla }, por: { official: Anguilla, common: Anguilla }, rus: { official: Ангилья, common: Ангилья }, spa: { official: Anguila, common: Anguilla } }, latlng: [18.25, -63.16666666], demonym: Anguillian, landlocked: false, borders: { }, area: 91 }
- { name: { common: 'Åland Islands', official: 'Åland Islands', native: { swe: { official: 'Landskapet Åland', common: Åland } } }, tld: [.ax], cca2: AX, ccn3: '248', cca3: ALA, currency: [EUR], callingCode: ['358'], capital: Mariehamn, altSpellings: [AX, Aaland, Aland, Ahvenanmaa], relevance: '0', region: Europe, subregion: 'Northern Europe', languages: { swe: Swedish }, translations: { deu: { official: Åland-Inseln, common: Åland }, fra: { official: 'îles Åland', common: Åland }, hrv: { official: 'Aland Islands', common: 'Ålandski otoci' }, ita: { official: 'Isole Åland', common: 'Isole Aland' }, jpn: { official: オーランド諸島, common: オーランド諸島 }, nld: { official: 'Åland eilanden', common: Ålandeilanden }, por: { official: 'Ilhas Åland', common: Alândia }, rus: { official: 'Аландские острова', common: 'Аландские острова' }, spa: { official: 'Islas Åland', common: Alandia } }, latlng: [60.116667, 19.9], demonym: Ålandish, landlocked: false, borders: { }, area: 1580 }
To understand the usefulness of the relevance parameter, please read this:
- http://uxdesign.smashingmagazine.com/2011/11/10/redesigning-the-country-selector/
- http://baymard.com/labs/country-selector
The data files provided in the dist
directory include all available fields, but is also possible to build a custom version of the data with certain fields excluded.
To do this, you will first need a working PHP installation, composer and a local copy of this repository. Once you have these, open a terminal in your local version of this project's root directory and run this command to install the necessary dependencies:
composer install
After this finishes, run the following command (here we will exclude the tld
field from the output, but you can exclude any field you want):
php countries.php convert --exclude-field=tld
You can also exclude multiple fields:
php countries.php convert --exclude-field=tld --exclude-field=cca2
# Or using the shorter `-x` syntax:
php countries.php convert -x tld -x cca2
Projects using this dataset:
- REST Countries
- International Telephone Input
- Telephone JS
- Countries of the World
- Country Prefix Codes For Go
- Ask the NSA
- Country Info Mapper in Go
- Visa requirements in JSON
Please refer to CONTRIBUTING.
- add the type of the country (country, sovereign state, public body, territory, etc.)
- add missing translations
http://www.currency-iso.org/ for currency codes.
Relevance are inspired by https://github.com/JamieAppleseed/selectToAutocomplete.
Region and subregion are taken from https://github.com/hexorx/countries.
GeoJSON outlines come from http://thematicmapping.org/downloads/world_borders.php.
The rest comes from Wikipedia.
Thanks to:
- @Glazz for his help with country calling codes
- @hexorx for his work (https://github.com/hexorx/countries)
- @frederik-jacques for the capital cities
- @fayer for the population, geolocation, demonym and area data
- @ancosen for his help with the borders data
- @herrniemand for country names and various fixes
- all the contributors: https://github.com/mledoze/countries/graphs/contributors
See LICENSE.