Перенос автоматизации Zapier или Make на новый хост геокодирования
No-code автоматизации с шагом геокодирования требуют иного подхода к миграции, чем собственный код. Вот как провести такой переход.
HERE Geocoding and Search часто встречается в автомобильном и логистическом программном обеспечении, в отраслях, где корпоративный аккаунт с персональным контактным лицом и договором поддержки считается обычным способом ведения дел. Аутентификация обычно выполняется с помощью API-ключа или токена OAuth, а ответы возвращаются в виде массива items, где каждый элемент содержит объект position и структурированный блок address с полями вроде label, countryCode и houseNumber.
В компаниях, которые на неё опираются, эта структура обычно хорошо задокументирована внутри, потому что HERE часто выбирают именно за качество разбора адресов в определённом регионе или за интеграцию с маршрутизацией в другой части стека. Миграция, которая ломает формат ответа, ломает весь этот зависимый код сразу, поэтому совместимость здесь важнее, чем затраты на смену самого аккаунта.
Совместимый хост HERE в My Geocode воспроизводит массив items и вложенные в него поля position и address точно так, как их возвращает HERE, заменяя только текст об авторских правах, условиях и конфиденциальности. Справочник полей на странице /compatibility/here/. В большинстве случаев в коде приложения нужно изменить имя хоста и ключ, и ничего в коде, который читает items[0].position или items[0].address.label.
У корпоративных команд, уходящих с HERE, геокодирование часто подключено сразу в нескольких сервисах, а не в одном, поэтому полезно сначала составить перечень всех мест вызова: пакетные задания, формы проверки адресов, маршрутизация доставки и любые административные инструменты обычно обращаются к одному и тому же API независимо друг от друга. Переводить их по одному сервису за раз, начиная с чего-то с небольшим трафиком, будет разумным способом проверить новый хост в реальных условиях, прежде чем переключатся вызовы с наибольшим объёмом.
Что касается аутентификации, ключ, выданный My Geocode, можно передать в заголовке X-API-Key, в заголовке Authorization: Bearer, через HTTP Basic auth или в параметре запроса. Если ваша текущая клиентская библиотека HERE уже аутентифицируется одним определённым способом, обычно достаточно направить её на новый хост с новым ключом, поскольку саму библиотеку менять не нужно.
Цены избавляют от того уровня переговоров, который часто сопровождает корпоративные контракты. Многоуровневой структуры аккаунтов нет: 2 500 запросов в день бесплатны без ключа, каждый ключ добавляет ещё 2 500 бесплатных запросов в день с учётом по сети, а сверх этого действует предоплаченный баланс по 0,0001 € за запрос или ключ Unlimited за 50 € в месяц. Все эндпоинты, включая этот совместимый хост, стоят одинаково, поэтому не нужно отдельно договариваться об объёме геокодирования и об объёме поиска или автоподсказок.
Если часть вашего использования HERE приходится на автоподсказки, а не на обычное геокодирование, это стоит сделать отдельным шагом миграции, поскольку у эндпоинтов типа автодополнения свой формат ответа и схема запросов, зависящая от неполного ввода, и они заслуживают отдельного тестирования, а не включения в переключение геокодирования. Расход квоты по каждому запросу, в том числе на совместимом хосте, виден в заголовках ответа вроде X-Quota-Used и X-Credits-Remaining, описанных на странице /docs/rate-limits/.