I'm looking for an API or data source (or multiple sources) that provide the following information:

  1. Countries Information: ISO code, Region, Capital, population, languages, currencies and climate.
  2. States Information: name and time zone
  3. Cities Information: name and time zone
  4. Airports Information: IATA, ICAO codes, longitude, latitude, altitude and time zone.
  5. Hotels Information: how many stars, number of rooms, longitude, latitude and type of rooms.

I want this information to be highly accurate and include latitude, longitude and time zones. also, I don't mind if it was a paid source. I can't use any source that have an affiliated program

I have checked geonames.org restcountries.eu world bank APIs booking.com they either have missing information or inaccurate


I do not work for any of these companies some of these are paid services and some are free. Accuracy is subjective especially when you are discussing a site that involves ratings, and the OP does not define what the criteria for horizontal accuracy is. All of them will be lacking in some way. This is why for profit data service companies exist, they are all competing for market share and each claims to have "the most accurate and comprehensive data".

This question is fairly easy to answer with a little research on google. This list is in no way comprehensive.

  1. Flight Data
  2. Travel API question answered on SO
  3. International data geopgraphy
  4. Yelp API for business locations
  5. US GIS Data or from the horses mouth census

I had long nights searching all over the web and struggling to cleanly implement the available solutions without being able to find something that fits my needs.

So I ended by developing my own API provider which I made thoroughly documented. You can test it here: Battuta

  • Just for comment, this api is not working now. Check again for if is working again or if definitely does not work anymore. – cigotete Nov 16 '18 at 15:01
  • Yes I know, I am having problems with the hosting provider – MedUnes Nov 20 '18 at 11:02
  • do you have any idea of when will be available?. do you need any help? I know about several users that were using your useful Api. Or if you know about an alternative meanwhile, please let us know. – cigotete Nov 21 '18 at 14:17
  • Hi cigoete, Actually it will come back live again in December 1st. Also consider that some malicious users are exhausting the service and thus I got suspended by the hosting provider, every time (month) More additionally, I'm thinking about drastically changing the way the service works, one possibility is that I will open source it. But for now, you can know that it will come live back again after tomorrow, and thanks for spreading this message over. – MedUnes Nov 29 '18 at 8:19
  • Hi @MedUnes for the update. Is good to know that the service will be available again (the service is very useful). – cigotete Nov 29 '18 at 20:44

This is an old thread, but many people might still come here searching answers for the same questions. I want to share a link to API that found useful for my needs: http://www.geonames.org/export/web-services.html


We at The Basetrip are working on country & city* travel information. We recently published open-source GitHub repository with basic data (as in ISO code, region, capital, languages etc.) which will be updated once per month and expanded with various data points in the future.

Alongside that we offer commercial API with a lot more info so feel free to check it out.

To summarize:

  1. Countries Information - we have some data
  2. States Information - for time zones see Google Maps Time Zone API
  3. Cities Information - for capitals see 1, for time zones see Google Maps Time Zone API
  4. Airports Information - work in progress
  5. Hotels Information - unfortunately we don't provide that data

*City information is work-in-progress and will be available soon


Region and countries







"iso_3166-2":"ISO 3166-2:NG",


"sub-region":"Sub-Saharan Africa",

"intermediate-region":"Western Africa",





Countries and cities


"countryinfo" (

iso_alpha2 char(2),

iso_alpha3 char(3),

iso_numeric integer,

fips_code varchar(3),

name varchar(200),

capital varchar(200),

areainsqkm double precision,

population integer,

continent varchar(2),

tld varchar(10),

currencycode varchar(3),

currencyname varchar(20),

phone varchar(20),

postalcode varchar(100),

postalcoderegex varchar(200),

languages varchar(200),

geonameId int,

neighbors varchar(50),

equivfipscode varchar(3)

  • Welcome to GIS.se! Could you add some notes explaining the link data structures, and perhaps think about whether these links will be available in the future (i.e. are they maintained)? – Simbamangu Jun 22 '18 at 8:15

Not the answer you're looking for? Browse other questions tagged or ask your own question.