Wprowadzenie
Żądanie Wyszukiwanie w pobliżu (New) przyjmuje co najmniej 1 typ miejsca i zwraca listę pasujących miejsc w określonym obszarze. Wymagana jest maska pola określająca co najmniej 1 typ danych. Wyszukiwanie w pobliżu (Nowe) obsługuje tylko żądania POST.
Narzędzie APIs Explorer umożliwia wysyłanie żądań w czasie rzeczywistym, dzięki czemu możesz zapoznać się z interfejsem API i jego opcjami:
Wypróbuj interaktywne demo, aby zobaczyć wyniki Wyszukiwania w pobliżu (New) wyświetlane na mapie.
Żądania Wyszukiwania w pobliżu (New)
Żądanie Nearby Search (New) to żądanie HTTP POST wysyłane na adres URL w tym formacie:
https://places.googleapis.com/v1/places:searchNearby
Przekaż wszystkie parametry w treści żądania JSON lub w nagłówkach w ramach żądania POST. Na przykład:
curl -X POST -d '{
"includedTypes": ["restaurant"],
"maxResultCount": 10,
"locationRestriction": {
"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" \
https://places.googleapis.com/v1/places:searchNearby
Odpowiedzi Wyszukiwania w pobliżu (New)
Wyszukiwanie w pobliżu (Nowe) zwraca obiekt JSON jako odpowiedź. W odpowiedzi:
- Tablica
placeszawiera wszystkie pasujące miejsca. - Każde miejsce w tablicy jest reprezentowane przez a
Placeobiekt. ObiektPlacezawiera szczegółowe informacje o jednym miejscu. - FieldMask przekazany 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ą zostać zwrócone w odpowiedzi, tworząc maskę pola odpowiedzi. Przekaż maskę pola odpowiedzi do metody za pomocą parametru URL
$fieldslubfields, albo za pomocą 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.
Określ 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
Aby pobrać wszystkie pola, użyj znaku
*.X-Goog-FieldMask: *
Określ co najmniej 1 z tych pól:
Te pola aktywują SKU Wyszukiwania w pobliżu Pro:
places.accessibilityOptions
places.addressComponents
places.addressDescriptor*
places.adrFormatAddress
places.attributions
places.businessStatus
places.containingPlaces
places.displayName
places.formattedAddress
places.googleMapsLinks
places.googleMapsUri
places.iconBackgroundColor
places.iconMaskBaseUri
places.id
places.location
places.name**
places.movedPlace
places.movedPlaceId
places.openingDate
places.photos
places.plusCode
places.postalAddress
places.primaryType
places.primaryTypeDisplayName
places.pureServiceAreaBusiness
places.shortFormattedAddress
places.subDestinations
places.timeZone
places.types
places.utcOffsetMinutes
places.viewport
* Deskryptory adresu są ogólnie dostępne dla klientów w Indiach, a w innych krajach są w fazie eksperymentu.
** Poleplaces.namezawiera nazwę zasobu w formacieplaces/PLACE_ID. Aby uzyskać dostęp do nazwy tekstowej miejsca, użyjplaces.displayName.Pełną listę pól i powiązanych z nimi SKU znajdziesz w artykule Pola danych o miejscach (nowe).
Te pola aktywują SKU Wyszukiwanie w pobliżu Enterprise:
places.currentOpeningHours
places.currentSecondaryOpeningHours
places.internationalPhoneNumber
places.nationalPhoneNumber
places.priceLevel
places.priceRange
places.rating
places.regularOpeningHours
places.regularSecondaryOpeningHours
places.transitStation
places.userRatingCount
places.websiteUriPełną listę pól i powiązanych z nimi SKU znajdziesz w artykule Pola danych o miejscach (nowe).
Następujące pola aktywują SKU Wyszukiwanie w pobliżu Enterprise + Atmosphere:
places.allowsDogs
places.curbsidePickup
places.delivery
places.dineIn
places.editorialSummary
places.evChargeAmenitySummary
places.evChargeOptions
places.fuelOptions
places.generativeSummary
places.goodForChildren
places.goodForGroups
places.goodForWatchingSports
places.liveMusic
places.menuForChildren
places.neighborhoodSummary
places.parkingOptions
places.paymentOptions
places.outdoorSeating
places.reservable
places.restroom
places.reviews
places.reviewSummary
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żuPełną listę pól i powiązanych z nimi SKU znajdziesz w artykule Pola danych o miejscach (nowe).
-
locationRestriction
Region, w którym ma się odbywać wyszukiwanie, określony jako okrąg zdefiniowany przez punkt środkowy i promień w metrach. Promień musi mieścić się w zakresie od 0,0 do 50000,0 włącznie. Domyślny promień to 0,0. W żądaniu musisz ustawić wartość większą niż 0,0.
Na przykład:
"locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } }
Parametry opcjonalne
-
includeFutureOpeningBusinesses
Jeśli wartość to
true, zwraca firmy, które mają zostać otwarte w przyszłości. Domyślna wartość tofalse.
Aby pobrać stan firmy, dodajplaces.businessStatusdo maski pola żądania. Aby pobrać przewidywaną datę otwarcia firmy, dodajplaces.openingDatedo maski pola żądania. -
includedTypes/excludedTypes, includedPrimaryTypes/excludedPrimaryTypes
Umożliwia określenie listy typów z typów tabeli A, które mają być używane do filtrowania wyników wyszukiwania. W każdej kategorii ograniczeń typu można określić maksymalnie 50 typów.
Miejsce może mieć tylko 1 typ podstawowy z tabeli A. Typ podstawowy może być np.
"mexican_restaurant"lub"steak_house". UżyjincludedPrimaryTypesiexcludedPrimaryTypes, aby filtrować wyniki według typu podstawowego miejsca.Miejsce może też mieć wiele wartości typu z typów tabeli A. Na przykład restauracja może mieć te typy:
"seafood_restaurant","restaurant","food","point_of_interest","establishment". UżyjincludedTypesiexcludedTypes, aby filtrować wyniki według listy typów powiązanych z miejscem.Jeśli określisz ogólny typ podstawowy, np.
"restaurant"lub"hotel", odpowiedź może zawierać miejsca o bardziej szczegółowym typie podstawowym niż określony. Na przykład określisz, że ma być uwzględniony typ podstawowy"restaurant". Odpowiedź może wtedy zawierać miejsca o typie podstawowym"restaurant", ale może też zawierać miejsca o bardziej szczegółowym typie podstawowym, np."chinese_restaurant"lub"seafood_restaurant".Jeśli wyszukiwanie jest określone z kilkoma ograniczeniami typu, zwracane są tylko miejsca które spełniają wszystkie te ograniczenia. Jeśli na przykład określisz
{"includedTypes": ["restaurant"], "excludedPrimaryTypes": ["steak_house"]}, zwrócone miejsca będą świadczyć usługi związane z"restaurant", ale nie będą działać głównie jako"steak_house".includedTypes
Lista typów miejsc rozdzielona przecinkami z tabeli A, które mają być wyszukiwane. Jeśli ten parametr zostanie pominięty, zwracane są miejsca wszystkich typów.
excludedTypes
Lista typów miejsc rozdzielona przecinkami z tabeli A, które mają zostać wykluczone z wyszukiwania.
Jeśli w żądaniu określisz zarówno
includedTypes( np."school"), jak iexcludedTypes(np."primary_school"), odpowiedź będzie zawierać miejsca, które są sklasyfikowane jako"school"ale nie jako"primary_school". Odpowiedź zawiera miejsca, które pasują do co najmniej 1 z theincludedTypesi żadnego zexcludedTypes.Jeśli występują sprzeczne typy, np. typ pojawia się zarówno w
includedTypesiexcludedTypes, zwracany jest błądINVALID_REQUEST.includedPrimaryTypes
Lista podstawowych typów miejsc rozdzielona przecinkami z tabeli A, które mają zostać uwzględnione w wyszukiwaniu.
excludedPrimaryTypes
Rozdzielona przecinkami lista podstawowych typów miejsc z tabeli A, które mają zostać wykluczone z wyszukiwania.
Jeśli występują sprzeczne typy podstawowe, np. typ pojawia się zarówno w
includedPrimaryTypesiexcludedPrimaryTypes, zwracany jest błądINVALID_ARGUMENT. -
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ć wyczerpująca.
- Jeśli nie podasz
languageCode, interfejs API domyślnie użyje językaen. Jeśli podasz nieprawidłowy kod języka, interfejs API zwróci błądINVALID_ARGUMENT. - Interfejs API dokłada wszelkich starań, aby podać adres ulicy, który jest czytelny zarówno dla użytkownika, jak i dla mieszkańców. Aby to osiągnąć, zwraca adresy ulic w języku lokalnym, transliterowane na skrypt czytelny dla użytkownika w razie potrzeby, z uwzględnieniem preferowanego języka. Wszystkie inne adresy są zwracane w preferowanym języku. Wszystkie komponenty 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 używa najbliższego dopasowania.
- Preferowany język ma niewielki wpływ na zestaw wyników, które interfejs API wybiera do zwrócenia, oraz na kolejność, w jakiej są one zwracane. Geokoder inaczej interpretuje skróty w zależności od języka, np. skróty typów ulic lub synonimy które mogą być prawidłowe w jednym języku, ale nie w innym.
-
maxResultCount
Określa maksymalną liczbę wyników miejsc do zwrócenia. Musi mieścić się w zakresie od 1 do 20 (domyślnie) włącznie.
-
rankPreference
Typ rankingu do użycia. Jeśli ten parametr zostanie pominięty, wyniki są sortowane według popularności. Może mieć jedną z tych wartości:
POPULARITY(domyślnie) – sortuje wyniki według popularności.DISTANCE– sortuje wyniki w kolejności rosnącej według odległości od określonej lokalizacji.
-
regionCode
Kod regionu używany do formatowania odpowiedzi, określony jako dwuznakowa wartość kodu CLDR. Nie ma wartości domyślnej.
Jeśli nazwa kraju w polu
formattedAddressw odpowiedzi jest zgodna zregionCode, kod kraju jest pomijany wformattedAddress. Ten parametr nie ma wpływu naadrFormatAddress, który zawsze zawiera nazwę kraju ani nashortFormattedAddress, który nigdy jej nie zawiera.Większość kodów CLDR jest identyczna z kodami ISO 3166-1, z kilkoma istotnymi wyjątkami. Na przykład ccTLD Zjednoczonego Królestwa to „uk” (.co.uk), a jego kod ISO 3166-1 to „gb” (technicznie dla jednostki „Zjednoczone Królestwo Wielkiej Brytanii i Irlandii Północnej”). Ten parametr może wpływać na wyniki na podstawie obowiązującego prawa.
Przykłady Wyszukiwania w pobliżu (Nowe)
Znajdowanie miejsc jednego typu
Poniższy przykład przedstawia żądanie Wyszukiwania w pobliżu (New) dotyczące wyświetlanych nazw wszystkich restauracji w promieniu 500 metrów, określonym przez circle:
curl -X POST -d '{
"includedTypes": ["restaurant"],
"maxResultCount": 10,
"locationRestriction": {
"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" \
https://places.googleapis.com/v1/places:searchNearby
Pamiętaj, że nagłówek X-Goog-FieldMask określa, że odpowiedź zawiera te pola danych: places.displayName.
Odpowiedź ma wtedy postać:
{ "places": [ { "displayName": { "text": "La Mar Cocina Peruana", "languageCode": "en" } }, { "displayName": { "text": "Kokkari Estiatorio", "languageCode": "en" } }, { "displayName": { "text": "Harborview Restaurant & Bar", "languageCode": "en" } }, ... }
Aby zwrócić dodatkowe informacje, dodaj do maski pola więcej typów danych.
Na przykład dodaj places.formattedAddress,places.types,places.websiteUri, aby w odpowiedzi uwzględnić adres, typ i adres internetowy restauracji:
curl -X POST -d '{
"includedTypes": ["restaurant"],
"maxResultCount": 10,
"locationRestriction": {
"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,places.types,places.websiteUri" \
https://places.googleapis.com/v1/places:searchNearby
Odpowiedź ma teraz postać:
{ "places": [ { "types": [ "seafood_restaurant", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "PIER 1 1/2 The Embarcadero N, San Francisco, CA 94105, USA", "websiteUri": "http://lamarsf.com/", "displayName": { "text": "La Mar Cocina Peruana", "languageCode": "en" } }, { "types": [ "greek_restaurant", "meal_takeaway", "restaurant", "food", "point_of_interest", "establishment" ], "formattedAddress": "200 Jackson St, San Francisco, CA 94111, USA", "websiteUri": "https://kokkari.com/", "displayName": { "text": "Kokkari Estiatorio", "languageCode": "en" } }, ... }
Znajdowanie miejsc wielu typów
Poniższy przykład przedstawia żądanie Wyszukiwania w pobliżu (New) dotyczące wyświetlanych nazw wszystkich sklepów osiedlowych i monopolowych w promieniu 1000 metrów od określonego circle:
curl -X POST -d '{
"includedTypes": ["liquor_store", "convenience_store"],
"maxResultCount": 10,
"locationRestriction": {
"circle": {
"center": {
"latitude": 37.7937,
"longitude": -122.3965
},
"radius": 1000.0
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.primaryType,places.types" \
https://places.googleapis.com/v1/places:searchNearby
places.primaryType i places.types, aby odpowiedź zawierała informacje o typie każdego miejsca, co ułatwia wybranie odpowiedniego miejsca z wyników.
Wykluczanie typu miejsca z wyszukiwania
Poniższy przykład przedstawia żądanie Wyszukiwania w pobliżu (New) dotyczące wszystkich miejsc typu "school", z wyłączeniem wszystkich miejsc typu "primary_school", z sortowaniem wyników według odległości:
curl -X POST -d '{
"includedTypes": ["school"],
"excludedTypes": ["primary_school"],
"maxResultCount": 10,
"locationRestriction": {
"circle": {
"center": {
"latitude": 37.7937,
"longitude": -122.3965
},
"radius": 1000.0
}
},
"rankPreference": "DISTANCE"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName" \
https://places.googleapis.com/v1/places:searchNearby
Wyszukiwanie wszystkich miejsc w pobliżu obszaru z sortowaniem według odległości
Poniższy przykład przedstawia żądanie Wyszukiwania w pobliżu (New) dotyczące Miejsc w pobliżu punktu w centrum San Francisco. W tym przykładzie dodajemy parametr rankPreference, aby sortować wyniki według odległości:
curl -X POST -d '{
"maxResultCount": 10,
"rankPreference": "DISTANCE",
"locationRestriction": {
"circle": {
"center": {
"latitude": 37.7937,
"longitude": -122.3965
},
"radius": 1000.0
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName" \
https://places.googleapis.com/v1/places:searchNearby
Pobieranie deskryptorów adresu
Deskryptory adresu zawierają informacje o relacjach między lokalizacją miejsca a pobliskimi punktami orientacyjnymi i obszarami.
Poniższy przykład przedstawia żądanie Wyszukiwania w pobliżu (New) dotyczące miejsc w pobliżu centrum handlowego w San Jose. W tym przykładzie dodajemy addressDescriptors
do maski pola:
curl -X POST -d '{
"maxResultCount": 5,
"locationRestriction": {
"circle": {
"center": {
"latitude": 37.321328,
"longitude": -121.946275
},"radius": 1000
}
},
"includedTypes": ["restaurant", "cafe"],
"excludedTypes": [],
"rankPreference":"POPULARITY"
}' \
-H 'Content-Type: application/json' \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.displayName,places.addressDescriptor" \
https://places.googleapis.com/v1/places:searchNearby
Odpowiedź zawiera miejsce określone w żądaniu, listę pobliskich punktów orientacyjnych i ich odległość od miejsca oraz listę obszarów i ich relację do miejsca:
{ "places": [ { "displayName": { "text": "Westfield Valley Fair", "languageCode": "en" }, "addressDescriptor": { "landmarks": [ { "name": "places/ChIJ62_oCR7Lj4AR_MGWkSPotD4", "placeId": "ChIJ62_oCR7Lj4AR_MGWkSPotD4", "displayName": { "text": "Nordstrom", "languageCode": "en" }, "types": [ "clothing_store", "department_store", "establishment", "point_of_interest", "shoe_store", "store" ], "straightLineDistanceMeters": 114.76984, "travelDistanceMeters": 114.261856 }, { "name": "places/ChIJgexMlR_Lj4ARiKCKuhNnjn0", "placeId": "ChIJgexMlR_Lj4ARiKCKuhNnjn0", "displayName": { "text": "Valley Fair Mall Eyexam of CA", "languageCode": "en" }, "types": [ "establishment", "health", "point_of_interest" ], "straightLineDistanceMeters": 131.62566, "travelDistanceMeters": 237.33253 }, { "name": "places/ChIJWWIlNx7Lj4ARpe1E0ob-_GI", "placeId": "ChIJWWIlNx7Lj4ARpe1E0ob-_GI", "displayName": { "text": "Din Tai Fung", "languageCode": "en" }, "types": [ "establishment", "food", "point_of_interest", "restaurant" ], "straightLineDistanceMeters": 110.0775, "travelDistanceMeters": 171.41951 }, { "name": "places/ChIJwyfPQx7Lj4AR7bYI2A2Yc54", "placeId": "ChIJwyfPQx7Lj4AR7bYI2A2Yc54", "displayName": { "text": "Abercrombie & Fitch", "languageCode": "en" }, "types": [ "clothing_store", "establishment", "point_of_interest", "shoe_store", "store" ], "spatialRelationship": "DOWN_THE_ROAD", "straightLineDistanceMeters": 53.620117, "travelDistanceMeters": 2.4578214 }, { "name": "places/ChIJpycNQx7Lj4ARjhXw3PrM_kU", "placeId": "ChIJpycNQx7Lj4ARjhXw3PrM_kU", "displayName": { "text": "Hollister Co.", "languageCode": "en" }, "types": [ "clothing_store", "establishment", "point_of_interest", "shoe_store", "store" ], "spatialRelationship": "DOWN_THE_ROAD", "straightLineDistanceMeters": 56.53726, "travelDistanceMeters": 15.418246 } ], "areas": [ { "name": "places/ChIJb3F-EB7Lj4ARnHApQ_Hu1gI", "placeId": "ChIJb3F-EB7Lj4ARnHApQ_Hu1gI", "displayName": { "text": "Westfield Valley Fair", "languageCode": "en" }, "containment": "WITHIN" }, { "name": "places/ChIJXYuykB_Lj4AR1Ot8nU5q26Q", "placeId": "ChIJXYuykB_Lj4AR1Ot8nU5q26Q", "displayName": { "text": "Valley Fair", "languageCode": "en" }, "containment": "WITHIN" }, { "name": "places/ChIJtYoUX2DLj4ARKoKOb1G0CpM", "placeId": "ChIJtYoUX2DLj4ARKoKOb1G0CpM", "displayName": { "text": "Central San Jose", "languageCode": "en" }, "containment": "OUTSKIRTS" } ] } }, /.../ }
Znajdowanie firm, które zostaną otwarte w przyszłości
Poniższy przykład przedstawia żądanie Wyszukiwania w pobliżu (New) dotyczące firm, które zostaną otwarte w przyszłości w New Meadows w stanie Idaho:
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.businessStatus,places.openingDate" \
-d '{
"includeFutureOpeningBusinesses": true,
"maxResultCount": 20,
"locationRestriction": {
"circle": {
"center": {"latitude": 44.9755100, "longitude": -116.2842180},
"radius": 20
}
},
"rankPreference": "DISTANCE"
}' \
"https://places.googleapis.com/v1/places:searchNearby"
Odpowiedź zawiera firmy, które zostaną otwarte w przyszłości, wraz z ich stanem firmy i przewidywaną datą otwarcia:
{ "places": [ { "id": "ChIJp1-VoKWJplQRMz8g-7Wa3Do", "businessStatus": "FUTURE_OPENING", "displayName": { "text": "Roberts Greenhouse and Tree Farm", "languageCode": "en" }, "openingDate": { "year": 2026, "month": 4, "day": 15 } } ] }
Pobieranie informacji o stacjach transportu publicznego
Za pomocą Wyszukiwania w pobliżu (New) możesz uzyskać informacje o stacjach transportu publicznego w określonym promieniu od danej lokalizacji. Treść odpowiedzi zawiera informacje o stacji, w tym jej nazwę, powiązane z nią agencje transportu publicznego i linie transportu publicznego obsługujące stację. Dodatkowo odpowiedź zawiera ikonę pojazdu i kolory, których możesz użyć do wyświetlania informacji o stacji transportu publicznego.
Poniższy przykład przedstawia żądanie dotyczące stacji transportu publicznego w promieniu 50 metrów od centrum Manhattanu:
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.transitStation" \
-d '{
"includedTypes": ["transit_station"],
"locationRestriction": {
"circle": {
"center": {"latitude": 40.754851, "longitude": -73.984164},
"radius": 50.0
}
}
}' \
"https://places.googleapis.com/v1/places:searchNearby"
Treść odpowiedzi zawiera informacje o każdej stacji w promieniu, liniach obsługiwanych przez stację , alertach wydanych przez agencje transportu publicznego na tym przystanku oraz informacje o odjazdach:
{ "places": [ { "id": "ChIJH2EstKpZwokRCwZtYyMd5Fg", "displayName": { "text": "6 Av/W 41 St", "languageCode": "en" }, "transitStation": { "displayName": { "text": "6 Av/W 41 St", "languageCode": "en" }, "agencies": [ { "displayName": { "text": "ShortLine Hudson", "languageCode": "en" }, "url": "https://www.coachusa.com/", "lines": [ { "id": "ChIJSQlbzvPwwokRolrIA-Kuh6o", "vehicleType": "BUS", "displayName": { "text": "200 - Northern District – Nanuet", "languageCode": "en" }, "shortDisplayName": { "text": "ShortLine Hudson", "languageCode": "en" }, "textColor": "#000000", "backgroundColor": "#ED60A3", "vehicleIcon": { "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/bus2.svg" } } ] }, { "displayName": { "text": "MTA New York City Transit", "languageCode": "en" }, "url": "http://www.mta.info/", "lines": [ { "id": "ChIJjUrj7PBewokR3O3S2JVpBrI", "vehicleType": "SUBWAY", "displayName": { "text": "E Train (8 Av Local)", "languageCode": "en" }, "shortDisplayName": { "text": "E Line", "languageCode": "en" }, "textColor": "#FFFFFF", "backgroundColor": "#0039A6", "url": "https://www.mta.info/schedules/subway/e-train", "icon": { "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/us-ny-mta/E.svg", "nameIncluded": true }, "vehicleIcon": { "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/subway2.svg" } }, ... ] }, "stops": [ { "id": "ChIJvRnquapZwokRdUOyVwNGbe8", "displayName": { "text": "6 Av/W 41 St", "languageCode": "en" }, "location": { "latitude": 40.754509, "longitude": -73.984216500000016 }, "wheelchairAccessibleEntrance": true } ], "departureBoards": [ { "displayType": "DIRECTION_CENTRIC", "rows": [ { "departures": [ { "timedDeparture": { "scheduledTime": "2026-05-15T22:29:51Z", "timingType": "SCHEDULED" }, "originallyScheduledStopId": "ChIJvRnquapZwokRdUOyVwNGbe8", "lineId": "ChIJA1aFyaZfwokRkO5869M6UXk" } ] }, { "departures": [ { "timedDeparture": { "scheduledTime": "2026-05-15T22:33:55Z", "timingType": "SCHEDULED" }, "originallyScheduledStopId": "ChIJvRnquapZwokRdUOyVwNGbe8", "lineId": "ChIJj3iCEwJfwokRZE2Qtnm4pPI" } ] }, ... ] } ] } }, ... { { "id": "ChIJPyq6TZBZwokRdGoiJ5Iq_hE", "vehicleType": "BUS", "displayName": { "text": "W 44 St - South Ferry", "languageCode": "en" }, "shortDisplayName": { "text": "M55", "languageCode": "en" }, "textColor": "#FFFFFF", "backgroundColor": "#1D59B3", "vehicleIcon": { "url": "https://maps.gstatic.com/mapfiles/transit/iw2/svg/bus2.svg" }, "alerts": [ { "effect": "OTHER", "texts": [ { "headline": { "text": "Information", "languageCode": "en" }, "summary": { "text": "Northbound M20 and M55 stop on State St at Bridge St is closed; use the temporary stop on State St before the intersection instead", "languageCode": "en" }, "fullDescription": { "text": "See a map of the new stop location. What's happening? Construction", "languageCode": "en" } } ], "detailsUrls": [ { "url": "https://www.mta.info/" } ], "cause": "OTHER_CAUSE", "startTime": "2025-04-02T04:00:00Z", "endTime": "2026-06-15T00:00:00Z", "attribution": { "link": { "text": "www.mta.info", "url": "https://www.mta.info/" } }, "createTime": "2026-05-15T22:32:00Z", "severityLevel": "INFO" } ] }, ... } ... }
Pobieranie wejść i punktów nawigacyjnych
Możesz poprosić o wejścia i punkty nawigacyjne do miejsca docelowego. Wejścia określają punkty wejścia i wyjścia z miejsca (np. różne bramy na lotnisku lub w centrum handlowym). Punkty nawigacyjne określają lokalizacje przy drodze, w których powinna się kończyć nawigacja. Jest to przydatne do kierowania użytkowników na właściwą stronę drogi lub do konkretnego punktu wysiadania.
Punkty nawigacyjne zwracają navigationPointToken. Możesz przekazać ten token do pakietu Navigation SDK (dostępnego na Android lub iOS) albo do interfejsu Routes API, aby kierować kierowców do tej konkretnej lokalizacji. Więcej informacji znajdziesz w artykule Tokeny punktów nawigacyjnych.
Poniższy przykład przedstawia żądanie Nearby Search (New), które zawiera entrances i navigationPoints w masce pola:
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: places.id,places.displayName,places.entrances,places.navigationPoints" \
-d '{
"includedTypes": ["airport"],
"maxResultCount": 1,
"locationRestriction": {
"circle": {
"center": {"latitude": 37.6193, "longitude": -122.3816},
"radius": 1000.0
}
}
}' \
"https://places.googleapis.com/v1/places:searchNearby"
Odpowiedź zawiera wejścia i punkty nawigacyjne dla miejsca:
{ "places": [ { "id": "ChIJVVVVVYx3j4ARP-3NGldc8qQ", "displayName": { "text": "San Francisco International Airport", "languageCode": "en" }, "entrances": [ { "location": { "latitude": 37.6172154, "longitude": -122.3839724 } }, { "location": { "latitude": 37.6174073, "longitude": -122.384196 } }, ... ], "navigationPoints": [ { "navigationPointToken": "ChIJoioBjMLOQkAR0A3yH_eYXsA...", "displayName": { "text": "International Terminal Departures Level", "languageCode": "en" }, "location": { "latitude": 37.6153121, "longitude": -122.3900833 }, "travelModes": ["WALK"] }, { "navigationPointToken": "ChIJy5JKws_OQkAROx0jNN2YXsA...", "displayName": { "text": "Domestic Garage - SFO Short Term Parking", "languageCode": "en" }, "location": { "latitude": 37.6157153, "longitude": -122.3885012 }, "travelModes": ["DRIVE", "WALK"], "usages": ["PARKING"] }, ... ] } ] }
Wypróbuj
Narzędzie APIs Explorer umożliwia wysyłanie przykładowych żądań, dzięki czemu możesz zapoznać się z interfejsem API i jego opcjami.
Po prawej stronie kliknij ikonę interfejsu API api.
Opcjonalnie edytuj parametry żądania.
Kliknij przycisk Wykonaj. W oknie dialogowym wybierz konto, którego chcesz użyć do wysłania żądania.
W panelu APIs Explorer kliknij ikonę pełnego ekranu fullscreen, aby rozwinąć okno APIs Explorer.