# API-интеграция
API от InGO позволяет обрабатывать данные пользователей и документы, представленные для проверки, через RESTful API.
Пожалуйста, заранее свяжитесь с нами перед выбором этого способа интеграции, так как он может быть достаточно сложным для самостоятельной реализации и может приводить к нежелательным ситуациям, которые наши WebSDK и MobileSDK обрабатывают автоматически.
# Введение
Все упомянутые здесь эндпоинты подробно описаны в разделе API-запросы. Цель этой страницы — дать общее представление о том, как должен выглядеть процесс интеграции, и на что стоит обратить особое внимание.
Внимание:
- Все запросы к API должны выполняться через HTTPS — обычный HTTP отклоняется.
- Ответы API возвращаются в формате JSON (если не указано иное). Когда необходимо передать данные, они должны быть предоставлены в формате корректного JSON (если не указано иное) с установленным заголовком
Content-Type: application/json.
# API-запросы
Прежде чем начать работу с API IDnGO, все клиенты должны пройти аутентификацию, как это описано в разделе Начало работы.
Настройте шаги, выберите допустимые для верификации документы и определите порядок прохождения проверок в настройках уровня в Дешборде. Подробнее о шагах проверки и поддерживаемых документах см. здесь.
Схема и порядок верификации пользователя подробно описана в разделе О верификации. Ниже описан порядок ваших действий, для того чтобы пользователь был обработан системой корректно.
# Порядок действий для верификации пользователя
# 1. Создайте анкету пользователя
При создании анкеты пользователя её статус становится init.
Передайте данные о пользователе, которые у вас уже есть (например, email, телефон и т. д.). Это поможет сделать антифрод-проверки точнее.
Создание анкеты пользователя: POST /resources/applicants?levelName={levelName}
# 2. Загрузите документы пользователя
Загрузите все необходимые изображения и данные:
- Документы и селфи пользователя.
Если у документа две стороны, отправьте два изображения и правильно задайте
idDocSubType(FRONT_SIDEиBACK_SIDE). Обязательно отправляйте обе стороны документа: еслиFRONT_SIDEотправлен, аBACK_SIDE— нет, проверка не будет завершена.
Добавление документа, удостоверяющего личность: POST/resources/applicants/{applicantId}/info/idDoc - Данные пользователя.
Изменение предоставленной информации (fixedInfo): PATCH/resources/applicants/{applicantId}/fixedInfo
Если вы передаёте данные пользователя для сверки с данными из документов, убедитесь, что предоставляете пользователю возможность исправить их на вашей стороне. Мы отправим тег отказа PROBLEMATIC_APPLICANT_DATA, если данные, предоставленные пользователем, отличаются от данных в документах.
3. Запросите проверку пользователя:
Автоматическое изменение статуса на pending работает только в наших SDK, поэтому как только все необходимые документы и данные будут загружены в анкету, сообщите системе, что пользователь готов к верификации.
Переведите анкету в статус pending:
Запрос проверки пользователя: POST /resources/applicants/{applicantId}/status/pending
Внимание:
Пользователь получит отказ и не пройдет проверку, если документы будут загружены неправильно или не полностью.
4. Получите результаты верификации:
После завершения проверки пользователя статус анкеты изменится на completed.
Основной рекомендованный способ получения результатов верификации - вебхуки. Их можно настроить в разделе «Вебхуки» в Дешборде.
Передайте пользователю сообщение с результатом его верификации:
GREEN— проверка прошла успешно.RED:FINAL— окончательный отказ, пользователь не может загрузить новые фотографии.RED:RETRY— временный отказ, пользователь может загрузить новые фотографии/данные.
Внимание:
У вас должна быть возможность реагировать на изменение статуса проверки. Например, если пользователя одобрили, а через неделю он попал в чёрный список, мы отправим новый результат RED на ваш вебхук-эндпоинт, и ваша система должна отреагировать соответствующим образом.
Чтобы получить информацию о пользователе, которая была распознана из документов в результате проверки, используйте этот API-запрос:
Получение данных о пользователе:
GET /resources/applicants/{applicantId}/one
или
GET /resources/applicants/-;externalUserId={externalUserId}/one
5. Повторный запрос документов:
Временный отказ RED:RETRY позволяет загрузить изображения для повторной проверки.
Если во время проверки была обнаружена проблема только с частью загруженных изображений, то не нужно заставлять пользователя проходить все шаги верификации заново и загружать все документы. Нужно загрузить только те изображения/данные, в которых были обнаружены проблемы:
- Получите список проблемных изображений и подробную информацию о проверке.
Получение статусов для отдельных шагов верификации (API): GET/resources/applicants/{applicantId}/requiredIdDocsStatus - В поле
moderationCommentуказывается комментарий, который можно сообщить пользователю (например: «Текст на вашем документе, удостоверяющем личность, виден нечетко. Пожалуйста, загрузите новую фотографию.»). - Повторно загрузите новые изображения в ту же анкету пользователя, а затем переведите его в статус
pendingи дождитесь новых результатов проверки.
# Важные детали для успешной API-интеграции
- Если у вас нет особенных требований к документам, рекомендуется:
- отправлять 1 изображение главного разворота для документа в виде книжки: паспорт, вид на жительство и т. д.;
- отправлять 2 изображения для документа в виде карты: id-карта, водительское удостоверение и т. д.
- Для проверки селфи убедитесь, что пользователь знает о необходимости держать удостоверение личности в кадре, а также чтобы документ было хорошо видно.