Geokodierung

Wandelt Text in Koordinaten um. Akzeptiert vollständige Adressen, Teiladressen, Postleitzahlen, Ortsnamen und Points of Interest, in jeder Sprache.

GEThttps://api.mygeocode.com/v1/forward

Parameter

ParameterTypBeschreibung
qerforderlich*StringFreitext zum Geokodieren. Bis zu 256 Zeichen.
street, city, state, postcode, countryString*Strukturierte Alternative zu q. Verwenden Sie sie, wenn Sie die Adresse bereits in Feldern haben. Mindestens eines ist erforderlich, wenn q fehlt. country ist hier ein ISO 3166-1 Alpha-2-Code.
place_idString*Eine place_id aus der Autovervollständigung. Liefert genau diesen Ort mit vollständigen Komponenten und Begrenzungen. Hat Vorrang vor q.
limitoptionalIntegerMaximale Anzahl Ergebnisse, 1 bis 10. Standard 5.
countriesoptionalStringKommagetrennte ISO 3166-1 Alpha-2-Codes. Es werden nur Ergebnisse in diesen Ländern zurückgegeben. Beispiel: gb,ie.
boundsoptionalStringsouth,west,north,east in Dezimalgrad. Ergebnisse innerhalb des Rechtecks werden zuerst gereiht. Fügen Sie strict=1 hinzu, um Ergebnisse außerhalb auszuschließen.
proximityoptionalStringlat,lon. Ergebnisse in der Nähe dieses Punkts werden zuerst gereiht.
langoptionalStringISO 639-1 Code für Namen in der Antwort. Standard en.
keyoptionalStringAPI-Schlüssel, falls nicht als Header X-API-Key gesendet.

Beispiel

$ curl -H "X-API-Key: YOUR_KEY" "https://api.mygeocode.com/v1/forward?q=Dam+1,+Amsterdam&countries=nl&limit=1"
const url = new URL("https://api.mygeocode.com/v1/forward");
url.searchParams.set("q", "Dam 1, Amsterdam");
url.searchParams.set("countries", "nl");
url.searchParams.set("limit", "1");

const data = await (await fetch(url, { headers: { "X-API-Key": "YOUR_KEY" } })).json();
console.log(data.results[0]);
import requests

r = requests.get("https://api.mygeocode.com/v1/forward",
                 params={"q": "Dam 1, Amsterdam", "countries": "nl", "limit": 1}, headers={"X-API-Key": "YOUR_KEY"}, timeout=10)
print(r.json()["results"][0])
Antwort
{
  "status": "ok",
  "query": "Dam 1, Amsterdam",
  "results": [
    {
      "formatted": "Dam 1, 1012 JS Amsterdam, Netherlands",
      "lat": 52.373119,
      "lon": 4.893604,
      "type": "address",
      "precision": "house",
      "confidence": 0.98,
      "place_id": "nl.addr.c21d40e8",
      "components": {
        "house_number": "1",
        "road": "Dam",
        "neighbourhood": "Centrum",
        "city": "Amsterdam",
        "state": "North Holland",
        "state_code": "NH",
        "postcode": "1012 JS",
        "country": "Netherlands",
        "country_code": "nl"
      },
      "bounds": { "north": 52.373519, "south": 52.372719, "east": 4.894204, "west": 4.893004 }
    }
  ]
}

Antwortfelder

FeldTypBeschreibung
queryStringDer Text, den wir interpretiert haben, nach dem Trimmen.
resultsArrayTreffer, der beste zuerst. Leer, wenn nichts gefunden wurde.
results[].formattedStringVollständige Adresse im üblichen Format des Landes.
results[].lat, lonZahlWGS 84 Dezimalgrad.
results[].typeStringaddress, street, postcode, city, region, country, poi.
results[].precisionStringhouse, street, postcode, admin. Was der Punkt darstellt. Siehe Abdeckung.
results[].confidenceZahl0 bis 1. Wie gut das Ergebnis zur Abfrage passt. Unter 0.5 bedeutet, dass wir geschätzt haben.
results[].place_idStringStabile Kennung für diesen Ort.
results[].componentsObjektAdressbestandteile. Siehe unten.
results[].boundsObjektnorth, south, east, west des gefundenen Objekts.

Komponenten-Schlüssel

Nur zutreffende Schlüssel sind vorhanden. In jedem Land werden dieselben Schlüssel verwendet.

SchlüsselBedeutung
nameName eines Points of Interest oder Gebäudes, wenn der Treffer eines ist.
house_numberEinschließlich Buchstaben und Bereichen: 221B, 12-14.
roadStraßenname mit Straßentyp: Baker Street, Avenue Anatole France.
neighbourhood, suburbStadtteile, wo das Land sie verwendet.
cityStadt, Kleinstadt oder Dorf.
countyLandkreis oder Bezirk.
state, state_codeBundesland, Provinz oder Region und ihr ISO 3166-2 Suffix, sofern vorhanden.
postcodePostleitzahl, so formatiert, wie die Postbehörde sie formatiert.
country, country_codeLändername und ISO 3166-1 Alpha-2-Code in Kleinbuchstaben.

Hinweise

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.

AnbieterHostPfad
Google Maps Platformgapi.mygeocode.com/maps/api/geocode/json?address=...
Bing Maps REST Servicesbing.mygeocode.com/REST/v1/Locations?q=...
/REST/v1/Locations?countryRegion=...&locality=...&addressLine=...
HERE Geocoding and Searchhere.mygeocode.com/v1/geocode?q=...
/v1/geocode?qq=street=...;city=...
Mapbox Geocodingmapbox.mygeocode.com/geocoding/v5/mapbox.places/{query}.json
/search/geocode/v6/forward?q=...
Geocode.Farmfarm.mygeocode.com/forward/?addr=...
/v3/json/forward/?addr=...
OpenStreetMap Nominatimosm.mygeocode.com/search?q=...&format=json
/search?street=...&city=...&country=...&format=json
OpenCageopencage.mygeocode.com/geocode/v1/json?q=...
/geocode/v1/geojson?q=...
LocationIQlocationiq.mygeocode.com/v1/search?q=...&format=json
Geoapifygeoapify.mygeocode.com/v1/geocode/search?text=...
TomTom Searchtomtom.mygeocode.com/search/2/geocode/{query}.json
/search/2/structuredGeocode.json?countryCode=...&streetName=...
MapQuest Geocodingmapquest.mygeocode.com/geocoding/v1/address?location=...
/geocoding/v1/batch?location=...&location=...
Geocodiogeocodio.mygeocode.com/v1.7/geocode?q=...
/v1.7/geocode (POST, JSON array)
PositionStackpositionstack.mygeocode.com/v1/forward?query=...

Massenabfragen

Senden Sie per POST einen JSON-Body an denselben Pfad mit queries, einem Array mit bis zu 100 Adressen, und die Antwort enthält ein Array results mit einem Eintrag pro Abfrage 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/forward" -H "Content-Type: application/json" -d '{"queries": ["Brandenburg Gate, Berlin", "Bahnhofstrasse 1, Zurich"]}'

Fehler

400 invalid_request, wenn weder q noch ein strukturiertes Feld noch place_id vorhanden ist, wenn limit außerhalb von 1 bis 10 liegt oder wenn bounds oder proximity fehlerhaft ist. Den Rest finden Sie unter Fehler.