Nominatim reverse geocoding - coordinates to address

GET /v1/nominatim/reverse
Base URL: https://capi.busmaps.com:8443

Convert geographic coordinates into an address using OpenStreetMap Nominatim. The included example and response schema describe the default jsonv2 format. Other response formats and the complete parameter reference are documented by Nominatim: https://nominatim.org/release-docs/latest/api/Reverse/. This proxy removes the top-level licence field.

Parameters

ParameterTypeRequiredDescriptionExample
lat number Yes Latitude coordinate 51.51558
lon number Yes Longitude coordinate -0.130463
format string No Output format (Default: jsonv2; Values: json, jsonv2, xml, geojson, geocodejson) jsonv2
zoom integer No Level of detail (0-18). Higher values return more detailed addresses (Default: 18) 18
addressdetails integer No Include detailed address breakdown (0 or 1) (Default: 1; Values: 0, 1) 1
accept-language string No Preferred language for results (ISO 639-1 codes) en

Try It Out

Required parameters only

curl -H "capi-key: Bearer YOUR_API_KEY" \
     -H "capi-host: busmaps.com" \
     "https://capi.busmaps.com:8443/v1/nominatim/reverse?lat=51.51558&lon=-0.130463"

Popular parameters

curl -H "capi-key: Bearer YOUR_API_KEY" \
     -H "capi-host: busmaps.com" \
     "https://capi.busmaps.com:8443/v1/nominatim/reverse?lat=51.51558&lon=-0.130463&format=jsonv2&zoom=18&addressdetails=1&accept-language=en"

Response Example

{
    "address": {
        "ISO3166-2-lvl4": "GB-ENG",
        "ISO3166-2-lvl8": "GB-CMD",
        "amenity": "Stars",
        "city": "London",
        "city_district": "London Borough of Camden",
        "country": "United Kingdom",
        "country_code": "gb",
        "house_number": "2-4",
        "neighbourhood": "St Giles",
        "postcode": "W1D 3BG",
        "road": "Soho Place",
        "state": "England",
        "state_district": "Greater London",
        "suburb": "Bloomsbury"
    },
    "addresstype": "amenity",
    "boundingbox": [
        "51.5155140",
        "51.5156140",
        "-0.1305925",
        "-0.1304925"
    ],
    "category": "amenity",
    "display_name": "Stars, 2-4, Soho Place, St Giles, Bloomsbury, London Borough of Camden, London, Greater London, England, W1D 3BG, United Kingdom",
    "importance": 9.99999999995449e-6,
    "lat": "51.515564",
    "lon": "-0.1305425",
    "name": "Stars",
    "osm_id": 10693862476,
    "osm_type": "node",
    "place_id": 275261823,
    "place_rank": 30,
    "type": "restaurant"
}

Response Schema

View JSON Schema
{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "title": "Nominatim Reverse Geocoding Response (format=jsonv2)",
    "type": "object",
    "properties": {
        "address": {
            "type": "object",
            "properties": {
                "city": {
                    "type": "string",
                    "description": "City"
                },
                "region": {
                    "type": "string",
                    "description": "Region"
                },
                "amenity": {
                    "type": "string",
                    "description": "Amenity name/type at the location"
                },
                "state": {
                    "type": "string",
                    "description": "State/region"
                },
                "postcode": {
                    "type": "string",
                    "description": "Postal code"
                },
                "neighbourhood": {
                    "type": "string",
                    "description": "Neighbourhood"
                },
                "leisure": {
                    "type": "string",
                    "description": "Leisure feature at the location"
                },
                "country": {
                    "type": "string",
                    "description": "Country name"
                },
                "ISO3166-2-lvl4": {
                    "type": "string",
                    "description": "ISO 3166-2 subdivision code (level 4)"
                },
                "road": {
                    "type": "string",
                    "description": "Street/road name"
                },
                "city_district": {
                    "type": "string",
                    "description": "City district"
                },
                "country_code": {
                    "type": "string",
                    "description": "ISO 3166-1 alpha-2 country code"
                },
                "ISO3166-2-lvl8": {
                    "type": "string",
                    "description": "ISO 3166-2 subdivision code (level 8)"
                },
                "state_district": {
                    "type": "string",
                    "description": "State district"
                },
                "suburb": {
                    "type": "string",
                    "description": "Suburb"
                },
                "city_block": {
                    "type": "string",
                    "description": "City block"
                },
                "county": {
                    "type": "string",
                    "description": "County"
                },
                "house_number": {
                    "type": "string",
                    "description": "House number"
                },
                "ISO3166-2-lvl6": {
                    "type": "string",
                    "description": "ISO 3166-2 subdivision code (level 6)"
                }
            },
            "required": [
                "city",
                "road",
                "state",
                "postcode",
                "country_code",
                "suburb",
                "country",
                "ISO3166-2-lvl4"
            ],
            "description": "Address components breakdown"
        },
        "osm_type": {
            "type": "string",
            "description": "OpenStreetMap element type (node, way, relation)"
        },
        "importance": {
            "type": "number",
            "description": "Search result importance score"
        },
        "addresstype": {
            "type": "string",
            "description": "Type of address component returned"
        },
        "name": {
            "type": "string",
            "description": "Name of the place (if available)"
        },
        "boundingbox": {
            "type": "array",
            "items": {
                "type": "string"
            },
            "description": "Bounding box [minLat, maxLat, minLon, maxLon] as decimal-degree strings"
        },
        "type": {
            "type": "string",
            "description": "OSM type (residential, commercial, bus_stop, etc.)"
        },
        "place_id": {
            "type": "integer",
            "description": "Unique identifier for the place in OSM Nominatim"
        },
        "lon": {
            "type": "string",
            "description": "Longitude of the result as a decimal-degree string"
        },
        "osm_id": {
            "type": "integer",
            "description": "OpenStreetMap element ID"
        },
        "lat": {
            "type": "string",
            "description": "Latitude of the result as a decimal-degree string"
        },
        "place_rank": {
            "type": "integer",
            "description": "Nominatim importance rank of the place"
        },
        "category": {
            "type": "string",
            "description": "OSM category/class (highway, building, amenity, etc.)"
        },
        "display_name": {
            "type": "string",
            "description": "Full human-readable address"
        }
    },
    "required": [
        "type",
        "address",
        "importance",
        "osm_type",
        "place_id",
        "category",
        "lon",
        "osm_id",
        "addresstype",
        "lat",
        "display_name",
        "place_rank",
        "name",
        "boundingbox"
    ]
}

Response Codes

200 Address found successfully
400 Invalid coordinates
404 No address found for coordinates
500 Internal server error