Detect для документов

Данный метод позволяет определить является ли фотография документом и возможный тип документа.

Запрос

Авторизационные данные передаются в строке запроса:


Параметр Тип Значение
oauth_token string OAuth2 access token (required non-empty)
oauth_provider string провайдер OAuth2 (required non-empty)

Поддерживаемые провайдеры OAuth2:


Провайдер Значение oauth_provider Получение токена
Mail.Ru mcs

Смотрите в статье


Параметры запроса передаются в формате JSON в теле запроса с name="meta":


Параметр Тип Значение
images []image_meta метаданные передаваемых изображений (required non-empty)


image_meta

Параметр Тип Значение
name
string имена файлов для сопоставления файлов в запросе и ответе (required non-empty)

Изображения передаются в теле запроса, значения поля name должны соответствовать переданным в images. Максимальное количество изображений в одном запросе равняется 100. Максимальный размер каждого изображения не должен превышать 4 МБ.

Пример запроса:


POST /api/v1/docs/detect?oauth_provider=mr&oauth_token=123 HTTP/1.1


Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryfCqTBHeLZlsicvMp

------WebKitFormBoundaryfCqTBHeLZlsicvMp
Content-Disposition: form-data; name="file_0"; filename=""
Content-Type: image/jpeg

000000000000000000000000000
000000000000000000000000000
000000000000000000000000000
------WebKitFormBoundaryfCqTBHeLZlsicvMp
Content-Disposition: form-data; name="file_1"; filename=""
Content-Type: image/jpeg

111111111111111111111111111
111111111111111111111111111
111111111111111111111111111
------WebKitFormBoundaryfCqTBHeLZlsicvMp
Content-Disposition: form-data; name="meta"

{"images":[{"name":"file_0"},{"name":"file_1"}]}
------WebKitFormBoundaryfCqTBHeLZlsicvMp--


Ответ

Параметр Тип Значение
status int 200 в случае успеха, иначе описание ошибки будет в body
body string | response  тело ответа

response

Параметр Тип Значение
status enum результат выполнения) 
error string текстовое описание ошибки (optional)
name string имя файла для сопоставления файлов в запросе и ответе
pages

[]page

список объектов (меток), найденных на изображении

status

Параметр Значение
0 успешно
1 перманентная ошибка
2 временная ошибка

page

Параметр Тип Значение
index int успешно
docs []doc  перманентная ошибка

doc

Параметр Значение
eng тип (название) документа на английском
rus тип (название) документа на русском
prob степень уверенности в том, что на изображении именно этот тип документа

Для каждого объекта (картинки) может быть несколько типов, с различной степенью уверенности. Метка «Документ» определяет является ли изображение документом и с какой вероятностью. На данный момент поддерживаются следующие типы документов:


Eng метка Rus метка
Akt  Акт
Akt_sverky Акт сверки
Diplom Диплом
Doc Документ
Dogovor Договор
Doverennost Доверенность
Inn ИНН
Logotip Логотип
Pasport Паспорт
Prais_list Прайс-лист
Prikaz Приказ
Protocol Протокол
Pts ПТС
Registraciya_ts Регистрация ТС
Rekvizity Реквизиты
Rezyume Резюме
Schet Счет
Sertifikat Сертификат
Snils Снилс
Spravka Справка
Svidetelstvo Свидетельство
Tabel Табель
Ustav Устав
Voditelskye_prava Водительские права
Vypiska Выписка
Zagranpasport Загранпаспорт
Zayavlenie Заявление


Пример ответа:



{

"status":200,

"body":

{

"status":0,

"objects":[

{

"status":0,

"name":"file_0",

"pages":[

{

"index":0,

"docs":[

{

"eng":"Pts",

"rus":"Птс",

"probabilty":0.56

},

{

"eng":"Doc",

"rus":"Документ",

"probabilty":0.78

}]

}

}]

}

}

Пример ответа, когда не удалось выполнить запрос:



{

"status":500,

"body":"Internal Server Error",

"htmlencoded":false,

"last_modified":0

}

Пример Python:



python examples/python/smarty.py \
 -u "https://smarty.mail.ru/api/v1/docs/detect?oauth_provider=mr&oauth_token=e50b000614a371ce99c01a80a4558d8ed93b313737363830" \
 -p examples/passport.jpg \
 -v