Download the PHP package esitchikhin/laravel-dadata without Composer
On this page you can find all versions of the php package esitchikhin/laravel-dadata. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download esitchikhin/laravel-dadata
More information about esitchikhin/laravel-dadata
Files in esitchikhin/laravel-dadata
Package laravel-dadata
Short Description Laravel SDK for working with the DaData.RU service API
License MIT
Informations about the package laravel-dadata
DaData Laravel SDK Package
Данный пакет является кописей пакета movemoveapp/laravel-dadata
с исправлением бага полуения организации по ИНН (который в оригинальном пакете лежит пулл-реквестомс июля 2021 года)
DaData Laravel Package - PHP SDK Laravel пакет для взаимодействия с API DaData.ru от MoveMoveApp
Требования
- Версии PHP: 7.3, 7.4, 8.0, 8.1
- Версии Laravel: 7.x, 8.x, 9.x
- Версии Guzzle": 7.0, 7.2
Установка
Вы можете установить пакет через composer:
Если вы используете версию Laravel ниже 5.5, то зарегистрируйте DaDataServiceProvider
вручную, добавив в config/app.php
в массиве providers
:
Публикация конфигурационного файла. Выполните artisan
команду
Настройка проекта осществляется через .env
вашего проекта. Вам необходимо указать три параметра
DADATA_TOKEN
- token для раоты с API DaDataDADATA_SECRET
- secret для работы с API DaDataDADATA_TIMEOUT
- максимальное время ожидания ответа от API сервисов DaData в секундах. По умолчанию это значение равно 10 секунд.
Пример .env
Методы
- Работа с адресами
- Стандартизация адреса
- Подсказки по адресам
- Определение адреса по координатам
- Определение адреса по IP
- Определение адреса по КЛАДР или ФИАС коду
- Определение ближайшего отделения Почты России по адресу
- Определение отделения Почты России почтовому индексу
- Определение отделения Почты России по координатам
- Определение идентификатора города в СДЭК, Boxberry и DPD
- Адрес в ФИАС по идентификатору
- Работа с именами
- Работа с электорнными (email) адресами
- Работа с телефонными номерами
- Работа с компаниями
- Работа с банками
- Работа с паспортами
Работа с адресами
Стандартизация адреса
DaDataAddress::standardization(string $address)
- разбивает адрес из строки по отдельным полям (регион, город, улица, дом, квартира) согласно КЛАДР/ФИАС. Определяет почтовый индекс, часовой пояс, ближайшее метро, координаты, стоимость квартиры и другую информацию об адресе.
Основные кейсы:
- Разбивает адрес по отдельным полям (регион, город, улица, дом, квартира).
- Рассчитывает корректный индекс по данным Почты России.
- Определяет координаты.
- Показывает округ и район города, ближайшее метро, площадь и стоимость квартиры.
- Достает коды КЛАДР, ФИАС, ОКАТО, ОКТМО и ИФНС.
Пример вызова
Пример ответа
Описани ответа
Название | Длина | Описание |
---|---|---|
source |
250 | Исходный адрес одной строкой |
result |
500 | Стандартизованный адрес одной строкой |
postal_code |
6 | Индекс |
country |
120 | Страна |
country_iso_code |
2 | ISO-код страны |
federal_district |
20 | Федеральный округ |
region_fias_id |
36 | ФИАС-код региона |
region_kladr_id |
19 | КЛАДР-код региона |
region_iso_code |
6 | ISO-код региона |
region_with_type |
131 | Регион с типом |
region_type |
10 | Тип региона (сокращенный) |
region_type_full |
50 | Тип региона |
region |
120 | Регион |
area_fias_id |
36 | ФИАС-код района |
area_kladr_id |
19 | КЛАДР-код района |
area_with_type |
131 | Район в регионе с типом |
area_type |
10 | Тип района в регионе (сокращенный) |
area_type_full |
50 | Тип района в регионе |
area |
120 | Район в регионе |
city_fias_id |
36 | ФИАС-код города |
city_kladr_id |
19 | КЛАДР-код города |
city_with_type |
131 | Город с типом |
city_type |
10 | Тип города (сокращенный) |
city_type_full |
50 | Тип города |
city |
120 | Город |
city_area |
120 | Административный округ (только для Москвы) |
city_district_fias_id |
36 | ФИАС-код района города (заполняется, только если район есть в ФИАС) |
city_district_kladr_id |
19 | КЛАДР-код района города (не заполняется) |
city_district_with_type |
131 | Район города с типом |
city_district_type |
10 | Тип района города (сокращенный) |
city_district_type_full |
50 | Тип района города |
city_district |
120 | Район города |
settlement_fias_id |
36 | ФИАС-код населенного пункта |
settlement_kladr_id |
19 | КЛАДР-код населенного пункта |
settlement_with_type |
131 | Населенный пункт с типом |
settlement_type |
10 | Тип населенного пункта (сокращенный) |
settlement_type_full |
50 | Тип населенного пункта |
settlement |
120 | Населенный пункт |
street_fias_id |
36 | ФИАС-код улицы |
street_kladr_id |
19 | КЛАДР-код улицы |
street_with_type |
131 | Улица с типом |
street_type |
10 | Тип улицы (сокращенный) |
street_type_full |
50 | Тип улицы |
street |
120 | Улица |
house_fias_id |
36 | ФИАС-код дома |
house_kladr_id |
19 | КЛАДР-код дома |
house_type |
10 | Тип дома (сокращенный) |
house_type_full |
50 | Тип дома |
house |
50 | Дом |
block_type |
10 | Тип корпуса/строения (сокращенный) |
block_type_full |
50 | Тип корпуса/строения |
block |
50 | Корпус/строение |
flat_type |
10 | Тип квартиры (сокращенный) |
flat_type_full |
50 | Тип квартиры |
flat |
50 | Квартира |
flat_area |
50 | Площадь квартиры |
square_meter_price |
50 | Рыночная стоимость м² |
flat_price |
50 | Рыночная стоимость квартиры |
postal_box |
50 | Абонентский ящик |
fias_id |
36 | ФИАС-код адреса (идентификатор ФИАС) |
HOUSE.HOUSEGUID — если дом найден в ФИАС |
||
ADDROBJ.AOGUID — в противном случае |
||
fias_code |
Иерархический код адреса в ФИАС (СС+РРР+ГГГ+ППП+СССС+УУУУ+ДДДД) | |
fias_level |
2 | Уровень детализации, до которого адрес найден в ФИАС |
fias_actuality_state |
Признак актуальности адреса в ФИАС | |
kladr_id |
19 | КЛАДР-код адреса |
capital_marker |
1 | Признак центра района или региона |
okato |
11 | Код ОКАТО |
oktmo |
11 | Код ОКТМО |
tax_office |
4 | Код ИФНС для физических лиц |
tax_office_legal |
4 | Код ИФНС для организаций |
timezone |
50 | Часовой пояс города для России, часовой пояс страны — для иностранных адресов. Если у страны несколько поясов, вернёт минимальный и максимальный через слеш: UTC+5/UTC+6 |
geo_lat |
12 | Координаты: широта |
geo_lon |
12 | Координаты: долгота |
beltway_hit |
8 | Внутри кольцевой? |
beltway_distance |
3 | Расстояние от кольцевой в км. Заполнено, только если beltway_hit = OUT_MKAD или OUT_KAD, иначе пустое |
qc_geo |
5 | Код точности координат |
qc_complete |
5 | Код пригодности к рассылке |
qc_house |
5 | Признак наличия дома в ФИАС |
qc |
5 | Код проверки адреса |
unparsed_parts |
250 | Нераспознанная часть адреса. Для адреса «Москва, Митинская улица, 40, вход с торца» вернет «ВХОД, С, ТОРЦА» |
metro |
Список ближайших станций метро (до трёх штук) |
Координаты есть у 97% домов в Москве, 91% в Санкт-Петербурге, 69% в других городах-миллиониках и 47% по остальной России. Площадь и стоимость есть у 70% квартир в России.
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ или секретный ключ или в запросе указан несуществующий ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Подсказки по адресам
DaDataAddress::prompt(string $query, int $count, int $language, array $locations, array $locations_geo, array $locations_boost, array $from_bound, array $to_bound)
Ищет адреса по любой части адреса от региона до дома («тверская нижний 12» → «Нижегородская обл, г Нижний Новгород, ул Тверская, д 12»). Также ищет почтовому индексу («105568» → «г Москва, ул Магнитогорская»).
Основные кейсы:
- Работает по всем странам мира (по России до дома, по остальным странам — до города). Ищет и показывает результаты как на русском языке («Самара, пр-кт Металлургов»), так и на английском («Russia, gorod Samara, prospekt Metallurgov»).
- Находит актуальные адреса по историческим названиям (Свердловск → Екатеринбург) и синонимам (Питер → Санкт-Петербург).
- Ищет по частичному совпадению («москва болот» → «г Москва, Болотная наб»), но только в последнем слове запроса («мос болот» не найдет).
- Исправляет опечатки («самара авиционная») и запросы в неправильной раскладке («vjcrdf» → «москва»). -️ Раскладывает выбранный адрес на гранулярные части (от региона до квартиры). -️ Поддерживает гранулярные подсказки по отдельным частям адреса (регионы, города, улицы, дома). -️ Подсказывает адреса в конкретных регионах, районах, городах и населенных пунктах. Понимает названия («Петергоф»), коды КЛАДР («7800000800000») и ФИАС («8f238984-812b-4bb1-850b-49749fb5c56d»). -️ Учитывает, где вы находитесь (в связке с методом город по IP-адресу).
Важно знать, что использовать данный метод не рекомендуется если вы
- Хотите автоматически, без участия человека, обработать адреса из базы или файла.
- Транслитерировать строки, например
moskva suhonskaja 11 → 127642
вг Москва, ул Сухонская, д 11
.
Подсказки не подходят для автоматической обработки адресов. Они предлагают варианты, но не гарантируют, что угадали правильно. Поэтому окончательное решение всегда должен принимать человек.
Для автоматической обработки и транслитерации используйте DaDataAddress::standardization(string $address)
метод.
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
query |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Колличество результатов. Максимум 20 |
language |
int |
true |
1 | Язык ответа. Он может быть русский значение language = 1 или английским, значение language = 2 . Мы призываем использовать константы Language::RU или Language::EN |
locations |
array |
true |
[] | Ограничение по родителю (страна, регион, район, город, улица) |
locations_geo |
array |
true |
[] | Ограничение по радиусу окружности |
locations_boost |
array |
true |
[] | Приоритет города при ранжировании |
from_bound |
array |
true |
[] | Гранулярные подсказки по адресу |
to_bound |
array |
true |
[] | Гранулярные подсказки по адресу |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив данных аналагичный структуре выдачи метода DaDataAddress::standardization(string $address) |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Определение адреса по координатам
DaDataAddress::geolocate(float $lat, float $lon, int $count, int $radius_meters, int $language)
Находит ближайшие адреса (дома, улицы, города) по географическим координатам. Только для России.
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
lat |
float |
false |
Географическая широта | |
lon |
float |
false |
Географическая долгота | |
count |
int |
true |
10 | Количество результатов (максимум — 20) |
radius_meters |
int |
true |
100 | Радиус поиска в метрах (максимум – 1000) |
language |
int |
true |
1 | Язык ответа. Он может быть русский значение language = 1 или английским, значение language = 2 . Мы призываем использовать константы Language::RU или Language::EN |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив данных аналагичный структуре выдачи метода DaDataAddress::standardization(string $address) |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Определение адреса по IP
DaDataAddress::iplocate(string $ip, int $count, int $language)
определяет город по IP адресу.
Основные кейсы:
- Поддерживает как IPv4, так и IPv6 адреса
- Возвращает детальную информацию о городе, в том числе почтовый индекс.
- "Я тебя по айпи вычислю!"
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
ip |
string |
false |
IPv4 или IPv6 | |
count |
int |
true |
10 | Количество результатов (максимум — 20) |
language |
int |
true |
1 | Язык ответа. Он может быть русский значение language = 1 или английским, значение language = 2 . Мы призываем использовать константы Language::RU или Language::EN |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив данных аналагичный структуре выдачи метода DaDataAddress::standardization(string $address) |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Определение адреса по КЛАДР или ФИАС коду
DaDataAddress::id(string $ip, int $count, int $language)
определяет адреса по КЛАДР или ФИАС коду.
Основные кейсы:
- Поиск по КЛАДР-код, только для России;
- ФИАС-код, только для России;
- Идентификатор OpenStreetMap, только для Белоруссии;
- Идентификатор GeoNames, для всех остальных стран.
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
id |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Количество результатов (максимум — 20) |
language |
int |
true |
1 | Язык ответа. Он может быть русский значение language = 1 или английским, значение language = 2 . Мы призываем использовать константы Language::RU или Language::EN |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив данных аналагичный структуре выдачи метода DaDataAddress::standardization(string $address) |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Определение ближайшего отделения Почты России по адресу
DaDataAddress::postalUnitByAddress(string $address, int $count, int $language)
определяет ближайшее почтовые отделения по адресу
Если интернет-магазин доставляет покупки почтой по России, хорошо бы подсказать человеку, где и когда он может забрать посылку. В этом поможет справочник почтовых отделений — в нём есть точный адрес, координаты и часы работы отделения, а ещё отметка, если оно временно закрыто.
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
address |
string |
false |
Адресс | |
count |
int |
true |
10 | Количество результатов (максимум — 20) |
language |
int |
true |
1 | Язык ответа. Он может быть русский значение language = 1 или английским, значение language = 2 . Мы призываем использовать константы Language::RU или Language::EN |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив рассмотренный ниже |
Описание вложенного массива data
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
postal_code |
Индекс |
is_closed |
true , если отделение закрыто, иначе false |
type_code |
Тип отделения |
address_str |
Адрес одной строкой |
address_kladr_id |
КЛАДР-код населённого пункта |
address_qc |
Код проверки адреса |
geo_lat |
Широта |
geo_lon |
Долгота |
schedule_mon |
Режим работы в понедельник |
schedule_tue |
Режим работы во вторник |
schedule_wed |
Режим работы в среду |
schedule_thu |
Режим работы в четверг |
schedule_fri |
Режим работы в пятницу |
schedule_sat |
Режим работы в субботу |
schedule_sun |
Режим работы в воскресенье |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Определение отделения Почты России почтовому индексу
DaDataAddress::postalUnitById(int $code, int $count, int $language)
определяет адреса почтовых отделений почтовому коду
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
code |
int |
false |
Индекс | |
count |
int |
true |
10 | Количество результатов (максимум — 20) |
language |
int |
true |
1 | Язык ответа. Он может быть русский значение language = 1 или английским, значение language = 2 . Мы призываем использовать константы Language::RU или Language::EN |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив рассмотренный ниже |
Описание вложенного массива data
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
postal_code |
Индекс |
is_closed |
true , если отделение закрыто, иначе false |
type_code |
Тип отделения |
address_str |
Адрес одной строкой |
address_kladr_id |
КЛАДР-код населённого пункта |
address_qc |
Код проверки адреса |
geo_lat |
Широта |
geo_lon |
Долгота |
schedule_mon |
Режим работы в понедельник |
schedule_tue |
Режим работы во вторник |
schedule_wed |
Режим работы в среду |
schedule_thu |
Режим работы в четверг |
schedule_fri |
Режим работы в пятницу |
schedule_sat |
Режим работы в субботу |
schedule_sun |
Режим работы в воскресенье |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Определение отделения Почты России по координатам
DaDataAddress::postalUnitByGeoLocate(float $lat, float $lon, int $radius_meters, int $count, int $language)
определяет адреса почтовых отделений по координатам
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
lat |
int |
false |
Широта | |
lon |
int |
false |
Долгота | |
radius_meters |
int |
false |
1000 | Радиус поиска в метрах. Максимум 1000 |
count |
int |
true |
10 | Количество результатов (максимум — 20) |
language |
int |
true |
1 | Язык ответа. Он может быть русский значение language = 1 или английским, значение language = 2 . Мы призываем использовать константы Language::RU или Language::EN |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив рассмотренный ниже |
Описание вложенного массива data
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
postal_code |
Индекс |
is_closed |
true , если отделение закрыто, иначе false |
type_code |
Тип отделения |
address_str |
Адрес одной строкой |
address_kladr_id |
КЛАДР-код населённого пункта |
address_qc |
Код проверки адреса |
geo_lat |
Широта |
geo_lon |
Долгота |
schedule_mon |
Режим работы в понедельник |
schedule_tue |
Режим работы во вторник |
schedule_wed |
Режим работы в среду |
schedule_thu |
Режим работы в четверг |
schedule_fri |
Режим работы в пятницу |
schedule_sat |
Режим работы в субботу |
schedule_sun |
Режим работы в воскресенье |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Определение идентификатора города в СДЭК, Boxberry и DPD
DaDataAddress::delivery(string $code)
помогает решить сзадачу определения идентификатора города в СДЭК, Boxberry и DPD
Службы доставки часто используют собственные идентификаторы городов, и требуют от магазина указывать их в заказе.
Метод DaDataAddress::delivery(string $code)
определяет идентификатор города в службе доставке на основании КЛАДР-кода города.
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
code |
string |
false |
Код |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив рассмотренный ниже |
Описание вложенного массива data
Название | Описание |
---|---|
kladr_id |
КЛАДР-код города |
fias_id |
ФИАС-код города |
boxberry_id |
Идентификатор города по справочнику Boxberry |
cdek_id |
Идентификатор города по справочнику СДЭК |
dpd_id |
Идентификатор города по справочнику DPD |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Адрес в ФИАС по идентификатору
DaDataAddress::fias(string $code)
Находит адрес в справочнике ФИАС по коду КЛАДР или ФИАС.
ФИАС-коды домов иногда меняются, а метод ищет только по актуальным кодам. Поэтому рекомендуем помимо ФИАС-кода дома сохранять адрес одной строкой — иначе не получится восстановить адрес, когда ФИАС-код изменится.
По КЛАДР-коду метод ищет только до улицы, потому что в ФИАС нет КЛАДР-кодов домов.
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
code |
string |
false |
ФИАС код |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Адрес одной строкой (как показывается в списке подсказок) |
unrestricted_value |
Адрес одной строкой (полный, с индексом) |
data |
Вложенный массив данных аналагичный структуре выдачи метода DaDataAddress::standardization(string $address) |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Работа с именами
ФИО
DaDataName::fias(string $name)
Разбивает ФИО из строки по отдельным полям (фамилия, имя, отчество). Определяет пол и склоняет по падежам.
Основные кейсы
- Исправляет опечатки и транслитерирует.
- Проставляет пол.
- Склоняет по падежам (кого? кому? кем?).
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
name |
string |
false |
ФИО |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
source |
Исходное ФИО одной строкой |
result |
Стандартизованное ФИО одной строкой |
result_genitive |
ФИО в родительном падеже (кого?) |
result_dative |
ФИО в дательном падеже (кому?) |
result_ablative |
ФИО в творительном падеже (кем?) |
surname |
Фамилия |
name |
Имя |
patronymic |
Отчество |
gender |
Пол. М - мужской (male), Ж - женский (female), НД - не удалось однозначно определить |
qc |
Код проверки. Таблица кодов проверка ниже |
Коды проверки (параметр ответа qc
)
qc |
Нужна ручная проверка? | Описание |
---|---|---|
0 | нет | Исходное значение распознано уверенно |
2 | нет | Исходное значение пустое или заведомо «мусорное» |
1 | да | Исходное значение распознано с допущениями или не распознано |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Автодополнение при вводе («подсказки»)
DaDataName::prompt(string $name, int $count, int $gender, array $parts)
Помогает человеку быстро ввести ФИО на веб-форме или в приложении.
Основные кейсы
- Подсказывает ФИО одной строкой или отдельно фамилию, имя, отчество.
- Исправляет клавиатурную раскладку («fynjy» → «Антон»).
- Определяет пол.
Метод не предназначен для выполнения следующих задач
- Автоматически (без участия человека) обработать ФИО из базы или файла.
- Транслитерировать (Juliia Somova → Юлия Сомова).
- Склонять по падежам (кого? кому? кем?).
Подсказки не подходят для автоматической обработки ФИО. Они предлагают варианты, но не гарантируют, что угадали правильно. Поэтому окончательное решение всегда должен принимать человек.
Для автоматической обработки, транслитерации и склонения по падежам используйте DaDataName::fias(string $name)
метод ФИО, описание которого вы найдете выше.
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
query |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Количество результатов. Максимум 20 |
gender |
int |
true |
0 | Пол. Для управления пола, мы советуем использовать константы класса Gender , Неизвестный пол Gender::UNKNOWN , Gender::MALE - мужской, Gender::FEMALE - женский |
parts |
array |
true |
[] | Подсказки по фасти ФИО |
Формирования массива подсказок по фасти ФИО parts
Для формирования, воспользуйтесь набором констант классаа Parts
.
Только имена:
Имена и отчества:
Имена и фамилии:
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Исходное ФИО одной строкой |
unrestricted_value |
Стандартизованное ФИО одной строкой |
data['surname'] |
Фамилия |
data['name'] |
Имя |
data['patronymic'] |
Отчество |
data['gender'] |
Пол. MALE - мужской (male), FEMALE - женский (female), UNKNOWN - не удалось однозначно определить |
data['source'] |
Не используется |
date['qc'] |
Код проверки. 0 - все части ФИО известны, 1 - в ФИО есть неизвестная часть |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Работа с электронными (email) адресами
DaDataName::email(string $email)
Исправляет опечатки и проверяет на одноразовый адрес. Классифицирует адреса на личные, корпоративные и «ролевые».
Основные кейсы
- Проверяет формат адреса.
- Исправляет распространённые опечатки.
- Проверяет, не «одноразовый» ли адрес.
- Классифицирует адреса на личные (
@mail.ru
,@yandex.ru
), корпоративные (@myshop.ru
) и «ролевые» (info@
,support@
).
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
email |
string |
false |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
source |
Исходный email |
email |
Стандартизованный email |
local |
Локальная часть адреса (то, что до @ ) |
domain |
Домен (то, что послу @ ) |
type |
Тип адреса. PERSONAL — личный (@mail.ru, @yandex.ru). CORPORATE — корпоративный (@myshop.ru). ROLE — «ролевой» (info@, support@). DISPOSABLE — одноразовый (@temp-mail.ru) |
qc |
Код проверки |
Коды проверки (параметр ответа qc
)
qc |
Нужна ручная проверка? | Описание |
---|---|---|
0 | нет | Корректное значение. Соответствует общепринятым правилам, реальное существование адреса не проверяется |
2 | нет | Пустое или заведомо «мусорное» значение |
3 | нет | «Одноразовый» адрес. Домены 10minutemail.com, getairmail.com, temp-mail.ru и аналогичные |
1 | да | Некорректное значение. Не соответствует общепринятым правилам |
4 | да | Исправлены опечатки |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Подсказки по email
DaDataEmail::prompt(string $email, int $count)
Помогает человеку быстро ввести адрес электоронной почты на веб-форме или в приложении.
Основные кейсы
- Подсказывает локальную (до «собачки») и доменную (после «собачки») части эл. почты.
- Исправляет опечатки (yadex.ru → yandex.ru).
Метод не предназначен для выполнения следующих задач
- Автоматически (без участия человека) проверить адреса из базы или файла.
- Классифицировать адреса на личные (@mail.ru, @yandex.ru), корпоративные (@myshop.ru) и «ролевые» (info@, support@).
- Склонять по падежам (кого? кому? кем?).
Подсказки не подходят для автоматической обработки email. Они предлагают варианты, но не гарантируют, что угадали правильно. Поэтому окончательное решение всегда должен принимать человек.
Для автоматической обработки и классификации адресов используйте DaDataName::email(string $email)
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
email |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Количество результатов. Максимум 20 |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Email одной строкой |
unrestricted_value |
Равно полю value |
data['local'] |
Локальная часть адреса (то, что до @ ) |
data['domain'] |
Домен (то, что послу @ ) |
data['type'] |
Зарезервированы для автоматической обработки адресов через DaDataName::email(string $email) метод |
data['source'] |
Зарезервированы для автоматической обработки адресов через DaDataName::email(string $email) метод |
data['qc'] |
Зарезервированы для автоматической обработки адресов через DaDataName::email(string $email) метод |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Работа с телефонными номерами
Проверить телефон
DaDataPhone::standardization(string $phone);
Проверяет телефон по справочнику Россвязи, определяет оператора с учётом переноса номеров, заполняет страну, город и часовой пояс.
Основные кейсы
- Проверяет телефон.
- Проставляет актуальный код города / DEF-код.
- Восстанавливает оператора. Учитывает переносы номера между операторами.
- Определяет страну, регион, город и часовой пояс.
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
phone |
string |
false |
Текст запроса |
Пример вызова
Пример ответа
Описание ответа
Название | Описание |
---|---|
source |
Строка запроса |
type |
Тип телефона, может возвращать: Мобильный , Стационарный , Прямой мобильный , Колл-центр , Неизвестный . Примечание от автора movemoveapp/laravel-dadata: Ребята из DaData, ну вот как можно типы в таком виде отдавать? Ну можно было кодами их отдавать или cell , phone , call-center ? |
phone |
Стандартизованный телефон одной строкой |
country_code |
Код страны |
city_code |
Код города / DEF-код |
number |
Локальный номер телефона |
extension |
Добавочный номер |
provider |
Оператор связи (только для России) |
country |
Страна |
region |
Регион (только для России) |
city |
Город (только для стационарных телефонов) |
timezone |
Часовой пояс города для России, часовой пояс страны — для иностранных телефонов. Если у страны несколько поясов, вернёт минимальный и максимальный через слеш: UTC+5/UTC+6 |
qc_conflict |
Признак конфликта телефона с адресом. 0 - Телефон соответствует адресу, 2 - Города адреса и телефона отличаются, 3 - Регионы адреса и телефона отличаются |
qc |
Код проверки |
Коды проверки qc
Код | Треубется ручная проверка? | Описание |
---|---|---|
0 |
Нет | Российский телефон, распознан уверенно |
7 |
Нет | Иностранный телефон, распознан уверенно |
2 |
Нет | Телефон пустой или заведомо «мусорный» |
1 |
Да | Телефон распознан с допущениями или не распознан |
3 |
Да | Обнаружено несколько телефонов, распознан первый |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
413 |
Слишком большая длина запроса или слишком много условий |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Работа с компаниями
Организация по ИНН
DaDataCompany::id(string $id', int $count, string $kpp, int $branch_type, int $type)
- Находит компанию или индивидуального предпринимателя по ИНН, КПП, ОГРН. Возвращает реквизиты компании, учредителей, руководителей, сведения о налоговой, ПФР и ФСС, финансы, лицензии, реестр МСП и другую информацию о компании.
Находит компанию или ИП по ИНН или ОГРН. Возвращает все доступные сведения о компании, в отличие от метода suggest, который возвращает только базовые поля.
Пример вызова
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
id |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Количество результатов. Максимум 20 |
kpp |
int |
true |
null | КПП для поиска по филиалам, см.`` |
branch_type |
int |
true |
1 | Головная организация BranchType::MAIN или филиал BranchType::BRANCH |
type |
int |
true |
1 | Юрлицо CompanyType::LEGAL или индивидуальный предприниматель CompanyType::INDIVIDUAL |
Пример ответа
Описание ответа
Таблицу описания полного ответа вы можете получить на старнице Организация по ИНН или ОГРН в разделе "Что в ответе".
Описани ответа data['address']
Название | Длина | Описание |
---|---|---|
source |
250 | Исходный адрес одной строкой |
result |
500 | Стандартизованный адрес одной строкой |
postal_code |
6 | Индекс |
country |
120 | Страна |
country_iso_code |
2 | ISO-код страны |
federal_district |
20 | Федеральный округ |
region_fias_id |
36 | ФИАС-код региона |
region_kladr_id |
19 | КЛАДР-код региона |
region_iso_code |
6 | ISO-код региона |
region_with_type |
131 | Регион с типом |
region_type |
10 | Тип региона (сокращенный) |
region_type_full |
50 | Тип региона |
region |
120 | Регион |
area_fias_id |
36 | ФИАС-код района |
area_kladr_id |
19 | КЛАДР-код района |
area_with_type |
131 | Район в регионе с типом |
area_type |
10 | Тип района в регионе (сокращенный) |
area_type_full |
50 | Тип района в регионе |
area |
120 | Район в регионе |
city_fias_id |
36 | ФИАС-код города |
city_kladr_id |
19 | КЛАДР-код города |
city_with_type |
131 | Город с типом |
city_type |
10 | Тип города (сокращенный) |
city_type_full |
50 | Тип города |
city |
120 | Город |
city_area |
120 | Административный округ (только для Москвы) |
city_district_fias_id |
36 | ФИАС-код района города (заполняется, только если район есть в ФИАС) |
city_district_kladr_id |
19 | КЛАДР-код района города (не заполняется) |
city_district_with_type |
131 | Район города с типом |
city_district_type |
10 | Тип района города (сокращенный) |
city_district_type_full |
50 | Тип района города |
city_district |
120 | Район города |
settlement_fias_id |
36 | ФИАС-код населенного пункта |
settlement_kladr_id |
19 | КЛАДР-код населенного пункта |
settlement_with_type |
131 | Населенный пункт с типом |
settlement_type |
10 | Тип населенного пункта (сокращенный) |
settlement_type_full |
50 | Тип населенного пункта |
settlement |
120 | Населенный пункт |
street_fias_id |
36 | ФИАС-код улицы |
street_kladr_id |
19 | КЛАДР-код улицы |
street_with_type |
131 | Улица с типом |
street_type |
10 | Тип улицы (сокращенный) |
street_type_full |
50 | Тип улицы |
street |
120 | Улица |
house_fias_id |
36 | ФИАС-код дома |
house_kladr_id |
19 | КЛАДР-код дома |
house_type |
10 | Тип дома (сокращенный) |
house_type_full |
50 | Тип дома |
house |
50 | Дом |
block_type |
10 | Тип корпуса/строения (сокращенный) |
block_type_full |
50 | Тип корпуса/строения |
block |
50 | Корпус/строение |
flat_type |
10 | Тип квартиры (сокращенный) |
flat_type_full |
50 | Тип квартиры |
flat |
50 | Квартира |
flat_area |
50 | Площадь квартиры |
square_meter_price |
50 | Рыночная стоимость м² |
flat_price |
50 | Рыночная стоимость квартиры |
postal_box |
50 | Абонентский ящик |
fias_id |
36 | ФИАС-код адреса (идентификатор ФИАС) |
HOUSE.HOUSEGUID — если дом найден в ФИАС |
||
ADDROBJ.AOGUID — в противном случае |
||
fias_code |
Иерархический код адреса в ФИАС (СС+РРР+ГГГ+ППП+СССС+УУУУ+ДДДД) | |
fias_level |
2 | Уровень детализации, до которого адрес найден в ФИАС |
fias_actuality_state |
Признак актуальности адреса в ФИАС | |
kladr_id |
19 | КЛАДР-код адреса |
capital_marker |
1 | Признак центра района или региона |
okato |
11 | Код ОКАТО |
oktmo |
11 | Код ОКТМО |
tax_office |
4 | Код ИФНС для физических лиц |
tax_office_legal |
4 | Код ИФНС для организаций |
timezone |
50 | Часовой пояс города для России, часовой пояс страны — для иностранных адресов. Если у страны несколько поясов, вернёт минимальный и максимальный через слеш: UTC+5/UTC+6 |
geo_lat |
12 | Координаты: широта |
geo_lon |
12 | Координаты: долгота |
beltway_hit |
8 | Внутри кольцевой? |
beltway_distance |
3 | Расстояние от кольцевой в км. Заполнено, только если beltway_hit = OUT_MKAD или OUT_KAD, иначе пустое |
qc_geo |
5 | Код точности координат |
qc_complete |
5 | Код пригодности к рассылке |
qc_house |
5 | Признак наличия дома в ФИАС |
qc |
5 | Код проверки адреса |
unparsed_parts |
250 | Нераспознанная часть адреса. Для адреса «Москва, Митинская улица, 40, вход с торца» вернет «ВХОД, С, ТОРЦА» |
metro |
Список ближайших станций метро (до трёх штук) |
Координаты есть у 97% домов в Москве, 91% в Санкт-Петербурге, 69% в других городах-миллиониках и 47% по остальной России. Площадь и стоимость есть у 70% квартир в России.
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ или секретный ключ или в запросе указан несуществующий ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Автодополнение при вводе («подсказки»)
DaDataCompany::prompt(string $company, int $count, array $status, int $type, string $locations, string $locations_boost);
Помогает человеку быстро ввести реквизиты организации на веб-форме или в приложении.
Ищет компании и индивидуальных предпринимателей:
- По ИНН, ОГРН и КПП;
- Названию (полному и краткому);
- ФИО (для индивидуальных предпринимателей);
- ФИО руководителя компании;
- Адресу до улицы;
Основные кейсы:
- Ищет по комбинации ИНН, названия и адреса в одном запросе («7736050003 Газ» → «ПАО Газпром», «вавилова сбер» → «ПАО Сбербанк»).
- Находит конкретный филиал, если указать в запросе КПП («сбербанк 540602001» → «Сибирский банк ПАО Сбербанк»).
- Понимает слитное и раздельное написание («альфабанк» = «Альфа-Банк»).
- Ищет по частичному совпадению в ИНН / ОГРН («77094209» → «ООО Акварель») и названиях («росне» → «ПАО «НК «Роснефть»).
- Подсказывает только организации или только ИП, или и тех и других. Умеет искать только в действующих или ликвидированных компаниях. Может ограничить подсказки конкретным регионом России.
- Учитывает, где вы находитесь (в связке с методом Определение адреса по IP).
- Возвращает основные реквизиты компании из ЕГРЮЛ: краткое и полное название, ОПФ, адрес, ОГРН, ИНН, КПП, ОКВЭД, статус организации, ФИО и должность руководителя.
- В связке с методом Организация по ИНН возвращает вагон дополнительной информации: количество сотрудников, все коды ОКВЭД, сведения о налоговой, ПФР и ФСС, документы и лицензии, учредители и руководители, финансовые показатели, реестр малого и среднего бизнеса.
Данный метод не прдназначен:
- ля 50% компаний налоговая служба пока не сообщает КПП филиалов. Такие филиалы можно найти по ИНН, городу и улице филиала. Например, «7724261610 москва мясницкая» → «Филиал ФГУП "Почта России" (г Москва)».
Пример вызова
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
company |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Количество результатов. Максимум 20 |
status |
int |
true |
null | Ограничение по статусу организации. |
type |
int |
true |
1 | Ограничение по типу организации. |
locations |
string |
true |
null | Ограничение по региону или городу. Двухзначные коды необходимо передавать строкой через , запятую. Список кодов |
locations_boost |
string |
true |
null | Приоритет города при ранжировании. |
Формирование status
- ограничение по статусу организации
Чтобы искать только действующие компании, сформироуйте массив status как
Поиск только среди ликвидируемых и ликвидированных компаний:
Формирование type
- Ограничение по типу организации.
Тип поиска только по юридическим лицам
Тип поиска только по индивидуальным предпринимателям
Пример ответа
Описание ответа
Таблицу описания полного ответа вы можете получить на старнице API подсказок по организациям в разделе "Что в ответе".
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ или секретный ключ или в запросе указан несуществующий ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Поиск аффилированных компаний
DaDataCompany::affiliated(string $code, int $count, array $scope)
Находит организации по ИНН учредителей и руководителей. Работает для физлиц и юрлиц.
Часто учредитель или директор не ограничивается участием в одном юрлице, а фигурирует в нескольких. Порой — в десятках разных компаний. Знать об этом полезно как для оценки надёжности контрагента, так и для более эффективного маркетинга и продаж. Чтобы облегчить поиск аффилированных компаний, «Дадата» находит организации по ИНН учредителей и руководителей.
Ищет по ИНН физлиц и юрлиц.
Данный метод не удается протестировать из-за того, что все получаем 403
, Operation party/findAffiliated is not permitted
Пример вызова
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
code |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Количество результатов. Максимум 20 |
scope |
array |
true |
[] | КПП для поиска по филиалам |
Формирование scope
-
Описание ответа
Таблицу описания полного ответа вы можете получить на старнице Поиск аффилированных компаний в разделе "Что в ответе".
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ или секретный ключ или в запросе указан несуществующий ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Работа с банками
Банк по БИК, SWIFT, ИНН или регистрационному номеру
DaDataBank::id(string $bank);
Находит банк по любому из идентификаторов: БИК, SWIFT, ИНН, ИНН + КПП (для филиалов), рег. номеру, присвоенному Банком России. Возвращает реквизиты банка, корр. счёт, адрес и статус (действующий / на ликвидации).
Ищет кредитные организации по:
- БИК;
- SWIFT;
- ИНН;
- ИНН плюс КПП;
- Названию;
Ищет только по точному совпадению, для частичного совпадения используйте метод DaDataBank::prompt(string $bank, int $count, array $status, array $type, string $locations, string $locations_boost)
Пример вызова
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
bank |
string |
false |
Текст запроса |
Пример ответа
Описание ответа
Таблицу описания полного ответа вы можете получить на старнице Банк по БИК, SWIFT, ИНН или регистрационному номеру в разделе "Что в ответе".
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ или секретный ключ или в запросе указан несуществующий ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
API подсказок по банкам
DaDataBank::prompt(string $bank, int $count, array $status, array $type, string $locations, string $locations_boost)
Помогает человеку быстро ввести реквизиты банка на веб-форме или в приложении.
Ищет кредитные организации по:
- БИК;
- SWIFT;
- ИНН;
- ИНН плюс КПП;
- Названию;
Основные кейсы:
- Фильтрует по типу: банки, НКО и филиалы, а также РКЦ и другие организации;
- Умеет искать как действующие банки, так и банки на ликвидации;
- Учитывает, где вы находитесь (геолокация до города);
Пример вызова
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
bank |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Количество результатов. Максимум 20 |
status |
array |
true |
null | Ограничение по статусу банка |
type |
array |
true |
1 | Ограничение по типу банка |
locations |
string |
true |
null | Ограничение по региону или городу. Двухзначные коды необходимо передавать строкой через , запятую. Список кодов |
locations_boost |
string |
true |
null | Приоритет города при ранжировании. |
Формирование status
- ограничение по статусу организации
Чтобы искать только действующие банки, сформироуйте массив status как
Поиск только среди ликвидируемых и ликвидированных банков:
Формирование type
- Ограничение по типу банка.
Доступные типы организаций в классе ESitchikhinFork\DaData\Enums\BankType
Тип | Тип организации |
---|---|
BankType::BANK |
Банк |
BankType::BANK_BRANCH |
Филиал банка |
BankType::NKO |
Небанковская кредитная организация |
BankType::NKO_BRANCH |
Филиал небанковской кредитной организации |
BankType::OTHER |
Другое |
BankType::RKC |
РКЦ / ГРКЦ |
Тип поиска только по банкам и филиалам банков
Тип поиска только по РКЦ/ГРКЦ
Пример ответа
Описание ответа
Таблицу описания полного ответа вы можете получить на старнице API подсказок по банкамм в разделе "Что в ответе".
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ или секретный ключ или в запросе указан несуществующий ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Работа с паспортами
Проверка по реестру МВД
DaDataPassport::standardization(string $id)
Проверяет паспорт по справочнику недействительных паспортов МВД.
Основные кейсы:
- Проверяет формат серии и номера;
- Проверяет паспорт по справочнику недействительных паспортов МВД;
Пример вызова
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
id |
string |
false |
Текст запроса |
Пример ответа
Описание ответа
Название | Длина | Описание |
---|---|---|
source |
100 |
Исходная серия и номер одной строкой |
series |
20 |
Серия |
number |
20 |
Номер |
qc |
5 |
Код проверки. |
qc |
Нужна ручная проверка? | Описание |
---|---|---|
0 | нет | Действующий паспорт |
2 | нет | Исходное значение пустое |
1 | да | Неправильный формат серии или номера |
100 | да | Недействительный паспорт |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ или секретный ключ или в запросе указан несуществующий ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения
Кем выдан паспорт
DaDataPassport::fns(string $passport, int $count)
Моментально заполняет организацию, выдавшую паспорт, по коду подразделения
Самое утомительное поле при вводе паспорта — «Кем выдан». Писать какое-нибудь «Отделом внутренних дел Медведевского района республики Марий Эл» муторно. Поэтому мы сделали подсказки по полю «Паспорт выдан...».
Пример вызова
Параметры вызова
Название | Тип | Optional | Default value | Описание |
---|---|---|---|---|
id |
string |
false |
Текст запроса | |
count |
int |
true |
10 | Количество результатов. Максимум 20 |
Пример ответа
Описание ответа
Название | Описание |
---|---|
value |
Значение одной строкой (как показывается в списке подсказок) |
unrestricted_value |
== value |
data['code'] |
Код подразделения |
data['name'] |
Название подразделения в творительном падеже («кем выдан?») |
data['region_code'] |
Код региона (2 цифры) |
data['type'] |
Вид подразделения (1 цифра). 0 — подразделение ФМС, 1 — ГУВД или МВД региона, 2 — УВД или ОВД района или города, 3 — отделение полиции |
Exceptions
При вызове методов, вы можете обрабатывать коды исключений и их сообщения
Код | Описание |
---|---|
400 |
Некорректный запрос |
401 |
В запросе отсутствует API-ключ или секретный ключ или в запросе указан несуществующий ключ |
403 |
Не подтверждена почта или недостаточно средств для обработки запроса, пополните баланс |
405 |
Запрос сделан с методом, отличным от POST |
429 |
Слишком много запросов в секунду или новых соединений в минуту |
5xx |
Произошла внутренняя ошибка сервиса |
Более детальную информацию вы можете получить из сообщения исключения.
Пример получения сообщения исключения