Reverse-Geokodierung
Koordinaten hinein, die nächstgelegene Adresse heraus, oder der Ort, die Region oder das Land, wenn Sie nur das brauchen.
Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
laterforderlich | Zahl | -90 bis 90. |
lonerforderlich | Zahl | -180 bis 180. |
leveloptional | String | Die spezifischste zurückzugebende Ebene: address (Standard), street, postcode, city, region, country. Gröbere Ebenen sind schneller und fallen nie unter die angeforderte Ebene. |
radiusoptional | Integer | Suchradius in Metern für Adressen, 1 bis 5000. Standard 5000. Setzen Sie ihn klein, um null statt einer weit entfernten Adresse zu erhalten. |
langoptional | String | ISO 639-1 Code für Namen. Standard en. |
keyoptional | String | API-Schlüssel, falls nicht als Header gesendet. |
Beispiel
$ curl -H "X-API-Key: YOUR_KEY" "https://api.mygeocode.com/v1/reverse?lat=41.8902&lon=12.4922&lang=it"const url = new URL("https://api.mygeocode.com/v1/reverse");
url.searchParams.set("lat", 41.8902);
url.searchParams.set("lon", 12.4922);
url.searchParams.set("lang", "it");
const { result } = await (await fetch(url, { headers: { "X-API-Key": "YOUR_KEY" } })).json();
console.log(result ? result.formatted : "nothing nearby");import requests
r = requests.get("https://api.mygeocode.com/v1/reverse",
params={"lat": 41.8902, "lon": 12.4922, "lang": "it"}, headers={"X-API-Key": "YOUR_KEY"}, timeout=10)
result = r.json()["result"]
print(result["formatted"] if result else "nothing nearby"){
"status": "ok",
"lat": 41.8902,
"lon": 12.4922,
"result": {
"formatted": "Piazza del Colosseo 1, 00184 Roma RM, Italia",
"lat": 41.890251,
"lon": 12.492373,
"distance_m": 9,
"type": "address",
"precision": "house",
"place_id": "it.addr.5d09aa31",
"components": {
"house_number": "1",
"road": "Piazza del Colosseo",
"suburb": "Municipio Roma I",
"city": "Roma",
"county": "Roma",
"state": "Lazio",
"postcode": "00184",
"country": "Italia",
"country_code": "it"
}
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
lat, lon | Zahl | Der von Ihnen gesendete Punkt, zurückgegeben. |
result | Objekt oder null | null, wenn auf der angeforderten Ebene nichts innerhalb von radius liegt. |
result.formatted | String | Die Adresse oder bei gröberen Ebenen der Ortsname. |
result.lat, result.lon | Zahl | Die Position des zurückgegebenen Objekts, nicht Ihres Punkts. |
result.distance_m | Integer | Meter von Ihrem Punkt bis zum Objekt. 0, wenn der Punkt darin liegt. |
result.type, result.precision, result.place_id, result.components | Wie bei der Geokodierung. |
Hinweise
- Ein großer Wert für
distance_mist ein Signal. Ein Punkt in einem Park kann 300 m von der nächsten Adresse entfernt sein; in diesem Fall ist es meist besser, das Viertel anzuzeigen als die Adresse. level=countryantwortet in etwa einer Millisekunde und ist die günstigste Art, die Frage „In welchem Land liegt dieser Punkt?“ zu beantworten.- Punkte auf See liefern auf Ebene
addressden Wertnullund innerhalb der Hoheitsgewässer auf Ebenecountrydas Land.
Dieselbe Abfrage in den Formaten anderer Anbieter
Wenn Sie bereits Code für einen dieser Anbieter geschrieben haben, behalten Sie ihn: Der Drop-in-Host akzeptiert denselben Pfad und dieselben Parameter und antwortet in der Antwortstruktur dieses Anbieters, mit diesem Endpunkt dahinter. Siehe So funktionieren die Drop-in-Hosts.
| Anbieter | Host | Pfad |
|---|---|---|
| Google Maps Platform | gapi.mygeocode.com | /maps/api/geocode/json?latlng=lat,lng |
| Bing Maps REST Services | bing.mygeocode.com | /REST/v1/Locations/{lat},{lon} |
| HERE Geocoding and Search | here.mygeocode.com | /v1/revgeocode?at=lat,lng |
| Mapbox Geocoding | mapbox.mygeocode.com | /geocoding/v5/mapbox.places/{lon},{lat}.json/search/geocode/v6/reverse?longitude=...&latitude=... |
| Geocode.Farm | farm.mygeocode.com | /reverse/?lat=...&lon=.../v3/json/reverse/?lat=...&lon=... |
| OpenStreetMap Nominatim | osm.mygeocode.com | /reverse?lat=...&lon=...&format=json |
| OpenCage | opencage.mygeocode.com | /geocode/v1/json?q=lat,lng |
| LocationIQ | locationiq.mygeocode.com | /v1/reverse?lat=...&lon=...&format=json |
| Geoapify | geoapify.mygeocode.com | /v1/geocode/reverse?lat=...&lon=... |
| TomTom Search | tomtom.mygeocode.com | /search/2/reverseGeocode/{lat},{lon}.json |
| MapQuest Geocoding | mapquest.mygeocode.com | /geocoding/v1/reverse?location=lat,lng |
| Geocodio | geocodio.mygeocode.com | /v1.7/reverse?q=lat,lng |
| PositionStack | positionstack.mygeocode.com | /v1/reverse?query=lat,lng |
Massenabfragen
Senden Sie per POST einen JSON-Body an denselben Pfad mit coords, einem Array mit bis zu 100 Paaren [lat, lon], und die Antwort enthält ein Array results mit einem Eintrag pro Paar in der gesendeten Reihenfolge. Jeder Eintrag zählt als eine Anfrage, und ein Batch, der größer ist als das verbleibende Kontingent, wird vollständig abgelehnt.
$ curl -X POST "https://api.mygeocode.com/v1/reverse" -H "Content-Type: application/json" -d '{"coords": [[52.5163, 13.3777], [47.3769, 8.5417]]}'Fehler
400 invalid_request, wenn lat oder lon fehlt oder außerhalb des gültigen Bereichs liegt oder level keiner der aufgeführten Werte ist.