0
Отвечен

О работе метода FindAddress

Алексей 3 года назад обновлен Арина Пушкина 3 года назад 5

Добрый день.
Пишем на языке C# (Dadata.dll).
Суть задачи: нужно передать с сайта в ERP систему адрес (одноразово, прямо в момент заказа).
Решили сделать так:
1. На сайте из строки адреса получаем его структуру.
2. Берем из структуры два кода адреса (kladr_id и fias_id)
3. на стороне ERP берем эти коды (2) и ищем адрес по коду методом https://dadata.ru/api/find-address/ 
И вот что обнаружили, по fias_id (если он есть) адрес находится, в вот  kladr_id поиск ни когда не возвращает результатов.
Примеры поиска:
2200000100001660049  и  e63427cd-bf63-4a60-8e74-2d832fb9366e
2900600005400070007  и  81a0833e-a86f-472f-aa9e-ea8d0419fa97
В документации (https://dadata.ru/api/find-address/ ) сказано, что сервис ищет по любому из этих кодов.
Подскажите, пожалуйста, в чем ошибка?

справочник: адреса

Ответ

Ответ
На рассмотрении

Добрый день! Метод Адрес по коду КЛАДР или ФИАС ищет по КЛАДР-коду только до улицы. У домов нет постоянных КЛАДР-кодов, поэтому использовать их вовсе не стоит. В целом, лучше всегда использовать ФИАС-код вместо КЛАДР, даже для улиц и выше.

ХОРОШО, МНЕ ПОНРАВИЛОСЬ

Исчерпывающий ответ.

Оценка удовлетворенности от Алексей 3 года назад
Ответ
На рассмотрении

Добрый день! Метод Адрес по коду КЛАДР или ФИАС ищет по КЛАДР-коду только до улицы. У домов нет постоянных КЛАДР-кодов, поэтому использовать их вовсе не стоит. В целом, лучше всегда использовать ФИАС-код вместо КЛАДР, даже для улиц и выше.

Хм...
Но в ФИАС есть далеко не все адреса.
КЛАДР куда полнее.
Или я ошибаюсь и база ФИАС за последнее время стала более пригодной?
И вот еще вопрос, есть отдельный метод для поиска по ФИАС - Адрес в ФИАС по идентификатору (dadata.ru). Если будем искать именно по коду ФИАС, то лучше использовать его?

Актуальная база — ФИАС. Использовать лучше основной метод — https://dadata.ru/api/find-address/

Добрый день.
Спасибо!

Отвечен

Пожалуйста! Будут вопросы — пишите.

Сервис поддержки клиентов работает на платформе UserEcho