Миграция

Переход с LocationIQ

LocationIQ делает ставку на открытые географические данные и простую аутентификацию по ключу, передаваемому как параметр запроса, а его JSON-ответы содержат lat, lon, display_name и объект address, разбитый на поля, знакомые всем, кто работал с данными на основе OpenStreetMap напрямую. Эта узнаваемость не случайна: провайдеры, построенные на открытых источниках данных, обычно приходят к похожим названиям полей, и это полезно знать, если вы сравниваете сразу несколько из них.

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

Совместимый хост My Geocode для LocationIQ в точности воспроизводит поля lat, lon, display_name и компоненты адреса, и от оригинала отличаются только тексты об авторских правах, условиях и конфиденциальности. Справочные сведения находятся по адресу /compatibility/locationiq/. Коду приложения, который читает response.display_name или перебирает поля response.address, не должно понадобиться никаких изменений, кроме имени хоста и ключа.

Короткий чек-лист именно для этого перехода:

  • Уточните, какой способ аутентификации сейчас использует ваша клиентская библиотека (LocationIQ обычно принимает параметр запроса), и сопоставьте его с четырьмя поддерживаемыми здесь вариантами: заголовок X-API-Key, Authorization: Bearer, HTTP Basic auth или параметр запроса
  • Проверьте, вызывает ли ваша интеграция также эндпоинт обратного геокодирования, поскольку форма запроса там отличается от прямого геокодирования и его стоит протестировать отдельно
  • Пересмотрите весь код обработки лимита запросов, написанный специально под заголовки ответов LocationIQ, поскольку названия заголовков у разных провайдеров различаются, а ваша логика повторных попыток может ссылаться на них по имени

По ценам сравнение довольно прямое: 2 500 запросов в день вообще без ключа и ещё 2 500 бесплатных на каждый ключ в день с учётом по сети, будь то IPv4 (по /24) или IPv6 (по /48). После бесплатной квоты действует предоплаченный баланс по 0,0001 € за запрос или ключ Unlimited за 50 € в месяц, и каждый эндпоинт стоит одинаково, без отдельного тарифа для объёмов геокодирования по сравнению с другими запросами.

Если ваше использование LocationIQ естественным образом выросло из побочного проекта во что-то, на что полагаются люди, совместимый хост как раз и предназначен для того, чтобы сделать такую миграцию скучной в лучшем смысле слова: поменять имя хоста, поменять ключ и продолжать выпускать релизы. Коду разбора ответов, на отладку которого в первый раз ушло время, не нужен второй заход только потому, что сменился провайдер. Полная информация о квоте, включая использование по сети, приходит в стандартных заголовках ответа, описанных в разделе /docs/rate-limits/.