Skip to main content
Este guia mostra a API pública do LivenessFacetecSDK v10 e o fluxo completo de uma verificação no browser. O bundle expõe window.LivenessFacetecSDK com uma fábrica que cria a instância do SDK. A única interface que você precisa conhecer é a FaceTecSDKConfig — o objeto de configuração que você passa para executar uma verificação.
sdk.run(config) orquestra o fluxo completo (inicialização, captura, submissão e limpeza) em uma única chamada e resolve com o LivenessResult da verificação. Não há um elemento de montagem — a captura abre como camada full-screen sobre a página.

Configuração

Como o onInit funciona

O SDK chama onInit antes de abrir a captura, passando metadados de dispositivo coletados pelo Shield Web SDK:
Você repassa esse metadado ao seu backend e devolve ao SDK os dois tokens da sessão:
Nem sempre o SDK consegue obter o ssid — depende de conectividade e do ambiente de execução. Repasse-o ao seu backend quando estiver presente; quando ausente, o serviço cria a sessão normalmente. Veja Serviço.
Não existe mais maxAttempts nem uma segunda tela de retry dentro da mesma sessão. Para tentar de novo após uma falha, chame sdk.run() outra vez — isso reaproveita a instância já inicializada e cria uma sessão nova automaticamente.

Fluxo de uso

1

Crie a instância do SDK

Logo após o bundle ser carregado, crie a instância. Você pode reaproveitá-la em múltiplas capturas — inclusive em retries.
2

Implemente o onInit chamando o seu backend

O onInit é um async que devolve { sessionId, sessionToken }. Encaminhe os sessionParams recebidos para o seu endpoint:
3

Dispare a verificação

4

Trate o resultado

Use sessionId para reconciliar a captura no seu backend. Se verified === false, exiba mensagem ao usuário e ofereça nova tentativa (chamando sdk.run() de novo) — não é um erro técnico, é uma reprovação biométrica.

Campos de LivenessResult

Quando a captura termina com sucesso, o SDK emite o objeto abaixo via onSuccess (e também resolve a Promise de run com ele):

Outros métodos do SDK

Preload

preload() é uma função independente (não é um método da instância criada por createFaceTecSDK()) que busca antecipadamente tudo o que run() vai precisar: o script vendor do FaceTec e a inicialização do Shield, em paralelo. Nenhum dos dois depende de sessão — por isso pode rodar bem antes de qualquer captura começar.
Você normalmente não precisa chamar isso. O próprio bundle já executa preload() automaticamente assim que o <script> termina de carregar.
Chame manualmente apenas se você carrega o <script> do SDK de forma tardia (ex.: injetado dinamicamente só quando o usuário chega perto da etapa de verificação) e quer adiantar o carregamento do motor FaceTec para antes disso — por exemplo, assim que o usuário entra em uma tela anterior do seu fluxo:
É seguro chamar mais de uma vez (as buscas internas são cacheadas/idempotentes) e seguro ignorar a Promise retornada.

Exemplo completo

Próximos passos

Customização

Locales, textos e tema visual da UI

Solução de problemas

Mapeamento de erros e diagnóstico