Переход на новую версию Autocomplete

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

Введение

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

  • Новый сервис автозаполнения использует HTTP-запросы POST. Передавайте параметры в теле запроса или в заголовках в составе HTTP-запроса POST. В отличие от устаревших API, в новом API параметры URL передаются с помощью HTTP-запроса GET.
  • Новая версия API автозаполнения поддерживает в качестве механизма аутентификации как ключи API, так и токены OAuth.
  • В Autocomplete (New) в качестве формата ответа поддерживается только JSON.

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

Текущий параметр Новые параметры Примечания
components includedRegionCodes
language languageCode
location locationBias
ipbias Если вы не укажете ни locationBias, ни locationRestriction, API по умолчанию будет использовать смещение на основе IP-адреса.
offset inputOffset
radius locationBias или locationRestriction
region regionCode
stricbounds locationRestriction
sessiontoken sessionToken
types includedPrimaryTypes

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

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

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=amoeba&types=establishment&location=37.76999%2C-122.44696&radius=500&key=YOUR_API_KEY'

В новом сервисе автозаполнения вы отправляете запрос POST и передаете все параметры в теле запроса JSON или в заголовках как часть запроса POST.

Маски полей не требуются для запросов Autocomplete (New), но их можно использовать, чтобы отфильтровать определенные результаты в ответе. Например, в следующем запросе используется маска поля, поэтому ответ содержит только suggestions.placePrediction.text предложенного варианта:

curl -X POST -d '{
  "input": "Amoeba",
  "locationBias": {
    "circle": {
      "center": {
        "latitude": 37.76999,
        "longitude": -122.44696
      },
      "radius": 500.0
    }
  }
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: suggestions.placePrediction.text' \
https://places.googleapis.com/v1/places:autocomplete

Подробнее о том, как использовать маски полей, рассказывается в статье Информация о местах (новый продукт).