Overview
Battuta is a hierarchical location API that lets you browse countries, regions, and cities in a cascade, making it easy to build location pickers with dependent dropdowns. It requires a free API key and uses HTTP (not HTTPS), so avoid sending sensitive data with it. It is useful for populating geographic form fields with structured, navigable location data.
Beginner Tip
The API works in a top-down cascade: first query countries, then use the returned country code to get regions, and finally use the region code to list cities. Each level filters the next.
Available Data
The kind of data this API exposes, based on its documentation. We could not call the endpoint to confirm the exact field names.
Example Response
Illustrative shape only — we were not able to call this endpoint (it requires credentials or exposes no public sample URL), so the fields below show the kind of data this API returns rather than a recorded response.
{
"name": "Japan",
"capital": "Tokyo",
"population": 125800000,
"region": "Asia",
"languages": [
"Japanese"
],
"flag": "https://flagcdn.com/jp.svg",
"currencies": [
{
"code": "JPY",
"name": "Japanese yen"
}
]
} Field Reference
name Name of the country, region, or city depending on the endpoint queried. code ISO or regional code for the location, used to query the next level in the cascade. region Name of the parent region when querying cities. Implementation Example
Calls a real endpoint of this API. Replace any placeholder credentials with your own key.
const url = "http://battuta.medunes.net/api/country/all/?key=YOUR_API_KEY&callback=";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
headers: {
"X-API-Key": "YOUR_API_KEY"
}
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data); What Can You Build?
Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.
Common Errors & Troubleshooting
Generated guidance based on this API's documentation, not observed by us. Treat it as a starting point and check against the provider's own error reference.
Metadata Score Breakdown
Estimated from metadata — endpoint not independently tested
Metadata estimate · endpoint not independently tested
Technical Specifications
Related Tags
Similar APIs
View All →Apiip
Apiip is an IP geolocation API that returns detailed location data including city, country, timezone, and currency for any IP address.
BigDataCloud
⭐ Beginner's PickBigDataCloud offers a fast and highly accurate IP geolocation API that also includes network security checks and a confidence area metric to indicate how precise the location is.
Bing Maps
Bing Maps (now Azure Maps) is Microsoft's mapping platform that lets you geocode addresses, reverse geocode coordinates, get routes, and embed interactive maps in your applications.
CountryStateCity
⭐ Beginner's PickCountryStateCity provides a comprehensive API with world countries, states, regions, and cities data in multiple formats including JSON, SQL, and CSV.
administrative-divisons-db
⭐ Beginner's PickThe Administrative Divisions DB API provides a structured list of all administrative divisions (states, provinces, regions, cities) for countries around the world.