Pular para o conteúdo principal

Coletando os Retornos

A função startFaceRecon retorna uma Promise que resolve com um objeto já tipado — diferentemente do startOcr, não é necessário chamar JSON.parse().

Resolução da Promise

type FACE_RECON_RETURN_VALUES = {
image_key: string;
device_scan_session_id: string;
};
AtributoTipoDescrição
image_keystringChave de identificação da imagem fornecida, que pode ser utilizada em qualquer outro serviço do sistema QI Tech. Importante: armazene este valor para enviar nas APIs de validação (ex.: API de Onboarding).
device_scan_session_idstringChave de identificação da sessão de scan de dispositivo realizada internamente pelo SDK de Reconhecimento facial, que pode ser utilizada em qualquer outro serviço do sistema QI Tech.
{
"image_key": "5d0f0e1c-8f9e-4b6c-9c3d-2f8a1b4e7c10",
"device_scan_session_id": "a1b2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}

Rejeição da Promise

Em caso de falha, a Promise é rejeitada com um objeto do tipo FACE_RECON_ERROR:

type FACE_RECON_ERROR = {
status_code: number;
reason: string;
description: string;
};
AtributoTipoDescrição
status_codenumberCódigo HTTP do erro.
reasonstringIdentificador do motivo do erro.
descriptionstringDescrição detalhada do erro.

Erros mais comuns

reasonstatus_codedescription
INVALID_TOKEN401Authentication token expired or invalid — o client_session_key é inválido ou expirou.
USER_CANCELED0User canceled FaceRecon. — o usuário interrompeu o fluxo antes de concluí-lo.

Exemplo de tratamento

startFaceRecon(CAAS_ENVIRONMENT.SANDBOX, clientSessionKey)
.then((response) => {
console.log('Image Key: ', response.image_key);
console.log('Device Scan Session Id: ', response.device_scan_session_id);
})
.catch((error) => {
// Opcional: type assertion (cast) para FACE_RECON_ERROR.
// Recomendado para garantir type safety em TypeScript.
const reconError = error as FACE_RECON_ERROR;

console.error('Status:', reconError.status_code);
console.error('Reason:', reconError.reason);
console.error('Description:', reconError.description);
});