Geocoding — entry 028 of 80

GeoNames

Verified Jul 2026

GeoNames provides place names, postal codes, and other geographical reference data covering every country, sourced from a large volunteer-curated open database. Every request — free or premium — must carry a registered username parameter rather than an anonymous key; free-tier limits vary by service (e.g. a 30km search radius and up to 500 rows for postal-code search), with wider limits and an SLA available on paid premium web services. Responses are XML by default, with dedicated JSON endpoints (suffixed 'JSON') recommended for browser-based use.

geocodingpostal-codeopen-datagovernment-datafree
AuthenticationAPI KeySign up with the provider to obtain credentials.
HTTPSSupportedTraffic is encrypted in transit.
CORSEnabledCallable directly from browser JavaScript.
PricingFreemiumA usable free tier exists, with paid plans for more volume.
FormatsXML, JSONResponses can be requested as XML or JSON.

GreatAPIs Score

Score67out of 100
Authentication15/25API key required
Pricing17/20Freemium tier available
Docs0/20No docs or spec available
Formats15/15Supports 2 response formats
Freshness20/20Verified within 6 months

Embed this badge

Scored 67 on greatapis.com
<a href="https://greatapis.com/api/geonames/"><img src="https://greatapis.com/badge/geonames.svg" alt="Scored 67 on greatapis.com"></a>

Auth quickstart

  1. Get a key at the provider
  2. Send it on every request as a headerAuthorization: <key>
  3. The exact header isn't documented — Authorization is a common default; confirm in the provider's docs.
Stored keyNo key stored

Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.

Try it

Developer reference

Base URLhttp://api.geonames.org
Rate limit

10,000 credits/day, 1,000 credits/hour per free username

Key endpoints
  • GET/postalCodeSearchJSON
  • GET/findNearbyPlaceNameJSON
  • GET/searchJSON