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

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

Введение

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

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

В таблице ниже перечислены параметры Nearby Search (Legacy), которые были переименованы или изменены в Nearby Search (New), а также параметры, которые больше не поддерживаются.

Текущий параметр Новые параметры Примечания
keyword Не поддерживается. Вместо него используйте текстовый поиск (New).
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'

В новом Nearby Search вы отправляете запрос 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