Access comprehensive location data for regions, states, and cities worldwide. Perfect for applications requiring geolocation, search, and reverse geocoding.
No credit card required • 1,000 free requests/day
Everything you need to build location-aware applications
Search across millions of cities, states, and regions worldwide with lightning-fast queries.
Convert coordinates to location data. Find the nearest city from any latitude and longitude.
Built on PostgreSQL with optimized queries. Average response time under 50ms.
API key authentication, rate limiting, and 99.9% uptime guarantee.
Track your API usage with detailed statistics and real-time monitoring.
Simple REST API with comprehensive documentation. Get started in minutes.
Start free, scale as you grow
Ideal for development, testing, and small projects
More than enough for most applications
Full access to all features
Track your API consumption
Create and manage multiple keys
No credit card required
Simple REST endpoints with clear documentation
/api/locations/search?q=new%20york
Search across regions, states, and cities
{
"query": "new york",
"results": {
"cities": [
{
"name": "New York",
"country_code": "US",
"latitude": 40.7128,
"longitude": -74.0060
}
]
}
}
Get started with your free account
Base URL:
Authentication:
Include your API key in one of these ways:
X-API-Key: your-api-keyAuthorization: Bearer your-api-key?api_key=your-api-keyRate Limits:
Free tier: 1,000 requests per day | Premium: 100,000 requests per day
GET /api/locations/search?q={query}&limit={limit}
Search across regions, states, and cities
Params: q (required), limit (optional, default: 10)
GET /api/locations/regions?q={query}&limit={limit}
Search regions or list all regions (omit q to list all)
Params: q (optional), limit (optional)
GET /api/locations/states?q={query}&country={code}&limit={limit}
Search for states/provinces
Params: q (required), country (optional), limit (optional, default: 10)
GET /api/locations/cities?q={query}&country={code}&state={code}&limit={limit}
Search for cities
Params: q (required), country (optional), state (optional), limit (optional, default: 10)
GET /api/locations/countries?limit={limit}
Get all countries
Params: limit (optional)
GET /api/locations/regions/{regionId}/subregions
Get subregions for a specific region
GET /api/locations/regions/{regionId}/countries
Get countries in a specific region
GET /api/locations/subregions/{subregionId}/countries
Get countries in a specific subregion
GET /api/locations/countries/{countryId}/states
Get states/provinces in a specific country
GET /api/locations/states/{stateId}/cities?limit={limit}
Get cities in a specific state
Params: limit (optional, default: 100)
GET /api/locations/countries/{countryId}/cities?limit={limit}
Get cities in a specific country
Params: limit (optional, default: 100)
GET /api/locations/reverse?lat={lat}&lon={lon}&maxDistance={km}
Find the nearest city by coordinates
Params: lat (required), lon (required), maxDistance (optional, default: 50km)
GET /api/locations/reverse/nearest?lat={lat}&lon={lon}&limit={count}&maxDistance={km}
Find multiple nearest cities
Params: lat (required), lon (required), limit (optional, default: 5, max: 50), maxDistance (optional, default: 100km)
GET /api/auth/profile
Get user profile and subscription info
GET /api/auth/api-keys
Get all API keys for the authenticated user
GET /api/auth/usage?days={days}
Get usage statistics
Params: days (optional, default: 30)