reverse: Reverse geocoding - get address from coordinates
Description
Returns a single result containing the address details, place type, and display name for the given coordinates. Use this to convert GPS coordinates into human-readable addresses or identify what location exists at specific coordinates.
From spec: Search for an OSM object at a specific coordinate location. Returns exactly one result or an error when the coordinate has no OSM data coverage.
Usage Tips
- Rate limit: 1 request per second maximum
- Must include User-Agent header with contact info
- Free usage requires attribution: Data © OpenStreetMap contributors, ODbL 1.0
- Returns exactly one result or an error if coordinates have no OSM coverage
- Coordinates must be in decimal degrees (WGS84)
Parameters (17)
accept-language
(string, query, optional)
Preferred language for results
addressdetails
(integer, query, optional, default: 1)
Include a breakdown of the address (1=yes, 0=no)
Constraints: {'enum': [0, 1]}
debug
(integer, query, optional, default: 0)
Output debug info (returns HTML, 1=yes, 0=no)
Constraints: {'enum': [0, 1]}
email
(string, query, optional)
Valid email for identification
entrances
(integer, query, optional, default: 0)
Include tagged entrances (1=yes, 0=no)
Constraints: {'enum': [0, 1]}
extratags
(integer, query, optional, default: 0)
Include additional information (1=yes, 0=no)
Constraints: {'enum': [0, 1]}
format
(string, query, optional, default: xml)
Output format
Constraints: {'enum': ['xml', 'json', 'jsonv2', 'geojson', 'geocodejson']}
lat
(number, query, required)
Latitude in WGS84 projection
Constraints: {'minimum': -90, 'maximum': 90}
layer
(string, query, optional, default: address,poi)
Filter by layer (comma-separated: address, poi, railway, natural, manmade)
lon
(number, query, required)
Longitude in WGS84 projection
Constraints: {'minimum': -180, 'maximum': 180}
namedetails
(integer, query, optional, default: 0)
Include full list of names (1=yes, 0=no)
Constraints: {'enum': [0, 1]}
polygon_geojson
(integer, query, optional, default: 0)
Add geometry in GeoJSON format (1=yes, 0=no)
Constraints: {'enum': [0, 1]}
polygon_kml
(integer, query, optional, default: 0)
Add geometry in KML format (1=yes, 0=no)
Constraints: {'enum': [0, 1]}
polygon_svg
(integer, query, optional, default: 0)
Add geometry in SVG format (1=yes, 0=no)
Constraints: {'enum': [0, 1]}
polygon_text
(integer, query, optional, default: 0)
Add geometry in WKT format (1=yes, 0=no)
Constraints: {'enum': [0, 1]}
polygon_threshold
(number, query, optional, default: 0.0)
Geometry simplification tolerance in degrees
zoom
(integer, query, optional, default: 18)
Level of detail required (0-18, where 0=country, 18=building)
Constraints: {'minimum': 0, 'maximum': 18}
Examples (2)
Reverse geocode coordinates near Big Ben
probe-gate
Demonstrates reverse geocoding to get address from latitude/longitude coordinates
Curl
Python Requests
Zingu Apis
Javascript Fetch
curl 'https://nominatim.openstreetmap.org/reverse?lat=51.5008&lon=-0.1243&format=json'
import requests
resp = requests.get(
"https://nominatim.openstreetmap.org/reverse",
params={
'lat': '51.5008',
'lon': '-0.1243',
'format': 'json',
},
)
data = resp.json()
import zingu_apis
api = zingu_apis.api("nominatim-geocoding")
result = api.fetch("reverse", lat=51.5008, lon=-0.1243, format="json")
for item in result:
print(item)
const resp = await fetch("https://nominatim.openstreetmap.org/reverse?lat=51.5008&lon=-0.1243&format=json");
const data = await resp.json();
Run
Truncate
Auto
Table
Raw
Reverse geocode Eiffel Tower area
probe-gate
Demonstrates reverse geocoding near the Eiffel Tower in Paris
Curl
Python Requests
Zingu Apis
Javascript Fetch
curl 'https://nominatim.openstreetmap.org/reverse?lat=48.8583&lon=2.2944&format=json'
import requests
resp = requests.get(
"https://nominatim.openstreetmap.org/reverse",
params={
'lat': '48.8583',
'lon': '2.2944',
'format': 'json',
},
)
data = resp.json()
import zingu_apis
api = zingu_apis.api("nominatim-geocoding")
result = api.fetch("reverse", lat=48.8583, lon=2.2944, format="json")
for item in result:
print(item)
const resp = await fetch("https://nominatim.openstreetmap.org/reverse?lat=48.8583&lon=2.2944&format=json");
const data = await resp.json();
Run
Truncate
Auto
Table
Raw
Probe History
Time Status Latency Size
2026-04-16 16:53:49.377037
200
314ms
2026-04-16 04:16:52.244086
200
575ms
2026-04-16 03:38:12.483526
200
311ms
2026-04-15 00:32:53.512889
200
374ms
2026-04-15 00:26:33.268896
200
291ms
2026-04-14 02:12:51.532608
200
276ms
2026-04-14 00:25:18.329567
200
347ms
2026-04-12 16:24:37.680058
200
323ms
2026-04-12 13:13:42.354209
200
238ms
2026-04-10 04:06:34.998046
200
1678ms
2026-04-10 00:11:11.645855
200
308ms
2026-04-09 02:31:24.131612
200
524ms
2026-04-09 02:27:38.935901
200
258ms