Liveness Short
Описание#
Liveness Short - это технология, использующая алгоритмы и методы компьютерного зрения для определения, является ли представленное изображение лица реальным и принадлежит ли оно живому человеку.
С использованием различных алгоритмов и моделей машинного обучения, он выполняет процесс проверки на живость для обнаружения поддельных или статичных изображений, которые могут быть использованы для обхода системы аутентификации или мошеннических целей.
Такой веб-сервис может быть интегрирован в системы и приложения, требующие дополнительного уровня аутентификации и безопасности.
Ниже подробнее описаны этапы для использования данной технологии. Вы также можете проверить OpenAPI-спецификацию всех доступных для использования технологий.
Этапы:#
1. Получение API-KEY организации#
Первый этап для использования технологии - получение API-KEY организации. Чтобы получить API-KEY организации, необходимо зайти в Личный Кабинет по данной ссылке. API-KEY находится в поле Backend Api Key
Пример API-KEY организации:
API-KEY: Efy202XKbVAWRu...
Примечание
Для наглядности используется укороченная длина
API KEY
. Его фактическая длина составляет 47 и более символов.
2. Отправка запроса для определения живости по фотографии#
В запросах к нашему сервису используются данные в формате multipart/form-data. Ответные данные от сервиса будут представлены в формате JSON.
Важно
Чтобы использовать данный сервис, необходимо иметь на него подписку. Подробнее о подписках можно прочитать здесь.
URL запроса:
https://kyc.biometric.kz/api/v1/backend/liveness/short/
Формат запроса | Метод запроса |
---|---|
multipart/form-data | POST |
API KEY
необходимо передать в теле запроса:
Наименование поля | Тип | Обязательно | Описание |
---|---|---|---|
api_key | String | Да | API KEY организации в личном кабинете |
image | File | Да | Фотография лица |
Примеры запроса:
import requests
url = 'https://kyc.biometric.kz/api/v1/backend/liveness/short/'
headers = {
'accept': 'application/json',
}
face_photo_path = "<path_to_face_photo>"
files = {
'image': (face_path_1, open(face_photo_path, 'rb'), 'image/<image_extension>'),
}
data = {
'api_key': '<organization_api_key>',
}
response = requests.post(url, headers=headers, files=files, data=data)
print(response.json())
/*
dependencies to install via npm:
form-data, fs, node-fetch
*/
import FormData from 'form-data';
import fs from 'fs';
import fetch from 'node-fetch';
const face_photo_path = "<path_to_face_photo>";
const url = 'https://kyc.biometric.kz/api/v1/backend/liveness/short/';
const apiKey = '<organization_api_key>';
const formData = new FormData();
formData.append('image', fs.createReadStream(face_photo_path));
formData.append('api_key', apiKey);
fetch(url, {
method: 'POST',
headers: {
'accept': 'application/json',
},
body: formData
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));
В качестве ответа придет JSON со следующими полями:
- result - результат проверки фотографии лица на живость;
- prediction - дробное значение, являющиеся оценкой вероятности живости лица на фотографии;
- created_at - время создания результата вычисления живости по фотографии;
Пример ответа:
Ошибки#
Код состояния | Ответ | Описание |
---|---|---|
400 | Could not send image to liveness service | Не удалось установить соединение с сервисом liveness |
400 | Client does not have access to Liveness technology | У клиента нет доступа к технологии. Причины: подписка отсутствует, либо она истекла, или технология не активна |
415 | Not allowed file, valid extensions: .jpg .png .jpeg | Недопустимое расширение для файла, допустимые: .jpg .png .jpeg |
400 | Subscription has not started | Подписка еще не активировалась |
400 | No active or future subscription for technology | Нет активной или будущей подписки на технологию |
400 | Client does not have subscription | У клиента отсутствует подписка, подробнее о подписках можно прочитать здесь |