Новости

Новый пакетный эндпоинт для списков адресов

Обработка списка адресов по одному, HTTP-вызов за HTTP-вызовом, подходит для небольших объёмов, но быстро становится утомительной при любом реальном масштабе. Теперь мы поддерживаем отправку всего списка адресов одним пакетным вызовом, что сокращает число обращений к серверу при обработке большого списка и никак не меняет цены.

Правило учёта здесь точно такое же, как и везде на платформе: каждый адрес внутри пакетного вызова считается одним запросом, а не весь вызов целиком. Отправьте список из пятисот адресов одним пакетным вызовом, и он израсходует пятьсот запросов в рамках той квоты, которая применяется, будь то бесплатная дневная квота, предоплаченный баланс по 0,0001 € за запрос или покрытие пакетом Unlimited. Нет ни скидки, ни штрафа за объединение работы в один вызов вместо множества небольших.

Заголовки квоты тоже точно отражают пакетный вызов. X-Quota-Used, X-Quota-Free-Remaining и X-Credits-Remaining изменяются на число адресов, фактически обработанных в вызове, поэтому крупный пакетный запрос обновляет видимую квоту так же, как пятьсот отдельных вызовов, только за одно обращение к серверу вместо пятисот.

Это рассчитано именно на те задачи, для которых раньше приходилось писать цикл вокруг вызовов с одним адресом: импорт списка клиентов, который нужно геокодировать, очистку базы адресов или подготовку крупного пакетного задания, которое запускается по расписанию, а не в ответ на действие одного пользователя. Отправка такого списка одним пакетным вызовом снижает накладные расходы на управление множеством отдельных HTTP-соединений, что особенно полезно для заданий, работающих на инфраструктуре со своими ограничениями на соединения или частоту запросов помимо наших.

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

Полная документация по отправке пакетных запросов, включая формат запроса, доступна на страницах /docs/forward-geocoding/ и /docs/reverse-geocoding/. Если ваш процесс сейчас перебирает вызовы с одним адресом в цикле, на это стоит обратить внимание для всего, что обрабатывает больше нескольких адресов за раз.