Geocoding-Anfrage und -Antwort

Anfrage

Eine Geocoding API-Anfrage hat folgende Form:

https://maps.googleapis.com/maps/api/geocode/outputFormat?parameters

Dabei kann outputFormat einer der folgenden Werte sein:

  • json (empfohlen) verweist auf eine Ausgabe in JSON (JavaScript Object Notation). oder
  • xml gibt eine Ausgabe in XML an.

HTTPS ist erforderlich.

Einige Parameter sind erforderlich, während andere optional verwendet werden können. Wie bei URLs üblich, -Parameter werden durch kaufmännische Und-Zeichen (&) getrennt.

Im Folgenden werden Geocoding und umgekehrte Geocodierung separat, da Für jeden Anfragetyp stehen verschiedene Parameter zur Verfügung.

Geocoding-Parameter (Suche nach Breiten- und Längengrad)

Erforderliche Parameter in einer Geocoding-Anfrage:

  • address: die Adresse oder der Plus Code die Sie geocodieren möchten. Geben Sie Adressen in dem Format an, das vom Postdienst des entsprechenden Landes verwendet wird. Zusätzliche Adresselemente wie Firmennamen und Wohnungs-, Büro- oder Etagennummern sollten vermieden werden. Adresselemente sollten durch Leerzeichen getrennt sein (hier als URL-Escaping in %20 dargestellt):
    address=24%20Sussex%20Drive%20Ottawa%20ON
    Formatieren Sie die Plus Codes wie hier gezeigt (Pluszeichen werden in der URL als %2B und Leerzeichen als %20 formatiert):
    • Global Code ist ein vierstelliger Vorwahlbereich mit mindestens 6 Zeichen Ortscode (849VCWC8+R9 ist 849VCWC8%2BR9).
    • Compound Code ist ein mindestens sechsstelliger lokaler Code mit einem expliziter Standort (CWC8+R9 Mountain View, CA, USA ist CWC8%2BR9%20Mountain%20View%20CA%20USA).

    --OR--
    components: Ein Komponentenfilter mit Elementen durch ein Pipe-Zeichen (|) getrennt. Der Komponentenfilter wird ebenfalls akzeptiert. als optionaler Parameter, wenn address angegeben wird. Jedes Element im Komponentenfilter besteht aus einem component:value-Paar und schränkt die Ergebnisse des Geocoders vollständig ein. Weitere Informationen zu Filtern von Komponenten weiter unten.
  • key: Der API-Schlüssel Ihrer Anwendung. Dieser Schlüssel identifiziert Ihre Anwendung für die Kontingentverwaltung. Hier erfahren Sie, wie Sie einen Schlüssel abrufen.

Weitere Informationen finden Sie in den häufig gestellten Fragen für erhalten Sie weitere Hinweise.

Optionale Parameter in einer Geocoding-Anfrage:

  • bounds: Der Begrenzungsrahmen des Darstellungsbereichs innerhalb dessen die Geocoding-Ergebnisse stärker gewichtet werden sollen. Dieser Parameter wird beeinflussen nur die Ergebnisse des Geocoders, schränken sie aber nicht völlig ein. (Weitere Weitere Informationen zur Gewichtung des Darstellungsbereichs
  • language – Die Sprache, in der Ergebnisse zurückgeben.
    • Weitere Informationen finden Sie in der Liste der unterstützten Sprachen. Die unterstützten Sprachen werden regelmäßig von Google aktualisiert. Diese Liste ist daher möglicherweise nicht vollständig.
    • Wird language nicht angegeben, versucht der Geocoder, Verwenden Sie die bevorzugte Sprache, wie in den Accept-Language-Headers oder in der Muttersprache des Domain, von der die Anfrage gesendet wird.
    • Der Geocoder versucht, eine Adresse anzugeben, die sowohl für Nutzer als auch für Ortsansässige. Um dieses Ziel zu erreichen, gibt Adressen in der Landessprache zurück, transliteriert in eine falls notwendig für den Nutzer lesbar, unter Berücksichtigung der Sprache. Alle anderen Adressen werden in der bevorzugten Sprache. Alle Adresskomponenten werden in derselben Sprache zurückgegeben, die aus der ersten Komponente ausgewählt wird.
    • Wenn ein Name in der bevorzugten Sprache nicht verfügbar ist, verwendet der Geocoder eine möglichst genaue Übereinstimmung.
    • Die bevorzugte Sprache hat einen geringen Einfluss auf die Suchergebnisse, und in welcher Reihenfolge sie zurückgegeben werden. Der Geocoder interpretiert Abkürzungen je nach Sprache unterschiedlich, z. B. Abkürzungen für Straßentypen oder Synonyme, die in einer Sprache gültig sein können, in einer anderen aber nicht. Beispiel: utca und tér sind Synonyme für Straße und Platz auf Ungarisch.
  • region: der als ccTLD angegebene Regionscode (Top-Level-Domain) aus zwei Zeichen. Durch diesen Parameter wird nur die Ergebnisse des Geocoders beeinflussen, sie nicht vollständig einschränken. (Weitere finden Sie unter Gewichtung nach Region weiter unten. Der Parameter kann sich auch auf die Ergebnisse auswirken, die aufgrund anwendbarer Gesetze ermittelt werden.
  • components: Ein Komponentenfilter mit Elementen durch ein Pipe-Zeichen (|) getrennt. Der Komponentenfilter ist erforderlich, wenn die Anfrage keine address enthält. Jedes Element im Komponentenfilter besteht aus einem component:value-Paar und schränkt die Ergebnisse vollständig ein vom Geocoder aus. Weitere Informationen zum Filtern von Komponenten finden Sie unten.
  • extra_computations: Mit diesem Parameter geben Sie den Parameter folgende zusätzliche Funktionen in der Antwort: Um mehrere dieser Funktionen für dieselbe API-Anfrage zu aktivieren, fügen Sie den Parameter extra_computations in der Anfrage für jede Funktion, Beispiel:
    extra_computations=ADDRESS_DESCRIPTORS&extra_computations=BUILDING_AND_ENTRANCES

Antworten

Geocoding-Antworten werden in dem Format zurückgegeben, das durch das Flag output angegeben wurde in der URL-Anfrage oder standardmäßig im JSON-Format.

In diesem Beispiel fordert die Geocoding API eine json an. Antwort auf eine Anfrage nach der Adresse "1600 Amphitheatre Parkway, Mountain View, CA“.

In dieser Anfrage wird die Verwendung des JSON-Flags output veranschaulicht:

https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

In dieser Anfrage wird die Verwendung des XML-Flags output veranschaulicht:

https://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

Wählen Sie die Tabs unten aus, um sich die JSON- und XML-Beispielantworten anzusehen.

JSON

{
    "results": [
        {
            "address_components": [
                {
                    "long_name": "1600",
                    "short_name": "1600",
                    "types": [
                        "street_number"
                    ]
                },
                {
                    "long_name": "Amphitheatre Parkway",
                    "short_name": "Amphitheatre Pkwy",
                    "types": [
                        "route"
                    ]
                },
                {
                    "long_name": "Mountain View",
                    "short_name": "Mountain View",
                    "types": [
                        "locality",
                        "political"
                    ]
                },
                {
                    "long_name": "Santa Clara County",
                    "short_name": "Santa Clara County",
                    "types": [
                        "administrative_area_level_2",
                        "political"
                    ]
                },
                {
                    "long_name": "California",
                    "short_name": "CA",
                    "types": [
                        "administrative_area_level_1",
                        "political"
                    ]
                },
                {
                    "long_name": "United States",
                    "short_name": "US",
                    "types": [
                        "country",
                        "political"
                    ]
                },
                {
                    "long_name": "94043",
                    "short_name": "94043",
                    "types": [
                        "postal_code"
                    ]
                },
                {
                    "long_name": "1351",
                    "short_name": "1351",
                    "types": [
                        "postal_code_suffix"
                    ]
                }
            ],
            "formatted_address": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA",
            "geometry": {
                "location": {
                    "lat": 37.4222804,
                    "lng": -122.0843428
                },
                "location_type": "ROOFTOP",
                "viewport": {
                    "northeast": {
                        "lat": 37.4237349802915,
                        "lng": -122.083183169709
                    },
                    "southwest": {
                        "lat": 37.4210370197085,
                        "lng": -122.085881130292
                    }
                }
            },
            "place_id": "ChIJRxcAvRO7j4AR6hm6tys8yA8",
            "plus_code": {
                "compound_code": "CWC8+W7 Mountain View, CA",
                "global_code": "849VCWC8+W7"
            },
            "types": [
                "street_address"
            ]
        }
    ],
    "status": "OK"
}

Die JSON-Antwort enthält zwei Stammelemente:

  • "status" enthält Metadaten zur Anfrage. Weitere Informationen finden Sie unten im Abschnitt Statuscodes.
  • "results" enthält ein Array geocodierter Adressinformationen und Geometriedaten.

Im Allgemeinen wird nur ein Eintrag im "results"-Array für der Adresssuche, auch wenn der Geocoder unter Umständen mehrere Ergebnisse zurückgibt, sind mehrdeutig.

XML

<GeocodeResponse>
    <status>OK</status>
    <result>
        <type>street_address</type>
        <formatted_address>1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA</formatted_address>
        <address_component>
            <long_name>1600</long_name>
            <short_name>1600</short_name>
            <type>street_number</type>
        </address_component>
        <address_component>
            <long_name>Amphitheatre Parkway</long_name>
            <short_name>Amphitheatre Pkwy</short_name>
            <type>route</type>
        </address_component>
        <address_component>
            <long_name>Mountain View</long_name>
            <short_name>Mountain View</short_name>
            <type>locality</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>Santa Clara County</long_name>
            <short_name>Santa Clara County</short_name>
            <type>administrative_area_level_2</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>California</long_name>
            <short_name>CA</short_name>
            <type>administrative_area_level_1</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>United States</long_name>
            <short_name>US</short_name>
            <type>country</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>94043</long_name>
            <short_name>94043</short_name>
            <type>postal_code</type>
        </address_component>
        <geometry>
            <location>
                <lat>37.4224428</lat>
                <lng>-122.0842467</lng>
            </location>
            <location_type>ROOFTOP</location_type>
            <viewport>
                <southwest>
                    <lat>37.4212648</lat>
                    <lng>-122.0856069</lng>
                </southwest>
                <northeast>
                    <lat>37.4239628</lat>
                    <lng>-122.0829089</lng>
                </northeast>
            </viewport>
        </geometry>
        <place_id>ChIJeRpOeF67j4AR9ydy_PIzPuM</place_id>
        <plus_code>
            <global_code>849VCWC8+X8</global_code>
            <compound_code>CWC8+X8 Mountain View, CA</compound_code>
        </plus_code>
    </result>
</GeocodeResponse>

Die XML-Antwort besteht aus einer einzelnen <GeocodeResponse> und zwei Elementen der obersten Ebene:

  • <status> enthält Metadaten zur Anfrage. Weitere Informationen finden Sie unter Statuscodes unten.
  • Null oder mehr <result>-Elemente, die jeweils einen Satz von geocodierten Adress- und Geometrieinformationen enthalten.

Die XML-Antwort ist erheblich länger als die JSON-Antwort. Für Aus diesem Grund empfehlen wir, json als bevorzugte Methode zu verwenden. Ausgabe-Flag, es sei denn, Ihr Dienst erfordert aus irgendeinem Grund xml. Außerdem erfordert die Verarbeitung von XML-Strukturen einige Sorgfalt. Knoten und Elemente. Weitere Informationen finden Sie unter Parsen von XML mit XPath für einige empfohlene Entwurfsmuster für die Ausgabeverarbeitung.

  • XML-Ergebnisse sind in ein <GeocodeResponse>-Stammelement eingebunden.
  • JSON gibt Einträge mit mehreren Elementen durch Plural-Arrays (types) an, während XML sie mit mehreren einzelnen Elementen (<type>) angibt.
  • Leere Elemente werden in JSON durch leere Arrays angegeben, in XML jedoch durch das Fehlen eines solchen Elements. Eine Antwort, die keine Ergebnisse generiert, gibt beispielsweise ein leeres results-Array in JSON, aber keine <result>-Elemente in XML zurück.

Statuscodes

Das Feld "status" innerhalb des Geocoding-Antwortobjekts enthält den Status der Anforderung und kann Debugging-Informationen enthalten, mit deren Hilfe Sie herausfinden können, warum Geocoding funktioniert nicht. Das Feld "status" kann die folgenden Werte enthalten:

  • "OK" gibt an, dass die Adresse ohne Fehler geparst und mindestens ein Geocode zurückgegeben wurde.
  • "ZERO_RESULTS" gibt an, dass die Geocodierung erfolgreich war, aber keine Ergebnisse zurückgegeben wurden. Dieser Status kann ausgegeben werden, wenn dem Geocoder ein nicht vorhandenes address-Element übergeben wurde.
  • OVER_DAILY_LIMIT steht für eines der folgenden Elemente:
    • Der API-Schlüssel fehlt oder ist ungültig.
    • Die Abrechnung wurde für Ihr Konto nicht aktiviert.
    • Eine von Ihnen festgelegte Nutzungsbeschränkung wurde überschritten.
    • Die angegebene Zahlungsmethode ist nicht mehr gültig (z. B. ein Kreditkarte abgelaufen ist).

    Weitere Informationen finden Sie in den FAQs zu Google Maps. wie Sie dieses Problem beheben können.

  • "OVER_QUERY_LIMIT" zeigt an, dass Sie Ihr Kontingent überschritten haben.
  • "REQUEST_DENIED" zeigt an, dass Ihre Anfrage abgelehnt wurde.
  • "INVALID_REQUEST" gibt im Allgemeinen an, dass die Anfrage (address, components oder latlng) fehlt.
  • "UNKNOWN_ERROR" gibt an, dass die Anfrage aufgrund eines Serverfehlers nicht verarbeitet werden konnte. Möglicherweise ist die Anfrage erfolgreich, wenn Sie es noch einmal versuchen.

Fehlermeldungen

Gibt der Geocoder einen anderen Statuscode als OK zurück, sind möglicherweise zusätzliche error_message innerhalb des Geocoding-Antwortobjekts. Dieses Feld enthält weitere detaillierte Informationen zu den Gründen für den jeweiligen Statuscode.

Ergebnisse

Vom Geocoder zurückgegebene Ergebnisse werden in einem JSON-results-Element platziert. Array. Auch wenn der Geocoder keine Ergebnisse zurückgibt, etwa wenn die Adresse nicht existiert, wird der gibt ein leeres results-Array zurück. XML-Antworten bestehen aus null oder mehr <result>-Elementen.

Ein typisches Ergebnis enthält die folgenden Felder:

  • Das types[]-Array gibt den Typ des zurückgegebenen Ergebnisses an. Dieses Array enthält ein Set mit null oder mehr Tags zur Angabe des -Funktion, die im Ergebnis zurückgegeben wird. Der Geocode für „Chicago“ Rücksendungen "Ort" was bedeutet, dass „Chicago“ ist eine Stadt und gibt ebenfalls "political" was darauf hinweist, dass es sich um eine politische Einheit handelt. Komponenten haben möglicherweise leere Typen Array, wenn keine Typen für diese Adresskomponente vorhanden sind. Die API kann bei Bedarf neue Typwerte hinzufügen. Weitere Informationen finden Sie unter Adresstypen und Adresskomponenten.
  • formatted_address ist ein String, der das visuell lesbare Element die Adresse dieses Standorts.

    Diese Adresse stimmt häufig mit der Postanschrift überein. In einigen Ländern, z. B. dem Vereinigten Königreich, ist die Weitergabe echter Postanschriften aufgrund von Lizenzeinschränkungen nicht zulässig.

    Die formatierte Adresse besteht aus einer oder mehreren Adresskomponenten. Die Adresse „111 8th Avenue, New York, NY“ besteht z. B. aus den folgenden Komponenten: „111“ (Hausnummer), „8th Avenue“ (Straße), „New York“ (Stadt) und „NY“ (US-Bundesstaat).

    Wir raten davon ab, die formatierte Adresse programmatisch zu parsen. Verwenden Sie stattdessen die einzelnen Adresskomponenten, die zusätzlich zur formatierten Adresse in der API-Antwort enthalten sind.

  • address_components[] ist ein Array, das die separaten Komponenten, die für diese Adresse gelten.

    Jede Adresskomponente enthält normalerweise die folgenden Felder:

    • types[] ist ein Array, das den Typ der Adresskomponente angibt. Sehen Sie sich die Liste der unterstützten Typen an.
    • long_name ist die Volltextbeschreibung oder der Name der Adresskomponente, wie vom Geocoder zurückgegeben.
    • short_name ist ein abgekürzter Textname für die Adresskomponente, falls vorhanden. Beispielsweise könnte eine Adresskomponente für den US-Bundesstaat Alaska den long_name „Alaska“ und den short_name „AK“ haben, entsprechend der postalischen Abkürzung.

    Hinweise zum address_components[]-Array:

    • Das Array der Adresskomponenten kann mehr Komponenten als nur formatted_address enthalten.
    • Das Array enthält nicht unbedingt alle politischen Einheiten einer Adresse. Ausgenommen hiervon sind die im formatted_address enthaltenen. Wenn Sie alle politischen Einheiten abrufen möchten, die zu einer bestimmten Adresse gehören, müssen Sie die umgekehrte Geocodierung verwenden. Dabei wird der Breiten-/Längengrad der Adresse als Parameter an die Anfrage übergeben.
    • Es kann nicht garantiert werden, dass das Antwortformat zwischen mehreren Anfragen gleich bleibt. Insbesondere die Anzahl der address_components variiert je nach angeforderter Adresse und kann sich im Laufe der Zeit für dieselbe Adresse ändern. Die Position einer Komponente im Array ändert sich unter Umständen. Auch der Typ der Komponente kann sich ändern. In einer späteren Anfrage fehlt evtl. auch eine bestimmte Komponente.

    Um mit den Komponenten zu arbeiten, sollten Sie die Antwort analysieren und über Ausdrücke die entsprechenden Werte auswählen. Weitere Informationen finden Sie im Leitfaden zur zum Parsen einer Antwort.

  • postcode_localities[] ist ein Array mit bis zu 100 Orten. die in einer Postleitzahl enthalten sind. Dieses Feld ist nur vorhanden, wenn das Ergebnis eine Postadresse ist. Code, der mehrere Orte enthält.
  • geometry enthält die folgenden Informationen:
    • location enthält den geocodierten Breitengrad- und Längengradwert. Normal Adresssuchanfragen ist dieses Feld in der Regel am wichtigsten.
    • location_type speichert zusätzliche Daten zum angegebenen Ort. Folgende Werte werden derzeit unterstützt:

      • "ROOFTOP" gibt an, dass das zurückgegebene Ergebnis ein präziser Geocode für für die Standortinformationen bis zur Straßenebene verfügbar sind.
      • "RANGE_INTERPOLATED" gibt an, dass das zurückgegebene Ergebnis ein -Näherung (normalerweise auf einer Straße), die zwischen zwei präzisen Punkten (wie Kreuzungen) interpoliert wurde Interpolierte Ergebnisse werden in der Regel zurückgegeben, wenn eine genaue Geocodierung für eine Adresse nicht möglich ist.
      • "GEOMETRIC_CENTER" gibt an, dass ist das zurückgegebene Ergebnis der geometrische Mittelpunkt von Ein Ergebnis wie eine Polylinie (z. B. eine Straße) oder ein Polygon (eine Region).
      • "APPROXIMATE" gibt an, dass der ist eine ungefähre Angabe.
    • viewport enthält den empfohlenen Darstellungsbereich für die Anzeige das zurückgegebene Ergebnis, angegeben in Form von zwei Breitengrad,Längengrad-Werten, die die southwest und northeast Ecke des Begrenzungsrahmens des Darstellungsbereichs. Im Allgemeinen Darstellungsbereich wird verwendet, um ein Ergebnis zu kennzeichnen, wenn es für einen Nutzer angezeigt wird.
    • bounds (optional) enthält den Begrenzungsrahmen, der das zurückgegebene Ergebnis vollständig umfassen kann. Beachten Sie, dass diese Grenzen möglicherweise nicht mit den empfohlenen Darstellungsbereich. San Francisco enthält z. B. das Feld Farallon-Inseln: technisch gesehen Teil der Stadt sind, aber wahrscheinlich nicht im Darstellungsbereich zurückgegeben werden sollten.)
  • plus_code (siehe Open Location Code und Plus Codes) ist ein codierter Verweis auf den Standort, der sich aus den Koordinaten (Breiten- und Längengrad) ableiten lässt und einen Bereich definiert: 1/8.000stel eines Grades mal 1/8.000stel eines Grades (ca. 14 m × 14 m am Äquator) oder kleiner. Plus Codes können als Ersatz für Adressen an Orten, an denen keine Adresse existiert (d. h. an Orten, an denen keine Gebäude nummeriert oder Straßen keine Namen haben). Die API gibt nicht immer Plus Codes zurück.

    Wenn der Dienst einen Plus Code zurückgibt, wird dieser als globaler und als zusammengesetzter Code formatiert:

    • global_code besteht aus einer vierstelligen Vorwahl und einer Ortsvorwahl mit mindestens 6 Zeichen (849VCWC8+R9).
    • compound_code ist ein mindestens 6 Zeichen langer lokaler Code mit explizitem Standort (CWC8+R9, Mountain View, CA, USA). Wir raten davon ab, diesen Code programmatisch zu parsen.
    Sofern verfügbar, gibt die API sowohl den globalen als auch den zusammengesetzten Code zurück. Wenn jedoch an einem abgelegenen Ort (z. B. im Meer oder in der Wüste) zu sehen ist, kann globaler Code zurückgegeben werden.
  • partial_match gibt an, dass der Geocoder keine genaue Übereinstimmung für die ursprüngliche Anfrage zurückgegeben hat, obwohl ein Teil der angeforderten Adresse zugeordnet werden konnte. Wir empfehlen, die ursprüngliche Anfrage auf Tippfehler und/oder Vollständigkeit zu prüfen.

    Teilweise Übereinstimmungen treten am häufigsten bei Adressen auf, die nicht in dem Ort vorhanden sind, der in der Anfrage übergeben wird. Sie werden unter Umständen auch zurückgegeben, wenn eine Anfrage mit mehreren Adressen in einem Ort übereinstimmt. Wird „Henr St, Bristol, UK“ angefragt, wird z. B. eine teilweise Übereinstimmung für die Henry Street und die Henrietta Street zurückgegeben. Enthält eine Anfrage eine Adresskomponente mit Tippfehler, wird vom Geocoding-Dienst möglicherweise eine andere Adresse vorgeschlagen. Solche Vorschläge werden auch als teilweise Übereinstimmung gekennzeichnet.

  • place_id ist eine eindeutige Kennung, die mit anderen Google APIs verwendet werden kann. So können Sie zum Beispiel place_id in einer Places API-Anfrage zum Abrufen Details zu einem lokalen Unternehmen wie Telefonnummer, Öffnungszeiten, Nutzer Rezensionen und mehr. Sehen Sie sich die Orts-ID an. Übersicht.

Adresstypen und Typen von Adresskomponenten

Das Array types[] im Ergebnis gibt an, Adresstyp. Beispiele für Adresstypen sind Adresse, ein Land oder eine politische Einheit. Außerdem gibt es im address_components[] ein types[]-Array, das den Typ der einzelnen Teile der Adresse angibt. Dazu gehören bspw. Hausnummer oder Land. (Nachfolgend finden Sie eine vollständige Liste types.) Adressen können mehrere Typen aufweisen. Die Typen können als „Tags“ betrachtet werden. Viele Städte sind beispielsweise mit den Tags political und Typ locality.

Die folgenden Typen werden vom Geocoder sowohl in der Arrays für Adresstyp und Adresskomponententypen:

  • street_address gibt eine genaue Adresse an.
  • route gibt eine Straße mit einer Bezeichnung an, z. B. „B1“.
  • intersection gibt eine größere Kreuzung, üblicherweise von 2 Hauptstraßen an.
  • political gibt eine politische Einheit an. Dieser Typ stellt meistens ein Polygon einer öffentlichen Einrichtung dar.
  • country gibt eine staatliche politische Einheit (Land) an und ist normalerweise der Typ mit dem höchsten Rang, der vom Geocoder zurückgegeben wird.
  • administrative_area_level_1 gibt eine öffentliche Verwaltungseinheit 1 Stufe unterhalb der Landesebene an. In den USA sind diese Verwaltungsebenen z. B. die Bundesstaaten. Diese Verwaltungsebenen gibt es nicht in allen Ländern. In den meisten Fällen sind Kurzbezeichnungen dieses Typs eng an die Untereinheiten des Standards ISO 3166-2 und andere gängige Definitionen angelehnt. Eine Garantie hierfür können wir jedoch nicht geben, da unsere Geocoding-Ergebnisse auf verschiedenen Signalen und Standortdaten basieren.
  • administrative_area_level_2 gibt eine öffentliche Verwaltungseinheit 2 Stufen unterhalb der Landesebene an. In den USA sind diese Verwaltungsebenen z. B. die Countys. Diese Verwaltungsebenen gibt es nicht in allen Ländern.
  • administrative_area_level_3 gibt eine öffentliche Verwaltungseinheit 3 Stufen unterhalb der Landesebene an. Dieser Typ steht für eine kleine Verwaltungseinheit von geringerer Bedeutung. Diese Verwaltungsebenen gibt es nicht in allen Ländern.
  • administrative_area_level_4 gibt eine öffentliche Verwaltungseinheit 4 Stufen unterhalb der Landesebene an. Dieser Typ steht für eine kleine Verwaltungseinheit von geringerer Bedeutung. Diese Verwaltungsebenen gibt es nicht in allen Ländern.
  • administrative_area_level_5 gibt eine öffentliche Verwaltungseinheit 5 Stufen unterhalb der Landesebene an. Dieser Typ steht für eine kleine Verwaltungseinheit von geringerer Bedeutung. Diese Verwaltungsebenen gibt es nicht in allen Ländern.
  • administrative_area_level_6 gibt eine öffentliche Verwaltungseinheit 6 Stufen unterhalb der Landesebene an. Dieser Typ steht für eine kleine Verwaltungseinheit von geringerer Bedeutung. Diese Verwaltungsebenen gibt es nicht in allen Ländern.
  • administrative_area_level_7 gibt eine öffentliche Verwaltungseinheit 7 Stufen unterhalb der Landesebene an. Dieser Typ steht für eine kleine Verwaltungseinheit von geringerer Bedeutung. Diese Verwaltungsebenen gibt es nicht in allen Ländern.
  • colloquial_area gibt eine gängige alternative Bezeichnung für die Einheit an.
  • locality gibt die politische Einheit einer Stadt oder Gemeinde an.
  • sublocality gibt eine öffentliche Verwaltungseinheit eine Stufe unterhalb des Ortes an. Für einige Standorte wird möglicherweise einer der folgenden zusätzlichen Typen ausgegeben: sublocality_level_1 bis sublocality_level_5. Jede dieser Ebenen entspricht einer Verwaltungseinheit. Je höher die Zahl, desto kleiner das geografische Gebiet.
  • neighborhood gibt ein benanntes Stadtviertel an.
  • premise gibt einen benannten Ort an, normalerweise ein Gebäude oder einen Komplex von Gebäuden mit einem gemeinsamen Namen.
  • subpremise gibt eine erstrangige Einheit unterhalb der Ebene eines benannten Ortes an, normalerweise ein einzelnes Gebäude innerhalb eines Gebäudekomplexes mit einem gemeinsamen Namen.
  • plus_code gibt einen codierten Verweis auf den Standort an, der sich aus Breiten- und Längengrad ableiten lässt. Plus Codes können als Ersatz für Adressen verwendet werden, wenn keine Adressen vorhanden sind, z. B. wenn Gebäude keine Hausnummern oder Straßen keine Namen haben. Weitere Informationen finden Sie unter https://plus.codes.
  • postal_code gibt eine Postleitzahl an, wie sie zum Adressieren von Postsendungen innerhalb des Landes verwendet wird.
  • natural_feature gibt ein auffallendes Landschaftsmerkmal an.
  • airport gibt einen Flughafen an.
  • park gibt einen benannten Park an.
  • point_of_interest gibt einen benannten POI an. In der Regel sind diese POIs bekannte lokale Objekte, die sich keiner anderen Kategorie zuordnen lassen, z. B. das Brandenburger Tor oder der Eiffelturm.

Eine leere Typenliste bedeutet, dass für eine bestimmte Adresskomponente keine Typen vorhanden sind, wie z. B. ein Lieu-dit in Frankreich.

Zusätzlich zum oben Genannten können Adresskomponenten auch die hier aufgeführten Typen umfassen. Diese Liste ist nicht vollständig und kann sich ändern.

  • floor gibt das Stockwerk innerhalb einer Gebäudeadresse an.
  • establishment gibt normalerweise einen Ort an, der noch nicht kategorisiert wurde.
  • landmark gibt einen Ort in der Nähe an, der als Referenz zur Orientierung dient.
  • point_of_interest gibt einen benannten POI an.
  • parking gibt einen Parkplatz oder ein Parkhaus an.
  • post_box gibt einen bestimmten Briefkasten an.
  • postal_town gibt eine Gruppe geografischer Gebiete wie locality und sublocality an, die in einigen Ländern als Postanschriften verwendet werden.
  • room gibt den Raum innerhalb einer Gebäudeadresse an.
  • street_number gibt die genaue Hausnummer an.
  • bus_station, train_station und transit_station geben den Standort einer Haltestelle für Bus, Bahn oder ein anderes öffentliches Verkehrsmittel an.

Gewichtung des Darstellungsbereichs

In einer Geocoding-Anfrage können Sie den Geocoding-Dienst so einrichten, dass Ergebnisse innerhalb eines bestimmten Darstellungsbereichs (ausgedrückt als Begrenzungsrahmen) bevorzugt werden. Legen Sie dazu in der Anfrage-URL den Parameter bounds fest.

Der Parameter bounds definiert die Breiten- und Längengrade. der südwestlichen und nordöstlichen Ecke dieses Begrenzungsrahmens mithilfe eines senkrechten Strichs (|), um die Koordinaten zu trennen.

Ein Geocode für „Washington“ gibt im Allgemeinen den US-Bundesstaat Washington:

Anfrage:

https://maps.googleapis.com/maps/api/geocode/json?address=Washington&key=YOUR_API_KEY

Response:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Washington",
               "short_name" : "WA",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Washington, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            },
            "location" : {
               "lat" : 47.7510741,
               "lng" : -120.7401385
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            }
         },
         "place_id" : "ChIJ-bDD5__lhVQRuvNfbGh4QpQ",
         "types" : [ "administrative_area_level_1", "political" ]
      }
   ],
   "status" : "OK"
}

Wenn jedoch ein bounds-Argument hinzugefügt wird, das einen Begrenzungsrahmen um den Nordosten der USA definiert, wird als Ergebnis des Geocodings die Stadt Washington, D.C. zurückgegeben:

Anfrage:

https://maps.googleapis.com/maps/api/geocode/json?address=Washington&bounds=36.47,-84.72%7C43.39,-65.90&key=YOUR_API_KEY

Response:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Washington",
               "short_name" : "Washington",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "District of Columbia",
               "short_name" : "District of Columbia",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "District of Columbia",
               "short_name" : "DC",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Washington, DC, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 38.9958641,
                  "lng" : -76.90939299999999
               },
               "southwest" : {
                  "lat" : 38.7916449,
                  "lng" : -77.119759
               }
            },
            "location" : {
               "lat" : 38.9071923,
               "lng" : -77.03687069999999
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 38.9958641,
                  "lng" : -76.90939299999999
               },
               "southwest" : {
                  "lat" : 38.7916449,
                  "lng" : -77.119759
               }
            }
         },
         "place_id" : "ChIJW-T2Wt7Gt4kRKl2I1CJFUsI",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

Regionsverzerrung

In einer Geocoding-Anfrage können Sie den Geocoding-Dienst anweisen, Ergebnisse, die nach bestimmten Regionen gewichtet sind, mithilfe des region . Dieser Parameter verwendet eine ccTLD (Ländercode der obersten Ebene) domain) dar, mit dem die Regionsgewichtung angegeben wird. Die meisten ccTLD-Codes entsprechen ISO 3166-1-Codes, mit einigen Ausnahmen. So lautet beispielsweise die ccTLD des Vereinigten Königreichs „uk“ (.co.uk), der ISO 3166-1-Code dagegen „gb“ (technisch für die Entität „Vereinigtes Königreich von Großbritannien und Nordirland“).

Geocoding-Ergebnisse können für alle Domains gewichtet werden, in denen die wichtigsten Die Google Maps App wurde offiziell eingeführt. Beachten Sie, dass die Gewichtung Ergebnisse für eine bestimmte Domain bevorzugt wenn relevantere Ergebnisse vorhanden sind. außerhalb dieser Domain enthalten.

Ein Geocode für „Toledo“ gibt dieses Ergebnis zurück, für das Geocoding API auf die USA eingestellt ist. Anfrage:

https://maps.googleapis.com/maps/api/geocode/json?address=Toledo&key=YOUR_API_KEY

Response:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Toledo",
               "short_name" : "Toledo",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Lucas County",
               "short_name" : "Lucas County",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Ohio",
               "short_name" : "OH",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Toledo, OH, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 41.732844,
                  "lng" : -83.454229
               },
               "southwest" : {
                  "lat" : 41.580266,
                  "lng" : -83.69423700000002
               }
            },
            "location" : {
               "lat" : 41.6639383,
               "lng" : -83.55521200000001
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 41.732844,
                  "lng" : -83.454229
               },
               "southwest" : {
                  "lat" : 41.580266,
                  "lng" : -83.69423700000002
               }
            }
         },
         "place_id" : "ChIJeU4e_C2HO4gRRcM6RZ_IPHw",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

Eine Geocoding-Anfrage für „Toledo“ mit region=es (Spanien) wird die spanische Stadt zurückgeben.

Anfrage:

https://maps.googleapis.com/maps/api/geocode/json?address=Toledo&region=es&key=YOUR_API_KEY

Response:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Toledo",
               "short_name" : "Toledo",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Toledo",
               "short_name" : "TO",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Castile-La Mancha",
               "short_name" : "CM",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Spain",
               "short_name" : "ES",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Toledo, Spain",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 39.88605099999999,
                  "lng" : -3.9192423
               },
               "southwest" : {
                  "lat" : 39.8383676,
                  "lng" : -4.0796176
               }
            },
            "location" : {
               "lat" : 39.8628316,
               "lng" : -4.027323099999999
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 39.88605099999999,
                  "lng" : -3.9192423
               },
               "southwest" : {
                  "lat" : 39.8383676,
                  "lng" : -4.0796176
               }
            }
         },
         "place_id" : "ChIJ8f21C60Lag0R_q11auhbf8Y",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

Komponentenfilter

In einer Geocoding-Antwort kann die Geocoding API Adresse zurückgeben, auf einen bestimmten Bereich beschränkte Ergebnisse. Sie können die Einschränkung mit Filter components. Ein Filter besteht aus einer Liste mit component:value-Paare, die durch ein Pipe-Zeichen (|) voneinander getrennt sind. Filterwerte unterstützen die gleichen Methoden der Rechtschreibkorrektur und teilweisen Übereinstimmung mit anderen Geocoding-Anfragen. Findet der Geocoder eine teilweise Übereinstimmung für eine Komponentenfilter enthält, enthält die Antwort das Feld partial_match.

Zu den components, die gefiltert werden können, gehören:

  • postal_code stimmt mit postal_code überein und postal_code_prefix.
  • country gleicht einen Ländernamen oder einen aus 2 Buchstaben bestehenden ISO-3166-1-Ländercode ab. Die API entspricht dem ISO-Standard für definiert werden. Die Filterung funktioniert am besten bei Verwendung der ISO-Code des Landes.

Die folgende components kann zur Beeinflussung der Ergebnisse verwendet werden, ist aber nicht erzwungen:

  • route entspricht dem langen oder Kurznamen einer Route.
  • locality Spiele gegen locality und sublocality-Typen.
  • administrative_area gleicht alle Ebenen des administrative_area ab.

Hinweise zum Filtern von Komponenten:

  • Wiederholen Sie diese Komponentenfilter nicht in Anfragen, da die API sonst keine Invalid_request: country, postal_code, route
  • Wenn die Anfrage wiederholte Komponentenfilter enthält, wertet die API diese aus als AND, nicht als ODER.
  • Die Ergebnisse stimmen mit Google Maps überein, was gelegentlich zu unerwarteten ZERO_RESULTS-Antworten führt. Place Autocomplete verwenden kann in einigen Anwendungsfällen bessere Ergebnisse liefern. Weitere Informationen finden Sie unter dieser FAQs.
  • Geben Sie jede Adresskomponente entweder im Feld address an Parameter oder in einem components-Filter verwenden, aber nicht beides. Angabe die gleichen Werte in beiden können zu ZERO_RESULTS führen.

Geocode für „Hauptstraße, Hastings“ mit components=country:GB als Ergebnis in Hastings, England, und nicht in Hastings-On-Hudson, USA, zurückgegeben.

Anfrage:

https://maps.googleapis.com/maps/api/geocode/json?address=high+st+hasting&components=country:GB&key=YOUR_API_KEY

Response:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "High Street",
               "short_name" : "High St",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Hastings",
               "short_name" : "Hastings",
               "types" : [ "postal_town" ]
            },
            {
               "long_name" : "East Sussex",
               "short_name" : "East Sussex",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "England",
               "short_name" : "England",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United Kingdom",
               "short_name" : "GB",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "TN34 3EY",
               "short_name" : "TN34 3EY",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "High St, Hastings TN34 3EY, UK",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 50.8601041,
                  "lng" : 0.5957329
               },
               "southwest" : {
                  "lat" : 50.8559061,
                  "lng" : 0.5906163
               }
            },
            "location" : {
               "lat" : 50.85830319999999,
               "lng" : 0.5924594
            },
            "location_type" : "GEOMETRIC_CENTER",
            "viewport" : {
               "northeast" : {
                  "lat" : 50.8601041,
                  "lng" : 0.5957329
               },
               "southwest" : {
                  "lat" : 50.8559061,
                  "lng" : 0.5906163
               }
            }
         },
         "partial_match" : true,
         "place_id" : "ChIJ-Ws929sa30cRKgsMNVkPyws",
         "types" : [ "route" ]
      }
   ],
   "status" : "OK"
}

Eine Geocode-Anfrage für den Ort von "Santa Cruz" mit components=country:ES gibt Santa Cruz de Tenerife auf den spanischen Kanaren zurück.

Anfrage:

https://maps.googleapis.com/maps/api/geocode/json?components=locality:santa+cruz|country:ES&key=YOUR_API_KEY

Response:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Santa Cruz de Tenerife",
               "short_name" : "Santa Cruz de Tenerife",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Santa Cruz de Tenerife",
               "short_name" : "TF",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Canary Islands",
               "short_name" : "CN",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Spain",
               "short_name" : "ES",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Santa Cruz de Tenerife, Spain",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 28.487616,
                  "lng" : -16.2356646
               },
               "southwest" : {
                  "lat" : 28.4280248,
                  "lng" : -16.3370045
               }
            },
            "location" : {
               "lat" : 28.4636296,
               "lng" : -16.2518467
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 28.487616,
                  "lng" : -16.2356646
               },
               "southwest" : {
                  "lat" : 28.4280248,
                  "lng" : -16.3370045
               }
            }
         },
         "place_id" : "ChIJcUElzOzMQQwRLuV30nMUEUM",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

Die Komponentenfilterung gibt eine ZERO_RESULTS-Antwort zurück. wenn Sie Filter zur Verfügung stellen, die sich gegenseitig ausschließen.

Anfrage:

https://maps.googleapis.com/maps/api/geocode/json?components=administrative_area:TX|country:FR&key=YOUR_API_KEY

Response:

{
   "results" : [],
   "status" : "ZERO_RESULTS"
}

Sie können gültige Abfragen auch ohne den Adressparameter durchführen. Verwenden Sie dazu die Methode Filter „components“. (Wenn Sie eine vollständige Adresse geocodieren, Der Parameter address ist erforderlich, wenn die Anfrage den Parameter Namen und Anzahl der Gebäude)

Anfrage:

https://maps.googleapis.com/maps/api/geocode/json?components=route:Annankatu|administrative_area:Helsinki|country:Finland&key=YOUR_API_KEY

Response:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Annankatu",
               "short_name" : "Annankatu",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Helsinki",
               "short_name" : "HKI",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Finland",
               "short_name" : "FI",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "00101",
               "short_name" : "00101",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "Annankatu, 00101 Helsinki, Finland",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 60.168997,
                  "lng" : 24.9433353
               },
               "southwest" : {
                  "lat" : 60.16226160000001,
                  "lng" : 24.9332897
               }
            },
            "location" : {
               "lat" : 60.1657808,
               "lng" : 24.938451
            },
            "location_type" : "GEOMETRIC_CENTER",
            "viewport" : {
               "northeast" : {
                  "lat" : 60.168997,
                  "lng" : 24.9433353
               },
               "southwest" : {
                  "lat" : 60.16226160000001,
                  "lng" : 24.9332897
               }
            }
         },
         "place_id" : "ChIJARW7C8sLkkYRgl4je4-RPUM",
         "types" : [ "route" ]
      }
   ],
   "status" : "OK"
}