Der Dienst „Autocomplete (New)“ ist ein Webdienst, der Ortsvorschläge und Suchanfragevorschläge als Reaktion auf eine HTTP-Anfrage zurückgibt. Geben Sie in der Anfrage einen Suchstring und geografische Grenzen an, die den Suchbereich festlegen.
Der Dienst „Autocomplete (New)“ findet Übereinstimmungen mit vollständigen Wörtern und Teilstrings der Eingabe, sodass sich Ortsnamen, Adressen und Plus Codes zuordnen lassen. Anwendungen können Abfragen senden, während der Nutzer tippt, um spontan Vorschläge für Orte und Abfragen bereitzustellen.
Die Antwort der Autocomplete (New) API kann zwei Arten von Vorhersagen enthalten:
- Vorschläge zur automatischen Vervollständigung: Orte wie Unternehmen, Adressen und POIs, die auf dem angegebenen Eingabetext und dem Suchgebiet basieren. Ortsvorschläge werden standardmäßig zurückgegeben.
- Suchvorschläge: Abfragestrings, die mit dem eingegebenen Textstring und dem Suchfeld übereinstimmen. Abfragevorhersagen werden standardmäßig nicht zurückgegeben. Verwenden Sie den Anfrageparameter
includeQueryPredictions
, um der Antwort Abfragevorhersagen hinzuzufügen.
Beispiel: Sie rufen die API auf und verwenden als Eingabe einen String, der die Teileingabe des Nutzers "Sicilian piz" enthält, wobei der Suchbereich auf San Francisco beschränkt ist. Die Antwort enthält dann eine Liste mit Ortsvorschlägen, die mit dem Suchstring und dem Suchgebiet übereinstimmen, z. B. das Restaurant „Sicilian Pizza Kitchen“ zusammen mit Details zum Ort.
Die zurückgegebenen Ortsvorschläge sollen dem Nutzer dabei helfen, den gewünschten Ort auszuwählen. Sie können eine Place Details (New)-Anfrage stellen, um weitere Informationen zu den zurückgegebenen Ortsvorschlägen zu erhalten.
Die Antwort kann auch eine Liste von Suchvorschlägen enthalten, die mit dem Suchstring und dem Suchgebiet übereinstimmen, z. B. „Sizilianische Pizza und Pasta“. Jede Suchanfrage in der Antwort enthält das Feld text
mit einem empfohlenen Suchstring für die Textsuche. Verwenden Sie diesen String als Eingabe für die Text Search (New), um eine detailliertere Suche durchzuführen.
Mit dem API Explorer können Sie Liveanfragen stellen, um sich mit der API und den API-Optionen vertraut zu machen:
Testen!Autocomplete (New)-Anfragen
Eine Autocomplete (New)-Anfrage ist eine HTTP POST-Anfrage an eine URL in folgendem Format:
https://places.googleapis.com/v1/places:autocomplete
Übergeben Sie alle Parameter im JSON-Anfragetext oder in Headern als Teil der POST-Anfrage. Beispiel:
curl -X POST -d '{ "input": "pizza", "locationBias": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Antwort
„Autocomplete (New)“ gibt ein JSON-Objekt als Antwort zurück. In der Antwort:
- Das Array
suggestions
enthält alle vorhergesagten Orte und Suchanfragen in der Reihenfolge ihrer wahrgenommenen Relevanz. Jeder Ort wird durch einplacePrediction
-Feld und jede Suchanfrage durch einqueryPrediction
-Feld dargestellt. - Das Feld
placePrediction
enthält detaillierte Informationen zu einer einzelnen Vervollständigung eines Orts, einschließlich der Orts-ID und einer Textbeschreibung. - Ein
queryPrediction
-Feld enthält detaillierte Informationen zu einer einzelnen Abfragevorhersage.
Das vollständige JSON-Objekt hat das folgende Format:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 }] }, ... }, { "queryPrediction": { "text": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 }] }, ... } ...] }
Erforderliche Parameter
-
Eingabe
Der Textstring, in dem gesucht werden soll. Geben Sie vollständige Wörter und Teilstrings, Ortsnamen, Adressen und Plus Codes an. Über den Autocomplete (New)-Dienst werden mögliche Übereinstimmungen basierend auf dem String zurückgegeben, die nach erkannter Relevanz sortiert werden.
Optionale Parameter
-
FieldMask
Geben Sie die Liste der Felder an, die in der Antwort zurückgegeben werden sollen, indem Sie eine Antwortfeldmaske erstellen. Übergeben Sie die Antwortfeldmaske mithilfe des HTTP-Headers
X-Goog-FieldMask
an die Methode.Geben Sie eine durch Kommas getrennte Liste der Vorschlagsfelder an, die zurückgegeben werden sollen. Beispielsweise, um die
suggestions.placePrediction.place
undsuggestions.placePrediction.text
des Vorschlags abzurufen.X-Goog-FieldMask: places.displayName,places.formattedAddress
Verwenden Sie
*
, um alle Felder abzurufen.X-Goog-FieldMask: *
-
includedPrimaryTypes
Ein Ort kann nur einen einen primären Typ aus den in Tabelle A oder Tabelle B aufgeführten Typen haben. Der primäre Typ kann beispielsweise
"mexican_restaurant"
oder"steak_house"
sein.Standardmäßig gibt die API alle Orte basierend auf dem Parameter
input
zurück, unabhängig vom primären Typwert, der mit dem Ort verknüpft ist. Sie können die Ergebnisse auf einen oder mehrere Haupttypen beschränken, indem Sie den ParameterincludedPrimaryTypes
übergeben.Mit diesem Parameter können Sie bis zu fünf Typwerte aus Tabelle A oder Tabelle B angeben. Ein Ort muss mit einem der angegebenen primären Typwerte übereinstimmen, um in die Antwort aufgenommen zu werden.
Dieser Parameter kann stattdessen auch einen der Werte
(regions)
oder(cities)
enthalten. Sammlungsfilter vom Typ(regions)
für Gebiete oder Abteilungen, z. B. Stadtteile und Postleitzahlen. Mit der Typensammlung(cities)
werden Orte gefiltert, die von Google als Stadt identifiziert werden.In folgenden Fällen wird die Anfrage mit dem Fehler
INVALID_REQUEST
abgelehnt:- Es sind mehr als fünf Typen angegeben.
- Zusätzlich zu
(cities)
oder(regions)
wird ein beliebiger Typ angegeben. - Alle nicht erkannten Typen wurden angegeben.
-
includePureServiceAreaBusinesses
Wenn
true
festgelegt ist, enthält die Antwort Unternehmen, die Kunden vor Ort besuchen oder direkt beliefern, aber keinen physischen Geschäftsstandort haben. Wennfalse
festgelegt ist, gibt die API nur Unternehmen mit einem physischen Standort zurück. -
includeQueryPredictions
Wenn
true
, enthält die Antwort sowohl Orts- als auch Suchanfragevorschläge. Der Standardwert istfalse
. Das bedeutet, dass die Antwort nur Ortsvorschläge enthält. -
includedRegionCodes
Es werden nur Ergebnisse aus der Liste der angegebenen Regionen berücksichtigt. Diese Liste muss ein Array mit bis zu 15 zweistelligen Werten für Ländercode der Top-Level-Domain (ccTLD) enthalten. Wenn Sie das Flag weglassen, werden keine Einschränkungen auf die Antwort angewendet. So beschränken Sie die Regionen beispielsweise auf Deutschland und Frankreich:
"includedRegionCodes": ["de", "fr"]
Wenn Sie sowohl
locationRestriction
als auchincludedRegionCodes
angeben, befinden sich die Ergebnisse im Schnittbereich der beiden Einstellungen. -
inputOffset
Der nullbasierte Unicode-Zeichenabstand, der die Cursorposition in
input
angibt. Die Cursorposition kann beeinflussen, welche Vorhersagen zurückgegeben werden. Wenn das Feld leer ist, wird standardmäßig die Längeinput
verwendet. -
languageCode
Die bevorzugte Sprache, in der die Ergebnisse zurückgegeben werden sollen. Die Ergebnisse können in verschiedenen Sprachen vorliegen, wenn sich die in
input
verwendete Sprache von dem mitlanguageCode
angegebenen Wert unterscheidet oder wenn für den zurückgegebenen Ort keine Übersetzung aus der Landessprache inlanguageCode
verfügbar ist.- Sie müssen IETF-BCP-47-Sprachcodes verwenden, um die bevorzugte Sprache anzugeben.
-
Wenn
languageCode
nicht angegeben ist, verwendet die API den imAccept-Language
-Header angegebenen Wert. Wenn keins von beiden angegeben ist, wird der Standardwerten
verwendet. Wenn Sie einen ungültigen Sprachcode angeben, gibt die API den FehlerINVALID_ARGUMENT
zurück. - Die bevorzugte Sprache hat einen geringen Einfluss auf die Ergebnisse, die von der API zurückgegeben werden, und auf die Reihenfolge, in der sie zurückgegeben werden. Dies beeinträchtigt auch die Fähigkeit der API, Rechtschreibfehler zu korrigieren.
-
Die API versucht, eine Adresse anzugeben, die sowohl für den Nutzer als auch für die örtliche Bevölkerung lesbar ist und gleichzeitig die Nutzereingabe widerspiegelt. Die Formatierung von Ortsvorschlägen hängt von der Nutzereingabe in den einzelnen Anfragen ab.
-
Übereinstimmende Begriffe im Parameter
input
werden zuerst ausgewählt. Dabei werden Namen verwendet, die der Spracheinstellung entsprechen, die durch den ParameterlanguageCode
angegeben ist, sofern verfügbar. Andernfalls werden Namen verwendet, die am besten mit der Nutzereingabe übereinstimmen. -
Adressen werden in der Landessprache und nach Möglichkeit in einem für den Nutzer lesbaren Script formatiert, wenn übereinstimmende Begriffe mit denen im
input
-Parameter übereinstimmen. -
Alle anderen Adressen werden in der gewünschten Sprache zurückgegeben, nachdem passende Begriffe ausgewählt wurden, die mit den Begriffen im Parameter
input
übereinstimmen. Wenn ein Name in der bevorzugten Sprache nicht verfügbar ist, verwendet die API die am besten passende Übereinstimmung.
-
Übereinstimmende Begriffe im Parameter
„locationBias“ oder „locationRestriction“
Sie können
locationBias
oderlocationRestriction
angeben, aber nicht beides, um den Suchbereich zu definieren. Stellen Sie sichlocationRestriction
vor, um die Region anzugeben, in der sich die Ergebnisse befinden müssen, undlocationBias
die Region, in der sich die Ergebnisse befinden müssen, aber außerhalb des Bereichs sein können.locationBias
Gibt einen Bereich für die Suche an. Dieser Ort dient als Gewichtung. Das bedeutet, dass Ergebnisse in der Nähe des angegebenen Orts zurückgegeben werden können, einschließlich Ergebnissen außerhalb des angegebenen Bereichs.
locationRestriction
Gibt einen Bereich für die Suche an. Ergebnisse außerhalb des angegebenen Bereichs werden nicht zurückgegeben.
Geben Sie die Region
locationBias
oderlocationRestriction
als rechteckigen Darstellungsbereich oder als Kreis an.Ein Kreis wird durch den Mittelpunkt und den Radius in Metern definiert. Der Radius muss zwischen 0,0 und 50.000,0 liegen. Der Standardwert ist 0,0. Für
locationRestriction
muss der Radius einen Wert größer als 0,0 haben. Andernfalls werden keine Ergebnisse zurückgegeben.Beispiel:
"locationBias": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } }
Ein Rechteck ist ein Darstellungsbereich mit Breiten- und Längengrad, der als zwei diagonal gegenüberliegende
low
und hohe Punkte dargestellt wird. Ein Darstellungsbereich gilt als geschlossene Region, d. h., er schließt seine Grenze ein. Die Breitengradgrenzen müssen zwischen -90 und 90 Grad liegen und die Längengradgrenzen zwischen -180 und 180 Grad:- Wenn
low
=high
ist, besteht der Darstellungsbereich aus diesem einzelnen Punkt. - Wenn
low.longitude
>high.longitude
ist, wird der Längengradbereich umgekehrt (der Darstellungsbereich kreuzt die 180-Grad-Längenlinie). - Wenn
low.longitude
= -180 Grad undhigh.longitude
= 180 Grad ist, enthält der Darstellungsbereich alle Längengrade. - Wenn
low.longitude
= 180 Grad undhigh.longitude
= -180 Grad ist, ist der Längengradbereich leer.
Sowohl
low
als auchhigh
müssen ausgefüllt sein und das Feld darf nicht leer sein. Ein leerer Darstellungsbereich führt zu einem Fehler.Dieser Ansichtsbereich umschließt beispielsweise vollständig New York City:
"locationBias": { "rectangle": { "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } } }
- Wenn
-
origin
Der Startpunkt, von dem aus die Luftlinie zum Ziel berechnet wird (wird als
distanceMeters
zurückgegeben). Wenn dieser Wert fehlt, wird die Luftlinie nicht zurückgegeben. Muss als Breiten- und Längengrad angegeben werden:"origin": { "latitude": 40.477398, "longitude": -74.259087 }
-
regionCode
Der Regionscode, der zum Formatieren der Antwort verwendet wird, angegeben als zweistelliger Wert für eine ccTLD (Top-Level-Domain). Die meisten ccTLD-Codes entsprechen den ISO 3166-1-Codes, wobei es einige Ausnahmen gibt. So lautet beispielsweise die ccTLD des Vereinigten Königreichs „uk“ (.co.uk) und der ISO 3166-1-Code „gb“ (technisch für die Rechtspersönlichkeit „The United Kingdom of Great Britain and Northern Ireland“).
Wenn Sie einen ungültigen Regionscode angeben, gibt die API den Fehler
INVALID_ARGUMENT
zurück. Der Parameter kann sich auf die Ergebnisse auswirken, die gemäß anwendbarem Recht angezeigt werden. -
sessionToken
Sitzungstokens sind von Nutzern erstellte Strings, mit denen Autocomplete-Aufrufe vom Typ „Neu“ als „Sitzungen“ erfasst werden. Bei „Autocomplete (New)“ werden Sitzungstokens verwendet, um die Abfrage- und Auswahlphasen einer Nutzeranfrage zur automatischen Vervollständigung zu Abrechnungszwecken zu einer separaten Sitzung zusammenzufassen. Weitere Informationen finden Sie unter Sitzungstokens.
Beispiele für die automatische Vervollständigung (neu)
Suche mit „locationRestriction“ auf einen Bereich beschränken
Mit locationRestriction
wird der Suchbereich angegeben. Ergebnisse außerhalb des angegebenen Bereichs werden nicht zurückgegeben. Im folgenden Beispiel wird locationRestriction
verwendet, um die Anfrage auf einen Kreis mit einem Radius von 5.000 Metern um San Francisco herum einzugrenzen:
curl -X POST -d '{ "input": "Art museum", "locationRestriction": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Alle Ergebnisse aus den angegebenen Bereichen sind im Array suggestions
enthalten:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJkQQVTZqAhYARHxPt2iJkm1Q", "placeId": "ChIJkQQVTZqAhYARHxPt2iJkm1Q", "text": { "text": "Asian Art Museum, Larkin Street, San Francisco, CA, USA", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "structuredFormat": { "mainText": { "text": "Asian Art Museum", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "secondaryText": { "text": "Larkin Street, San Francisco, CA, USA" } }, "types": [ "establishment", "museum", "point_of_interest" ] } }, { "placePrediction": { "place": "places/ChIJI7NivpmAhYARSuRPlbbn_2w", "placeId": "ChIJI7NivpmAhYARSuRPlbbn_2w", "text": { "text": "de Young Museum, Hagiwara Tea Garden Drive, San Francisco, CA, USA", "matches": [ { "endOffset": 15 } ] }, "structuredFormat": { "mainText": { "text": "de Young Museum", "matches": [ { "endOffset": 15 } ] }, "secondaryText": { "text": "Hagiwara Tea Garden Drive, San Francisco, CA, USA" } }, "types": [ "establishment", "point_of_interest", "tourist_attraction", "museum" ] } }, /.../ ] }
Mit locationRestriction
können Sie Suchanfragen auch auf einen rechteckigen Ansichtsbereich beschränken. Im folgenden Beispiel wird die Anfrage auf die Innenstadt von San Francisco beschränkt:
curl -X POST -d '{ "input": "Art museum", "locationRestriction": { "rectangle": { "low": { "latitude": 37.7751, "longitude": -122.4219 }, "high": { "latitude": 37.7955, "longitude": -122.3937 } } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Die Ergebnisse sind im suggestions
-Array enthalten:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJkQQVTZqAhYARHxPt2iJkm1Q", "placeId": "ChIJkQQVTZqAhYARHxPt2iJkm1Q", "text": { "text": "Asian Art Museum, Larkin Street, San Francisco, CA, USA", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "structuredFormat": { "mainText": { "text": "Asian Art Museum", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "secondaryText": { "text": "Larkin Street, San Francisco, CA, USA" } }, "types": [ "point_of_interest", "museum", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJyQNK-4SAhYARO2DZaJleWRc", "placeId": "ChIJyQNK-4SAhYARO2DZaJleWRc", "text": { "text": "International Art Museum of America, Market Street, San Francisco, CA, USA", "matches": [ { "startOffset": 14, "endOffset": 24 } ] }, "structuredFormat": { "mainText": { "text": "International Art Museum of America", "matches": [ { "startOffset": 14, "endOffset": 24 } ] }, "secondaryText": { "text": "Market Street, San Francisco, CA, USA" } }, "types": [ "museum", "point_of_interest", "tourist_attraction", "art_gallery", "establishment" ] } } ] }
Suche mithilfe von „locationBias“ nach einem Bereich ausrichten
Bei locationBias
dient der Standort als Gewichtung. Das bedeutet, dass Ergebnisse in der Nähe des angegebenen Standorts zurückgegeben werden können, einschließlich Ergebnissen außerhalb des angegebenen Bereichs. Im folgenden Beispiel gewichten Sie die Anfrage der Innenstadt von San Francisco:
curl -X POST -d '{ "input": "Amoeba", "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Die Ergebnisse enthalten jetzt viele weitere Elemente, einschließlich Ergebnisse außerhalb des Radius von 5.000 Metern:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "electronics_store", "point_of_interest", "store", "establishment", "home_goods_store" ] } }, { "placePrediction": { "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw", "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw", "text": { "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Telegraph Avenue, Berkeley, CA, USA" } }, "types": [ "electronics_store", "point_of_interest", "establishment", "home_goods_store", "store" ] } }, ... ] }
Mit locationBias
können Sie Suchanfragen auch auf einen rechteckigen Ansichtsbereich beschränken. Im folgenden Beispiel wird die Anfrage auf die Innenstadt von San Francisco beschränkt:
curl -X POST -d '{ "input": "Amoeba", "locationBias": { "rectangle": { "low": { "latitude": 37.7751, "longitude": -122.4219 }, "high": { "latitude": 37.7955, "longitude": -122.3937 } } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Obwohl Suchergebnisse innerhalb des rechteckigen Darstellungsbereichs in der Antwort erscheinen, liegen einige Ergebnisse aufgrund der Voreingenommenheit außerhalb der definierten Grenzen. Ergebnisse sind auch im suggestions
-Array enthalten:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw", "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw", "text": { "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Telegraph Avenue, Berkeley, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJRdmfADq_woARYaVhnfQSUTI", "placeId": "ChIJRdmfADq_woARYaVhnfQSUTI", "text": { "text": "Amoeba Music, Hollywood Boulevard, Los Angeles, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Hollywood Boulevard, Los Angeles, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, /.../ ] }
Eingeschlossene Primärschlüsseltypen verwenden
Verwenden Sie den Parameter includedPrimaryTypes
, um bis zu fünf Typwerte aus Tabelle A, Tabelle B oder nur (regions)
oder nur (cities)
anzugeben. Ein Ort muss mit einem der angegebenen primären Typwerte übereinstimmen, um in die Antwort aufgenommen zu werden.
Im folgenden Beispiel geben Sie einen input
-String von "Soccer" an und verwenden den Parameter includedPrimaryTypes
, um Ergebnisse auf Einrichtungen des Typs "sporting_goods_store"
zu beschränken:
curl -X POST -d '{ "input": "Soccer", "includedPrimaryTypes": ["sporting_goods_store"], "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Wenn Sie den Parameter includedPrimaryTypes
weglassen, können die Ergebnisse Einrichtungen eines unerwünschten Typs enthalten, z. B. "athletic_field"
.
Abfragevorhersagen anfordern
Vervollständigungen von Suchanfragen werden nicht standardmäßig zurückgegeben. Verwenden Sie den Anfrageparameter includeQueryPredictions
, um der Antwort Abfragevorschläge hinzuzufügen. Beispiel:
curl -X POST -d '{ "input": "Amoeba", "includeQueryPredictions": true, "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Das Array suggestions
enthält jetzt sowohl Ortsvorschläge als auch Suchvorschläge, wie oben unter Die Antwort gezeigt. Jede Suchanfrage enthält das Feld text
mit einem empfohlenen Suchstring. Sie können eine Text Search (New)-Anfrage stellen, um weitere Informationen zu den zurückgegebenen Suchanfragevorschlägen zu erhalten.
Ursprung verwenden
In diesem Beispiel wird origin
als Breiten- und Längengrad in die Anfrage aufgenommen.
Wenn Sie origin
angeben, enthält die API in der Antwort das Feld distanceMeters
mit der Luftlinie vom origin
zum Ziel.
In diesem Beispiel wird der Ursprung auf das Zentrum von San Francisco festgelegt:
curl -X POST -d '{ "input": "Amoeba", "origin": { "latitude": 37.7749, "longitude": -122.4194 }, "locationRestriction": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Die Antwort enthält jetzt distanceMeters
:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "home_goods_store", "establishment", "point_of_interest", "store", "electronics_store" ], "distanceMeters": 3012 } } ] }
Testen!
Mit dem API Explorer können Sie Beispielanfragen stellen, um sich mit der API und den API-Optionen vertraut zu machen.
- Wählen Sie rechts auf der Seite das API-Symbol aus.
- Maximieren Sie optional Standardparameter anzeigen und legen Sie den Parameter
fields
auf die Feldmaske fest. - Optional können Sie den Anfragetext bearbeiten.
- Klicken Sie auf die Schaltfläche Ausführen. Wählen Sie im Pop-up-Fenster das Konto aus, mit dem Sie die Anfrage stellen möchten.
Klicken Sie im Bereich „API Explorer“ auf das Symbol zum Maximieren (), um das API Explorer-Fenster zu maximieren.