API автодополнения адресов
Подсказывайте адреса, улицы, города и места, пока пользователь печатает. Каждая подсказка содержит собственные координаты и точность, поэтому, когда пользователь выбирает одну из них, у вас уже есть всё необходимое. Никаких токенов сессии, никакого отдельного вызова за подробностями, никакой оплаты за сессию.
Пример
$ curl -H "X-API-Key: YOUR_KEY" "https://api.mygeocode.com/v1/autocomplete?q=10+Downing&country=gb&limit=3"Ответы оптимизированы для ввода: они приходят за несколько десятков миллисекунд и допускают пропущенные буквы и переставленные слова. Передайте proximity=lat,lon, чтобы ближайшие места ранжировались первыми, что очень важно для названий улиц, которые есть во многих городах.
Задайте debounce для нажатий клавиш примерно 150 мс. На выбор типичного адреса уходит от 4 до 6 запросов.
{
"status": "ok",
"query": "10 Downing",
"suggestions": [
{
"text": "10 Downing Street, London SW1A 2AA, United Kingdom",
"lat": 51.503396,
"lon": -0.12764,
"type": "address",
"precision": "house",
"place_id": "gb.addr.7f3c2a19"
},
{
"text": "10 Downing Place, Cambridge CB2 3EN, United Kingdom",
"lat": 52.203042,
"lon": 0.121811,
"type": "address",
"precision": "house",
"place_id": "gb.addr.a01d9e44"
},
{
"text": "10 Downing Road, Dagenham RM9 6NP, United Kingdom",
"lat": 51.536118,
"lon": 0.137204,
"type": "address",
"precision": "house",
"place_id": "gb.addr.c58b7e02"
}
]
}Что вы получаете
| Поле | Значение |
|---|---|
text | Подсказка в том виде, в каком её следует показывать, одной строкой. |
lat, lon | Координаты подсказки. Есть в каждой подсказке. |
type | address, street, postcode, city, region, country или poi. |
precision | Те же четыре значения, что и при геокодировании. |
place_id | Стабильный идентификатор. Передайте его в /v1/forward?place_id=..., если вам нужны полные компоненты и границы выбранной подсказки. |
Где это используется
Формы адреса при оформлении заказа
Одно поле вместо шести. По place_id выбранной подсказки загружаются компоненты для заполнения остальной формы.
Поля поиска на картах
Передавайте центр карты как proximity, чтобы «Ленина» означала ту улицу, что на экране.
Замена Places Autocomplete
Совместимая замена Google Maps JavaScript предоставляет google.maps.places.Autocomplete на основе этого эндпоинта, без оплаты за сессии.
Цена и лимиты
Каждый вызов это один запрос. Нет оплаты за сессию и нет отдельной платы за выбор подсказки. У каждого ключа 2 500 бесплатных запросов в день; сверх этого 0,0001 € за каждый с предоплаченного баланса или ничего на ключе Unlimited (50 € в месяц). Цены.