↑ Все API
API: стандартизация составных записей с контактными данными
Стандартизует запись, которая состоит из нескольких полей. Например:
- ФИО + адрес + телефон + телефон
- Дата рождения + паспорт
- Адрес + email
Как вызвать
Чтобы вызвать метод, и подтвердите почту.
Пример запроса:
cat > ./request.json <<EOF { "structure": [ "NAME", "ADDRESS", "PHONE" ], "data": [ [ "Федотов Алексей", "Москва, Сухонская улица, 11 кв 89", "8 916 823 3454" ] ] } EOF curl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "Authorization: Token ${API_KEY}" \ -H "X-Secret: ${SECRET_KEY}" \ -d @request.json \ https://cleaner.dadata.ru/api/v1/clean
Укажите при вызове:
Content-Type: application/json
.Accept: application/json
.${API_KEY}
— API-ключ.${SECRET_KEY}
— секретный ключ.
Тело запроса передавайте в кодировке UTF-8
.
Из чего состоит запрос в примере
structure
— структура записи, содержит четыре поля:
AS_IS
— оставить как есть (не стандартизировать),NAME
— разобрать как ФИО,ADDRESS
— разобрать как адрес,PHONE
— разобрать как телефон.
data
— составная запись из 4 полей (№, ФИО, адрес, телефон).
Типы полей
Тип | Описание |
---|---|
ADDRESS | Почтовый адрес |
PHONE | Телефон |
PASSPORT | Номер и серия паспорта |
NAME | ФИО |
Адрес электронной почты | |
VEHICLE | Марка и модель автомобиля |
AS_IS | Скопировать поле в ответ «как есть» |
Что в ответе
Стандартизованная запись:
{ "structure": [ "NAME", "ADDRESS", "PHONE" ], "data": [ [ { "source": "Федотов Алексей", "result": "Федотов Алексей", ... "qc": 0 }, { "source": "Москва, Сухонская улица, 11 кв 89", "result": "г Москва, ул Сухонская, д 11, кв 89", ... "qc": 0, "unparsed_parts": null }, { "source": "8 916 823 3454", "type": "Мобильный", "phone": "+7 916 823-34-54", ... "qc": 0 } ] ] }
Коды ответа на запрос
HTTP-код ответа | Описание |
---|---|
200 | Запрос успешно обработан |
400 | Некорректный запрос:
|
401 | В запросе отсутствует API-ключ или секретный ключ Или в запросе указан несуществующий ключ |
403 | Не подтверждена почта Или недостаточно средств для обработки запроса, пополните баланс |
405 | Запрос сделан с методом, отличным от POST |
429 | Слишком много запросов в секунду или новых соединений в минуту |
5xx | Произошла внутренняя ошибка сервиса |
Примеры и интеграции
Ограничения
В запросе разрешено передавать только одну запись.
Максимальное количество полей в одной записи:
- 1 ФИО,
- 3 адреса,
- 3 телефона,
- 3 email,
- 1 дата рождения,
- 1 паспорт,
- 1 автомобиль.
Максимальная частота запросов — 20 в секунду с одного IP-адреса.
Максимальная частота создания новых соединений — 60 в минуту с одного IP-адреса.
Дадата не поддерживает вызов этого метода из браузерного JavaScript. Иначе злоумышленник мог бы похитить секретный ключ и использовать API за ваш счет.