Как перейти на новый инструмент "Поиск поблизости"

Разработчики из Европейской экономической зоны (ЕЭЗ)

Введение

Places API поддерживает поиск поблизости (прежняя версия). Если вы знакомы с устаревшим поиском поблизости, то в новом поиске поблизости вы заметите следующие изменения:

  • Nearby Search (New) использует HTTP-запросы POST. Передавайте параметры в теле запроса или в заголовках в составе HTTP-запроса POST. В отличие от этого, в Nearby Search (Legacy) параметры URL передаются с помощью HTTP-запроса GET.
  • Необходимо использовать маску поля. В ответе должны быть указаны поля, которые вы хотите получить. Список возвращаемых полей по умолчанию отсутствует. Если вы не укажете этот список, методы вернут ошибку. Подробнее FieldMask…
  • Новый метод поиска поблизости поддерживает в качестве механизма аутентификации как ключи API, так и токены OAuth.
  • В новом поиске поблизости поддерживается только формат JSON.
  • Во всех запросах, содержащих текстовый запрос, теперь следует использовать новый текстовый поиск, поскольку новый поиск поблизости не поддерживает ввод текста.
  • Формат ответа JSON для поиска поблизости (New) отличается от формата устаревших API. Подробнее о том, как перенести ответ Places API…

В таблице ниже перечислены параметры устаревшего поиска поблизости, которые были переименованы или изменены в новом поиске поблизости, а также параметры, которые больше не поддерживаются.

Текущий параметр Новые параметры Примечания
keyword Не поддерживается. Используйте вместо него новую версию текстового поиска.
language languageCode
location locationRestriction Обязательно.
maxprice/minprice Не поддерживается.
maxResultCount Новый параметр.
opennow Не поддерживается.
pagetoken Не поддерживается.
radius Используйте locationRestriction сейчас.
rankby rankPreference
regionCode Новый параметр.
type includedTypes
excludedTypes
includedPrimaryTypes
excludedPrimaryTypes
Новые параметры также принимают несколько значений типа. Устаревший API принимает только одно значение.

Пример запроса

В приведенном ниже примере GET-запроса используется устаревший сервис поиска поблизости. В этом примере вы запрашиваете ответ в формате JSON, содержащий информацию о местах типа restaurant, и передаете все параметры в виде параметров URL:

curl -L -X GET \
'https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=37.7937%2C-122.3965&radius=500&type=restaurant&key=API_KEY'

В новом поиске поблизости вы создаете запрос POST и передаете все параметры в теле запроса JSON или в заголовках в составе запроса POST. В этом примере также используется маска поля, поэтому ответ содержит только отображаемое название и отформатированный адрес места:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "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" \
https://places.googleapis.com/v1/places:searchNearby