Skip to main content

Comparar con Detección de Vitalidad (Secuencial)

Endpoint

POST https://api.verifik.co/v2/face-recognition/compare-with-liveness

Realiza la comparación primero y, si la comparación cumple con compare_min_score (o si no se proporciona), procede a la detección de vitalidad en la prueba con liveness_min_score.

Headers

NameValue
Content-Typeapplication/json
AuthorizationBearer <token>

Parámetros

NameTypeRequiredDescription
probestringCadena de imagen base64 para la captura en vivo.
gallerystring[]Array de cadenas de imagen base64 para comparar. Se admiten URLs y serán descargadas y convertidas internamente.
search_modestringUno de FAST o ACCURATE.
liveness_min_scorenumberNoUmbral de vitalidad; por defecto 0.6 si no se proporciona.
compare_min_scorenumberNoUmbral de comparación opcional (0.670.95). El valor por defecto en SmartEnroll hospedado es 0.85.

Solicitud

const fetch = require("node-fetch");

async function run() {
const res = await fetch("https://api.verifik.co/v2/face-recognition/compare-with-liveness", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.VERIFIK_TOKEN}`,
},
body: JSON.stringify({
probe: "<base64>",
gallery: ["<base64>"],
search_mode: "FAST",
liveness_min_score: 0.6,
compare_min_score: 0.8
}),
});
console.log(await res.json());
}

run();

Respuesta

{
"id": "CWL01",
"data": {
"comparison": {
"score": 0.88
},
"liveness": {
"liveness_score": 0.91,
"min_score": 0.6,
"passed": true
}
},
"signature": {
"message": "Certified by Verifik.co",
"dateTime": "January 16, 2024 3:44 PM"
}
}

Umbrales de comparación facial

ContextoValores típicos / permitidos
SmartEnroll hospedado / project flow (por defecto)0.85
API directa (compare_min_score)0.670.95

Las caras de documentos impresos vs selfies en vivo suelen puntuar más bajo que en vivo vs en vivo. Valores cerca del mínimo de la API (0.67) pueden ser apropiados para galerías de CC impresa tras validar el riesgo de falsos aceptados. cropFace en servidor no está soportado en este endpoint (se ignora si se envía); envía imágenes enfocadas en el rostro.

Notas

  • La comparación se ejecuta primero. Solo si compare_min_score no se proporciona o se cumple, se ejecuta la detección de vitalidad en probe.
  • liveness_min_score por defecto es 0.6 si no se proporciona.
  • La galería admite URLs https y serán descargadas y convertidas a base64 internamente.
  • No existe GET /v2/face-verifications/:id. Para historial SmartEnroll, popula compareFaceVerification en el app registration (TTL ~90 días en producción).