Prova de vida passiva
Informações gerais
- Endereço:
api.mobile.combateafraude.com/faces/liveness
- Suporta assinatura de respostas: Sim
Método POST
Descrição
Verifica se a foto enviada é autêntica, detectando se não se trata de uma foto de foto ou vídeo.
Requisição
Cabeçalhos
Identificador | Valor | Descrição |
---|---|---|
Authorization | [token de acesso] | Token do acesso do cliente mais informações |
Content-type | application/json | Especifica que o MIME type é JSON |
Strings de consulta
Identificador | Obrigatório | Valor | Descrição |
---|---|---|---|
shouldSignResponse | Não | true ou false | Especifica se a request deve ser assinada. O default é false . |
Corpo
Campo | Obrigatório | Tipo | Descrição |
---|---|---|---|
imageUrl | Não* | String | URL da imagem a ser testada |
imageBase64 | Não* | String | Base64 da imagem a ser testada |
person.cpf ** | Não | String | CPF do usuário fazendo a autenticação |
person.name ** | Não | String | Nome do usuário fazendo a autenticação |
*Você deve enviar um dos dois campos.
**O campo deve ser enviado dentro de um objeto chamado person
. O objetivo desses campos é identificar o usuário e evitar possíveis ataques de replay (onde um atacante usa a mesma resposta assinada diversas vezes).
Resposta
Códigos de status
Código | Gera cobrança | Descrição |
---|---|---|
200 | Sim | A execução foi concluída com sucesso (veja detalhes abaixo) |
400 | Não | O token de acesso não foi informado |
401 | Não | O token usado não é válido para este produto |
405 | Não | Método HTTP não permitido |
500 | Não | Erro interno do servidor |
Corpo da resposta quando bem-sucedida
Campo | Tipo | Descrição |
---|---|---|
requestId | String | Identificador dessa requisição em nosso servidores |
isAlive | Boolean | Indica se a pessoa na foto passou ou não na prova de vida |
attemptId | String | Identificador dessa tentativa de autenticação |
person | Objeto | Informações enviadas no objeto person na chamada |
message (opcional) | String | Indica o motivo da reprovação (ver abaixo) |
Valores válidos para o campo message
:
Sua foto deve conter apenas um rosto
Seu rosto está muito próximo da câmera
Não encontramos nenhum rosto na imagem
Seu rosto está muito pequeno
Seu rosto não está alinhado à câmera
Se isAlive
for false
e o campo message
não foi especificado, a reprovação aconteceu pois a pessoa na foto não passou na prova de vida.
Exemplos
Exemplo de requisição:
curl --location \
--request POST 'api.mobile.combateafraude.com/faces/liveness' \
--header 'Authorization: {token}' \
--header 'Content-Type: application/json' \
--data-raw '{
"imageUrl": "https://images.generated.photos/DQ4EKrAPT-e5slG3cXmSw20uJ2AwwhOzJeVnpI9tlMA/rs:fit:512:512/Z3M6Ly9nZW5lcmF0/ZWQtcGhvdG9zLzA5/OTk4MDcuanBn.jpg"
}'
Exemplo de resposta:
{
"requestId": "1ba8a9b4-f45c-463d-8a0b-e18407b2386c",
"isAlive": false
}