LivenessFailureError
Toda falha técnica chega via onFailure(error: LivenessFailureError):
LivenessErrorType
error.type é um dos valores abaixo:
Exemplo de tratamento
Estados do SDK
onProgress(state: HubState) permite acompanhar o ciclo de vida visual:
Problemas comuns
window.LivenessFacetecSDK é undefined
O script do CDN não carregou ou está sendo executado antes do <script> do SDK. Confira:
- A tag
<script>aparece antes do código que usawindow.LivenessFacetecSDK. - O domínio
cdn.hub-liveness-service.appestá acessível (não bloqueado por proxy/CSP).
Refused to load the script (CSP)
Sua política de segurança bloqueou o CDN ou o bucket do vendor. Permita:
Câmera não aparece, sem prompt de permissão
A página precisa rodar em contexto seguro (https:// ou localhost). Em http:// (com host diferente de localhost), getUserMedia é silenciosamente desabilitado e o SDK aborta com CAMERA_PERMISSION_DENIED sem mostrar a UI nativa do browser.
CORS ao chamar o backend a partir do onInit
O fetch do onInit parte do navegador para o seu backend — não para a Plataforma ID. Configure CORS no seu endpoint para aceitar o origin onde a página está hospedada.
SESSION_FAILED logo no início
Geralmente é o onInit rejeitando ou retornando um payload inválido. Confirme:
- O endpoint do seu backend devolve exatamente
{ sessionId, sessionToken, facetecSessionToken }(não devolva ax-api-key, não devolva campos extras desnecessários). - O status HTTP é
2xx. - A
x-api-keyque o backend usa está válida — veja Serviço.
Captura passa, mas resultado vem verified: false
Não é erro técnico. O backend reprovou o liveness (livenessCheck = false). Trate como negativa de verificação: mostre mensagem ao usuário e ofereça nova tentativa. Os campos *Check indicam qual validação falhou.
Verificação de saúde
1
Cheque a versão carregada
console.log(window.LivenessFacetecSDK.SDK_VERSION) — confirma que o bundle foi avaliado.2
Confirme o backend embutido
Abra DevTools → Network e dispare uma captura. A request de criação de sessão deve sair para
https://facetec.hub-liveness-service.app/...3
Valide o onInit
Imprima o retorno do seu
onInit antes de devolver — o objeto deve ter exatamente sessionId, sessionToken e facetecSessionToken como strings não vazias.4
Confirme conectividade com o vendor
Em DevTools → Network, deve aparecer um GET a
https://storage.googleapis.com/public-hub-liveness/core-sdk/... (vendor FaceTec sendo carregado).5
Logs detalhados
Filtre o console por
[FaceTecSDK] ou [Hub] para inspecionar a sequência de inicialização.Próximos passos
Implementação
Volte para a referência de uso do SDK
Customização
Veja como personalizar a UI