Wyszukiwanie tekstowe (nowe) zwraca informacje o zbiorze miejsc na podstawie ciągu znaków, np. „pizza w Nowym Jorku”, „sklepy obuwnicze w pobliżu Ottawy” lub „123 Ulica Główna”. Usługa zwraca listę miejsc pasujących do ciągu tekstowego i wszelkich ustawionych ustawień lokalizacji.
Usługa jest szczególnie przydatna do wykonywania niejednoznacznych zapytań dotyczących adresów w zautomatyzowanym systemie. Elementy ciągu, które nie są adresami, mogą pasować do firm i adresów. Przykłady niejednoznacznych zapytań dotyczących adresu to słabo sformatowane adresy lub żądania zawierające składniki niezwiązane z adresem, takie jak nazwy firm. Zapytania podobne do pierwszych dwóch przykładów w tabeli poniżej mogą zwracać zero wyników, chyba że ustawisz lokalizację, np. region, ograniczenie lub preferencję lokalizacji.
„ul. Główna 10, Wielka Brytania” lub „ul. Główna 123, USA” | Wiele „High Street” w Wielkiej Brytanii; wiele „Main Street” w Stanach Zjednoczonych. Zapytanie nie zwraca pożądanych wyników, jeśli nie ustawiono ograniczenia lokalizacji. |
„ChainRestaurant New York” | Wiele lokalizacji „ChainRestaurant” w Nowym Jorku; brak adresu ulicy ani nawet nazwy ulicy. |
„ul. Główna 10, Warszawa” lub „ul. Główna 123, Pleasanton PL” | Tylko jedna „High Street” w brytyjskim mieście Escher; tylko jedna „Main Street” w amerykańskim mieście Pleasanton w Kalifornii. |
„NazwaWyjątkowejRestauracji Nowy Jork” | Tylko 1 instytucja o tej nazwie w Nowym Jorku; do odróżnienia nie trzeba podawać adresu. |
„pizzerie w Nowym Jorku” | Zapytanie zawiera ograniczenie dotyczące lokalizacji, a „pizzerie” to dobrze zdefiniowany typ miejsca. Zwraca ono wiele wyników. |
„+1 514-670-8700” | To zapytanie zawiera numer telefonu. Zwraca ono wiele wyników dotyczących miejsc powiązanych z tym numerem telefonu. |
Narzędzie API Explorer umożliwia wysyłanie żądań na żywo, dzięki czemu możesz zapoznać się z interfejsem API i jego opcjami:
Prośby o wyszukiwanie tekstowe
Zapytanie o wyszukiwanie tekstowe to żądanie HTTP POST o tym formacie:
https://places.googleapis.com/v1/places:searchText
Przekazać wszystkie parametry w treści żądania JSON lub w nagłówkach jako część żądania POST. Na przykład:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel' \ 'https://places.googleapis.com/v1/places:searchText'
Odpowiedzi w wyszukiwaniu tekstowym (Nowy)
Text Search (nowość) zwraca obiekt JSON jako odpowiedź. W odpowiedzi:
- Tablica
places
zawiera wszystkie pasujące miejsca. - Każde miejsce w tablicy jest reprezentowane przez obiekt
Place
. ObiektPlace
zawiera szczegółowe informacje o poszczególnych miejscach. - FieldMask przekazana w żądaniu określa listę pól zwracanych w obiekcie
Place
.
Pełny obiekt JSON ma postać:
{ "places": [ { object (Place) } ] }
Wymagane parametry
-
FieldMask
Określ listę pól, które mają być zwracane w odpowiedzi, tworząc maskę pola odpowiedzi. Przekaż maskę pola odpowiedzi do metody, używając parametru adresu URL
$fields
lubfields
albo nagłówka HTTPX-Goog-FieldMask
. W odpowiedzi nie ma domyślnej listy zwracanych pól. Jeśli pominiesz maskę pola, metoda zwróci błąd.Maskowanie pól to dobra praktyka projektowania, która pozwala uniknąć żądania niepotrzebnych danych, co pomaga uniknąć niepotrzebnego czasu przetwarzania i opłat rozliczeniowych.
Podaj rozdzieloną przecinkami listę typów danych o miejscach, które mają zostać zwrócone. Na przykład: aby pobrać nazwę wyświetlaną i adres miejsca.
X-Goog-FieldMask: places.displayName,places.formattedAddress
Użyj
*
, aby pobrać wszystkie pola.X-Goog-FieldMask: *
Podaj co najmniej 1 z tych pól:
Te pola powodują wyświetlenie SKU w wyszukiwaniu tekstowym (tylko identyfikator):
places.attributions
,places.id
,places.name
*,nextPageToken
* Poleplaces.name
zawiera nazwę zasobu miejsca w formie:places/PLACE_ID
. Użyjplaces.displayName
, aby wyświetlić nazwę tekstową miejsca.Te pola aktywują kod SKU wyszukiwania tekstowego (podstawowego):
places.accessibilityOptions
,places.addressComponents
,places.adrFormatAddress
,places.businessStatus
,places.containingPlaces
,places.displayName
,places.formattedAddress
,places.googleMapsLinks
*,places.googleMapsUri
,places.iconBackgroundColor
,places.iconMaskBaseUri
,places.location
,places.photos
,places.plusCode
,places.primaryType
,places.primaryTypeDisplayName
,places.pureServiceAreaBusiness
,places.shortFormattedAddress
,places.subDestinations
,places.types
,places.utcOffsetMinutes
,places.viewport
* Poleplaces.googleMapsLinks
znajduje się w fazie przed GA Preview i nie jest płatne, co oznacza, że za korzystanie z niego w fazie Preview nie jest naliczane żadne opłaty.Te pola powodują wyświetlenie wyszukiwania tekstowego (zaawansowanego) SKU:
places.currentOpeningHours
,places.currentSecondaryOpeningHours
,places.internationalPhoneNumber
,places.nationalPhoneNumber
,places.priceLevel
,places.priceRange
,places.rating
,places.regularOpeningHours
,places.regularSecondaryOpeningHours
,places.userRatingCount
,places.websiteUri
Te pola powodują wyświetlenie SKU w wyszukiwarce tekstowej (preferowane):
places.allowsDogs
,places.curbsidePickup
,places.delivery
,places.dineIn
,places.editorialSummary
,places.evChargeOptions
,places.fuelOptions
,places.goodForChildren
,places.goodForGroups
,places.goodForWatchingSports
,places.liveMusic
,places.menuForChildren
,places.parkingOptions
,places.paymentOptions
,places.outdoorSeating
,places.reservable
,places.restroom
,places.reviews
,places.routingSummaries
,*places.servesBeer
,places.servesBreakfast
,places.servesBrunch
,places.servesCocktails
,places.servesCoffee
,places.servesDessert
,places.servesDinner
,places.servesLunch
,places.servesVegetarianFood
,places.servesWine
,places.takeout
* Tylko wyszukiwanie tekstowe i wyszukiwanie w pobliżu
-
textQuery
Tekst, w którym ma być przeprowadzone wyszukiwanie, np. „restauracja”, „123 Ulica Główna” lub „najlepsze miejsce do odwiedzenia w San Francisco”. Interfejs API zwraca dopasowania kandydatów na podstawie tego ciągu znaków i porządkuje wyniki według ich trafności.
Parametry opcjonalne
includedType
Ogranicza wyniki do miejsc pasujących do określonego typu zdefiniowanego w tabeli A. Można podać tylko jeden typ. Na przykład:
"includedType":"bar"
"includedType":"pharmacy"
-
includePureServiceAreaBusinesses
Jeśli ustawisz wartość
true
, odpowiedź obejmuje firmy, które świadczą usługi bezpośrednio u klientów, ale nie mają fizycznej lokalizacji. Jeśli ustawisz wartośćfalse
, interfejs API zwróci tylko te firmy, które mają fizyczną lokalizację firmy. languageCode
Język, w którym mają być zwracane wyniki.
- Zobacz listę obsługiwanych języków. Google często aktualizuje listę obsługiwanych języków, więc może ona nie być kompletna.
-
Jeśli nie podano
languageCode
, domyślną wartością interfejsu API jesten
. Jeśli podasz nieprawidłowy kod języka, API zwróci błądINVALID_ARGUMENT
. - Interfejs API stara się podać adres ulicy, który jest czytelny zarówno dla użytkownika, jak i dla mieszkańców. Aby osiągnąć ten cel, zwraca adresy w języku lokalnym, transliterację na skrypt, który w razie potrzeby może odczytać użytkownik, z zachowaniem preferowanego języka. Wszystkie inne adresy są zwracane w preferowanym języku. Wszystkie elementy adresu są zwracane w tym samym języku, który jest wybierany na podstawie pierwszego komponentu.
- Jeśli nazwa nie jest dostępna w preferowanym języku, interfejs API stosuje najbliższe dopasowanie.
- Preferowany język ma niewielki wpływ na zestaw wyników zwracanych przez interfejs API oraz na kolejność, w jakiej są one zwracane. Geokoder różnie interpretuje skróty w zależności od języka. Mogą to być na przykład skróty poszczególnych typów ulic lub synonimy, które mogą być prawidłowe w jednym języku, a w innym nie.
locationBias
Określa obszar wyszukiwania. Ta lokalizacja służy jako preferencja, co oznacza, że mogą być zwracane wyniki z okolic wskazanej lokalizacji, w tym poza wskazanym obszarem.
Możesz podać wartość
locationRestriction
lublocationBias
, ale nie obie. ParametrlocationRestriction
określa region, w którym muszą się znajdować wyniki, a parametrlocationBias
– region, w którym wyniki prawdopodobnie się znajdują lub znajdują się w pobliżu tego regionu, ale mogą się znajdować też poza nim.Określ region jako prostokątny widoczny lub okrągły obszar.
Okrąg jest definiowany przez punkt środkowy i promień w metrach. Promień musi mieścić się w zakresie od 0,0 do 50 000,0 (włącznie). Domyślny promień to 0,0. Na przykład:
"locationBias": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } }
Prostokąt to strefa widocznego obszaru szerokości i długości geograficznej, reprezentowana przez 2 punkty: dolny lewy i górny prawy. Punkt dolny oznacza południowy róg prostokąta, a najwyższy – północno-wschodni róg prostokąta.
Widoczny obszar jest uważany za zamknięty obszar, co oznacza, że obejmuje swoją krawędź. Granice szerokości geograficznej muszą mieścić się w przedziale od –90 do 90 stopni, a granice długości geograficznej – w przedziale od –180 do 180 stopni:
- Jeśli
low
=high
, widoczny obszar składa się z tego pojedynczego punktu. - Jeśli
low.longitude
>high.longitude
, zakres długości geograficznej jest odwrócony (widoczny obszar przecina linię długości geograficznej 180°). - Jeśli
low.longitude
= –180 stopni, ahigh.longitude
= 180 stopni, widoczny obszar obejmuje wszystkie długości geograficzne. - Jeśli
low.longitude
= 180 stopni, ahigh.longitude
= -180 stopni, zakres długości geograficznej jest pusty. - Jeśli
low.latitude
>high.latitude
, zakres szerokości geograficznej jest pusty.
Wartości dolna i górna muszą być wypełnione, a reprezentowane pole nie może być puste. Gdy to zrobisz, pojawi się błąd.
Na przykład ten widoczny obszar w całości obejmuje Nowy Jork:
"locationBias": { "rectangle": { "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } } }
- Jeśli
locationRestriction
Określa obszar wyszukiwania. Wyniki spoza określonego obszaru nie są zwracane. Określ region jako prostokątny widoczny obszar. Informacje o definiowaniu widocznego obszaru znajdziesz w opisie obiektu
locationBias
.Możesz podać wartość
locationRestriction
lublocationBias
, ale nie obie. ParametrlocationRestriction
określa region, w którym muszą się znajdować wyniki, a parametrlocationBias
– region, w którym wyniki prawdopodobnie się znajdują lub znajdują się w pobliżu tego regionu, ale mogą się znajdować też poza nim.-
maxResultCount (wycofany)
Określa liczbę wyników (od 1 do 20) wyświetlanych na stronie. Jeśli np. ustawisz wartość parametru
maxResultCount
na 5, na pierwszej stronie pojawi się maksymalnie 5 wyników. Jeśli zapytanie może zwrócić więcej wyników, odpowiedź będzie zawierać parametrnextPageToken
, który możesz przekazać w kolejne żądanie, aby uzyskać dostęp do następnej strony. evOptions
Określa parametry identyfikacji dostępnych złączy ładowania pojazdów elektrycznych (EV) i szybkości ładowania.
connectorTypes
Filtry według typu złącza do ładowania EV dostępnego w danym miejscu. Miejsce, które nie obsługuje żadnego z typów złączy, zostanie odfiltrowane. Obsługiwane typy złączy do ładowania pojazdów elektrycznych obejmują ładowarki z kombinowanymi (AC i DC) gniazdami, ładowarki Tesla, ładowarki zgodne ze standardem GB/T (do szybkiego ładowania pojazdów elektrycznych w Chinach) oraz ładowarki do gniazdka ściennego. Więcej informacji znajdziesz w dokumentacji referencyjnej.
minimumChargingRateKw
Filtruje miejsca według minimalnej szybkości ładowania EV w kilowatach (kW). Wszystkie miejsca, w których ceny są mniejsze niż minimalna, zostaną odfiltrowane. Aby na przykład znaleźć ładowarki EV, których moc ładowania wynosi co najmniej 10 kW, możesz ustawić ten parametr na „10”.
minRating
Ogranicza wyniki tylko do tych, których średnia ocena użytkowników jest większa lub równa temu limitowi. Wartości muszą mieścić się w przedziale od 0,0 do 5,0 (włącznie) z wielokrotnością 0,5. Przykład: 0, 0,5, 1,0, ... , 5,0. Wartości są zaokrąglane w górę do najbliższej wielokrotności 0,5. Na przykład wartość 0,6 eliminuje wszystkie wyniki o ocenie niższej niż 1,0.
openNow
Jeśli
true
, zwracaj tylko te miejsca, które są otwarte w momencie wysłania zapytania. W przypadku wartościfalse
zwróć wszystkie firmy niezależnie od tego, czy są otwarte. Miejsca, które nie określają godzin otwarcia w bazie danych Miejsc Google, są zwracane, jeśli ustawisz ten parametr na wartośćfalse
.pageSize
Określa liczbę wyników (od 1 do 20) wyświetlanych na stronie. Jeśli np. ustawisz wartość parametru
pageSize
na 5, na pierwszej stronie pojawi się maksymalnie 5 wyników. Jeśli zapytanie może zwrócić więcej wyników, odpowiedź będzie zawierać parametrnextPageToken
, który możesz przekazać w kolejne żądanie, aby uzyskać dostęp do następnej strony.pageToken
Określa
nextPageToken
z treści odpowiedzi na poprzedniej stronie.-
priceLevels
Ogranicz wyszukiwanie do miejsc oznaczonych określonymi poziomami cen. Domyślnie wybrane są wszystkie poziomy cen.
Podaj tablicę z co najmniej 1 wartością zdefiniowaną przez
PriceLevel
.Na przykład:
"priceLevels":["PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE"]
rankPreference
Określa kolejność wyników w odpowiedzi na podstawie typu zapytania:
- W przypadku zapytania kategorialnego, takiego jak „Restauracje w Nowym Jorku”, domyślna wartość to
RELEVANCE
(ranking wyników według trafności wyszukiwania). Możesz ustawićrankPreference
naRELEVANCE
lubDISTANCE
(ranking wyników według dystansu). - W przypadku zapytania bez kategorii, np. „Mountain View, CA”, zalecamy pozostawienie
rankPreference
niezaznaczonego.
- W przypadku zapytania kategorialnego, takiego jak „Restauracje w Nowym Jorku”, domyślna wartość to
regionCode
Kod regionu używany do formatowania odpowiedzi podany jako wartość dwuznakowego kodu CLDR. Ten parametr może też mieć wpływ na wyniki wyszukiwania. Nie ma wartości domyślnej.
Jeśli nazwa kraju w polu
formattedAddress
w odpowiedzi jest zgodna z wartością w poluregionCode
, kod kraju jest pomijany w poluformattedAddress
. Ten parametr nie ma wpływu naadrFormatAddress
, który zawsze zawiera nazwę kraju, jeśli jest dostępna, ani nashortFormattedAddress
, który nigdy jej nie zawiera.Większość kodów CLDR jest identyczna z kodami ISO 3166-1, z niektórymi wyjątkami. Na przykład ccTLD Wielkiej Brytanii to „uk” (.co.uk), a jej kod ISO 3166-1 to „gb” (technicznie dla podmiotu „Zjednoczone Królestwo Wielkiej Brytanii i Irlandii Północnej”). Parametr może wpływać na wyniki w zależności od obowiązujących przepisów.
strictTypeFiltering
Używany z parametrem
includedType
. Gdy ustawisz wartośćtrue
, zwracane są tylko miejsca pasujące do typów określonych przezincludeType
. Jeśli wartość jest równa fałsz (domyślnie), odpowiedź może zawierać miejsca, które nie pasują do podanych typów.
Przykłady wyszukiwania tekstowego
Znajdź miejsce na podstawie ciągu zapytania
Ten przykład pokazuje zapytanie dotyczące wyszukiwania tekstowego o tytule „Spicy Vegetarian Food in Sydney, Australia”:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \ 'https://places.googleapis.com/v1/places:searchText'
Zwróć uwagę, że nagłówek X-Goog-FieldMask
określa, że odpowiedź zawiera te pola danych: places.displayName,places.formattedAddress
.
Odpowiedź ma wtedy postać:
{ "places": [ { "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, { "formattedAddress": "175 First Ave, Five Dock NSW 2046, Australia", "displayName": { "text": "Veggo Sizzle - Vegan & Vegetarian Restaurant, Five Dock, Sydney", "languageCode": "en" } }, { "formattedAddress": "29 King St, Sydney NSW 2000, Australia", "displayName": { "text": "Peace Harmony", "languageCode": "en" } }, ... ] }
Aby zwracać dodatkowe informacje, dodaj do maski pola więcej typów danych.
Na przykład dodaj atrybut places.types,places.websiteUri
, aby w odpowiedzi uwzględnić typ restauracji i adres internetowy:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.types,places.websiteUri' \ 'https://places.googleapis.com/v1/places:searchText'
Odpowiedź ma teraz postać:
{ "places": [ { "types": [ "vegetarian_restaurant", "vegan_restaurant", "chinese_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "websiteUri": "http://www.motherchusvegetarian.com.au/", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, { "types": [ "vegan_restaurant", "thai_restaurant", "vegetarian_restaurant", "indian_restaurant", "italian_restaurant", "american_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "175 First Ave, Five Dock NSW 2046, Australia", "websiteUri": "http://www.veggosizzle.com.au/", "displayName": { "text": "Veggo Sizzle - Vegan & Vegetarian Restaurant, Five Dock, Sydney", "languageCode": "en" } }, ... ] }
Filtrowanie miejsc według poziomu ceny
Użyj opcji priceLevel
, aby filtrować wyniki do restauracji zdefiniowanych jako niedrogie lub średnio drogie:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia", "priceLevels":["PRICE_LEVEL_INEXPENSIVE", "PRICE_LEVEL_MODERATE"] }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel' \ 'https://places.googleapis.com/v1/places:searchText'
W tym przykładzie nagłówek X-Goog-FieldMask
służy też do dodawania pola danych places.priceLevel
do odpowiedzi, więc ma ona postać:
{ "places": [ { "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, { "formattedAddress": "115 King St, Newtown NSW 2042, Australia", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Green Mushroom", "languageCode": "en" } }, ... ] }
Dodaj dodatkowe opcje, aby zawęzić wyszukiwanie, np. includedType
, minRating
, rankPreference
, openNow
i inne parametry opisane w sekcji Opcjonalne parametry.
Wyszukiwanie miejsc na obszarze
Aby ograniczyć wyszukiwanie do obszaru, użyj właściwości locationRestriction
lub locationBias
, ale nie obu naraz. Pamiętaj, że locationRestriction
określa region, w którym muszą się znajdować wyniki, a locationBias
– region, w pobliżu którego muszą się znajdować wyniki, ale nie muszą się znajdować w tym obszarze.
Ten przykład pokazuje prośbę o wyszukiwanie tekstowe o hasłach „Wędzona wegetariańska żywność” z preferencją lokalizacji w odległości do 500 metrów od punktu w centrum San Francisco. Ta prośba zwraca tylko pierwsze 10 wyników dla miejsc, które są otwarte.
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food", "openNow": true, "pageSize": 10, "locationBias": { "circle": { "center": {"latitude": 37.7937, "longitude": -122.3965}, "radius": 500.0 } }, }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \ 'https://places.googleapis.com/v1/places:searchText'
Szukaj ładowarki EV z minimalną szybkością ładowania
Użyj minimumChargingRateKw
i connectorTypes
, by wyszukać miejsca z dostępnymi ładowarkami pasującymi do Twojego pojazdu elektrycznego.
Ten przykład pokazuje żądanie dotyczące ładowarek typu Tesla i J1772 typu 1 do ładowania pojazdów elektrycznych o minimalnej szybkości ładowania 10 kW w Mountain View w Kalifornii. Zwracane są tylko 4 wyniki.
curl -X POST -d '{ "textQuery": "EV Charging Station Mountain View", "pageSize": 4, "evOptions": { "minimumChargingRateKw": 10, "connectorTypes": ["EV_CONNECTOR_TYPE_J1772","EV_CONNECTOR_TYPE_TESLA"] } }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H "X-Goog-FieldMask: places.displayName,places.evChargeOptions" \ 'https://places.googleapis.com/v1/places:searchText'
Żądanie zwraca tę odpowiedź:
{ "places": [ { "displayName": { "text": "EVgo Charging Station", "languageCode": "en" }, "evChargeOptions": { "connectorCount": 16, "connectorAggregation": [ { "type": "EV_CONNECTOR_TYPE_CHADEMO", "maxChargeRateKw": 100, "count": 8, "availableCount": 5, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 100, "count": 2, "availableCount": 2, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 350, "count": 6, "availableCount": 3, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" } ] } }, { "displayName": { "text": "EVgo Charging Station", "languageCode": "en" }, "evChargeOptions": { "connectorCount": 6, "connectorAggregation": [ { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 100, "count": 4, "availableCount": 3, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 350, "count": 2, "availableCount": 0, "outOfServiceCount": 2, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" } ] } }, { "displayName": { "text": "EVgo Charging Station", "languageCode": "en" }, "evChargeOptions": { "connectorCount": 5, "connectorAggregation": [ { "type": "EV_CONNECTOR_TYPE_J1772", "maxChargeRateKw": 3.5999999046325684, "count": 1, "availableCount": 0, "outOfServiceCount": 1, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CHADEMO", "maxChargeRateKw": 50, "count": 2, "availableCount": 0, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" }, { "type": "EV_CONNECTOR_TYPE_CCS_COMBO_1", "maxChargeRateKw": 50, "count": 2, "availableCount": 0, "outOfServiceCount": 0, "availabilityLastUpdateTime": "2024-01-10T19:10:00Z" } ] } }, { "displayName": { "text": "Electric Vehicle Charging Station", "languageCode": "en" }, "evChargeOptions": { "connectorCount": 10, "connectorAggregation": [ { "type": "EV_CONNECTOR_TYPE_OTHER", "maxChargeRateKw": 210, "count": 10 } ] } } ] }
Wyszukiwanie firm działających na określonym obszarze
Parametr includePureServiceAreaBusinesses
służy do wyszukiwania firm bez adresu fizycznego (np. mobilna usługa sprzątania lub food truck).
Ten przykład pokazuje prośbę o pomoc hydraulika w San Francisco:
curl -X POST -d '{ "textQuery" : "plumber San Francisco", "includePureServiceAreaBusinesses": true }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress' \ 'https://places.googleapis.com/v1/places:searchText'
W odpowiedzi firmy bez adresu fizycznego nie podają pola formattedAddress
:
{ "places": [ { "formattedAddress": "3450 Sacramento St #204, San Francisco, CA 94118, USA", "displayName": { "text": "Advanced Plumbing & Drain", "languageCode": "en" } }, { "formattedAddress": "1455 Bancroft Ave, San Francisco, CA 94124, USA", "displayName": { "text": "Magic Plumbing Heating & Cooling", "languageCode": "en" } }, /.../ { "displayName": { "text": "Starboy Plumbing Inc.", "languageCode": "en" } }, { "formattedAddress": "78 Dorman Ave, San Francisco, CA 94124, USA", "displayName": { "text": "Cabrillo Plumbing, Heating & Air", "languageCode": "en" } }, { "formattedAddress": "540 Barneveld Ave # D, San Francisco, CA 94124, USA", "displayName": { "text": "Mr. Rooter Plumbing of San Francisco", "languageCode": "en" } }, /.../ { "displayName": { "text": "Pipeline Plumbing", "languageCode": "en" } }, { "formattedAddress": "350 Bay St #100-178, San Francisco, CA 94133, USA", "displayName": { "text": "One Source Plumbing and Rooter", "languageCode": "en" } }, /.../ ] }
Określ liczbę wyników zwracanych na stronę
Parametr pageSize
służy do określenia liczby wyników zwracanych na stronę. Parametr nextPageToken
w treści odpowiedzi zawiera token, którego można użyć w kolejnych wywołaniach w celu uzyskania dostępu do następnej strony wyników.
Na przykładzie poniżej pokazano żądanie „pizza w Nowym Jorku” ograniczone do 5 wyników na stronę:
curl -X POST -d '{ "textQuery": "pizza in New York", "pageSize": 5 }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H "X-Goog-FieldMask: places.id,nextPageToken" \ 'https://places.googleapis.com/v1/places:searchText'
{ "places": [ { "id": "ChIJifIePKtZwokRVZ-UdRGkZzs" }, { "id": "ChIJPxPd_P1YwokRfzLhSiACEoU" }, { "id": "ChIJrXXKn5NZwokR78g0ipCnY60" }, { "id": "ChIJ6ySICVZYwokR9rIK8HjXhzE" }, { "id": "ChIJ6xvs94VZwokRnT1D2lX2OTw" } ], "nextPageToken": "AeCrKXsZWzNVbPzO-MRWPu52jWO_Xx8aKwOQ69_Je3DxRpfdjClq8Ekwh3UcF2h2Jn75kL6PtWLGV4ecQri-GEUKN_OFpJkdVc-JL4Q" }
Aby uzyskać dostęp do następnej strony wyników, użyj pageToken
, aby przekazać nextPageToken
w treści żądania:
curl -X POST -d '{ "textQuery": "pizza in New York", "pageSize": 5, "pageToken": "AeCrKXsZWzNVbPzO-MRWPu52jWO_Xx8aKwOQ69_Je3DxRpfdjClq8Ekwh3UcF2h2Jn75kL6PtWLGV4ecQri-GEUKN_OFpJkdVc-JL4Q" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H "X-Goog-FieldMask: places.id,nextPageToken" \ 'https://places.googleapis.com/v1/places:searchText'
{ "places": [ { "id": "ChIJL-LN1N1ZwokR8K2jACu6Ydw" }, { "id": "ChIJjaD94kFZwokR-20CXqlpy_4" }, { "id": "ChIJ6ffdpJNZwokRmcafdROM5q0" }, { "id": "ChIJ8Q2WSpJZwokRQz-bYYgEskM" }, { "id": "ChIJ8164qwFZwokRhplkmhvq1uE" } ], "nextPageToken": "AeCrKXvPd6uUy-oj96W2OaqEe2pUD8QTxOM8-sKfUcFsC9t2Wey5qivrKGoGSxcZnyc7RPmaFfAktslrKbUh31ZDTkL0upRmaxA7c_c" }
Wypróbuj
Narzędzie API Explorer umożliwia wysyłanie przykładowych żądań, dzięki czemu możesz zapoznać się z interfejsem API i jego opcjami.
Po prawej stronie strony kliknij ikonę API .
Opcjonalnie rozwiń opcję Pokaż parametry standardowe i ustaw parametr
fields
na maskę pola.Opcjonalnie edytuj Treść żądania.
Kliknij przycisk Wykonaj. W wyskakującym okienku wybierz konto, którego chcesz użyć do przesłania prośby.
W panelu API Explorer kliknij ikonę rozwijania , aby rozwinąć okno API Explorer.