El recorrido completo
1
Verifique conectividad y credenciales
200 confirma que la URL base y la api-key son correctas. Un 401 significa clave inválida o ambiente equivocado. Evalúe el código de estado, no el cuerpo: los números de versión cambian y no son parte de su contrato.2
Prepare la imagen
Capture o reciba un JPEG, ajústelo a las dimensiones recomendadas y conviértalo a base64 sin prefijo.
3
Llame a POST /inference
Un único JSON con
image, info y logAnonymity.4
Aplique la regla de decisión
status === 200 && spoofing === false aprueba. Todo lo demás, no.Requisitos de la imagen
Convertir a base64
-w 0 evita los saltos de línea que base64 inserta cada 76 caracteres. Sin esa bandera la cadena llega partida y el servicio no puede decodificarla.
Cuerpo de la solicitud
El campo info en la respuesta
Aquí es donde más integraciones se rompen. info no siempre es del mismo tipo:
Resúelvalo en un solo lugar y nunca lea
info directamente:
Timeouts y reintentos
Antes de salir a producción
Una integración está lista cuando puede responder que sí a todo esto:- La decisión está escrita en positivo:
status === 200 && spoofing === false. - Ninguna rama decide sobre
errorCode,values,confidenceoinfo. infose lee a través de un único resolutor que contempla objeto, string ynull.- En lenguajes tipados,
infoestá declarado como tipo dinámico uObject. imageQualityy sus subcampos se leen como opcionales; ninguna clave se asume presente.- Las imágenes salen a 640 × 480 con calidad JPEG ≥ 95.
- Existe una validación previa que descarta imágenes menores a 224 × 224 antes de gastar una llamada.
- El base64 se genera sin prefijo
data:y sin saltos de línea. - El timeout está en 30 s.
- Los reintentos están limitados a 2 y solo para
499y500no deterministas. - El
idde cada transacción queda en su log, junto con el ambiente y la marca de tiempo. - La api-key vive solo en el backend y está en un gestor de secretos, no en el código.
- El equipo sabe que
422 No Face Detectedes un problema de captura y que422 Bad requestes un problema de código.
Respuestas
El siguiente paso: qué significa cada campo de la respuesta y cómo leer el diagnóstico.