↑ Все 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ФИО
EMAILАдрес электронной почты
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 Некорректный запрос:
  • Невалидный JSON.
  • Отсутствуют обязательные параметры structure или data.
  • В structure указан неподдерживаемый тип.
  • Количество полей в data более указанного в structure.
401 В запросе отсутствует API-ключ или секретный ключ
Или в запросе указан несуществующий ключ
403 Не подтверждена почта
Или недостаточно средств для обработки запроса, пополните баланс
405Запрос сделан с методом, отличным от POST
429Слишком много запросов в секунду или новых соединений в минуту
5xxПроизошла внутренняя ошибка сервиса

Примеры и интеграции

Ограничения

В запросе разрешено передавать только одну запись.

Максимальное количество полей в одной записи:

  • 1 ФИО,
  • 3 адреса,
  • 3 телефона,
  • 3 email,
  • 1 дата рождения,
  • 1 паспорт,
  • 1 автомобиль.

Максимальная частота запросов — 20 в секунду с одного IP-адреса.

Максимальная частота создания новых соединений — 60 в минуту с одного IP-адреса.

Дадата не поддерживает вызов этого метода из браузерного JavaScript. Иначе злоумышленник мог бы похитить секретный ключ и использовать API за ваш счет.

Стоимость

15 копеек за запись