API: отделения Почты России
Если интернет-магазин доставляет покупки почтой по России, хорошо бы подсказать человеку, где и когда он может забрать посылку. В этом поможет справочник почтовых отделений — в нём есть точный адрес, координаты и часы работы отделения, а ещё отметка, если оно временно закрыто.
«Дадата» помогает найти точное отделение по индексу или ближайшее — по координатам.
Чтобы вызвать метод, и подтвердите почту.
Полнотекстовый поиск (suggest
)
Пример запроса:
POST http://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/postal_unit{ "query": "дежнева 2а" }
Поиск работает по полям:
postal_code
address_str
Укажите при вызове:
Content-Type: application/json
.Accept: application/json
.${API_KEY}
— API-ключ.
Тело запроса передавайте в кодировке UTF-8
.
Запись справочника по идентификатору (findById
)
Пример запроса:
POST http://suggestions.dadata.ru/suggestions/api/4_1/rs/findById/postal_unit{ "query": "127642" }
Выборка по идентификатору работает по полям:
postal_code
Укажите при вызове:
Content-Type: application/json
.Accept: application/json
.${API_KEY}
— API-ключ.
Тело запроса передавайте в кодировке UTF-8
.
Поиск ближайшего по координатам (geolocate
)
Пример запроса:
curl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "Authorization: Token ${API_KEY}" \ -d '{ "lat": 55.878, "lon": 37.653, "radius_meters": 1000 }' \ http://suggestions.dadata.ru/suggestions/api/4_1/rs/geolocate/postal_unit
Укажите при вызове:
Content-Type: application/json
.Accept: application/json
.${API_KEY}
— API-ключ.
Тело запроса передавайте в кодировке UTF-8
.
Фильтрация
Фильтрация работает по полям is_closed
, type_code
и address_kladr_id
.
Фильтрация по address_kladr_id
позволяет выбрать отделения из указанного города:
{ "query": "Молодогвардейская", "filters": [ { "address_kladr_id": "6300000100000" } ] }
Фильтрация по is_closed
позволяет отсеять закрытые отделения:
{ "query": "105", "filters": [ { "is_closed": false } ] }
Поля справочника
Название | Описание |
---|---|
value | Значение одной строкой (как показывается в списке подсказок) |
unrestricted_value | Адрес отделения одной строкой |
data.postal_code | Почтовый индекс |
data.is_closed | true , если отделение закрыто, иначе false |
data.type_code | Тип отделения |
data.address_str | Адрес одной строкой |
data.address_kladr_id | КЛАДР-код населённого пункта |
data.address_qc | Код проверки адреса |
data.geo_lat | Широта |
data.geo_lon | Долгота |
data.schedule_mon | Режим работы в понедельник |
data.schedule_tue | Режим работы во вторник |
data.schedule_wed | Режим работы в среду |
data.schedule_thu | Режим работы в четверг |
data.schedule_fri | Режим работы в пятницу |
data.schedule_sat | Режим работы в субботу |
data.schedule_sun | Режим работы в воскресенье |
Источник данных: Почта России
Ограничения
Длина запроса (параметр query
) — не более 300 символов.
Количество запросов в день — в соответствии с тарифным планом.
Максимальная частота запросов — 30 в секунду с одного IP-адреса.
Максимальная частота создания новых соединений — 60 в минуту с одного IP-адреса.
Стоимость
Бесплатно до 10 тысяч запросов в день. Больше — в составе годовой подписки.