# Documentação de Integração WebHook - Liveness 2.0
# Visão Geral
Esta documentação descreve o processo de integração do autorizador com o WebHook do componente de verificação do Liveness 2.0 da BioDoc. O autorizador será responsável por gerar tokens de autenticação para seus clientes e configurar um listener para receber eventos do POST-event do WebHook.
# 1. Configuração do WebHook
O parâmetro Integração via WebHook será informado pelo cliente no painel de configurações da empresa e ficará disponível para parametrização quando o Liveness 2.0 for ativado.
Quando o WebHook estiver habilitado, o fluxo de comunicação utilizará essa URL.
Se estiver desabilitado, o fluxo seguirá pelo parâmetro
URL(enviado como querystring na abertura do frame).
# 2. Autenticação
Cada operadora pode adicionar um token de acesso, gerado e armazenado na plataforma BioDoc quando o WebHook for ativado no painel de configurações. Esse token deve ser disponibilizado pelo autorizador da operadora cliente, para caso seja implementado essa forma adicional de segurança.
Esse token é opcional e será utilizado na autenticação da requisição enviada à URL configurada, garantindo segurança na comunicação.
# 2.1. Estrutura do Token
O token deve ser uma string única gerada pelo autorizador.
Deve ser armazenado pelo autorizador de forma segura.
O cliente deve poder visualizar o token em seu painel, mas sempre mascarado no campo Token para autenticação do Webhook no painel de configurações.
# 3. Configuração do Listener para Receber o WebHook
O autorizador deve disponibilizar um endpoint HTTP para receber os eventos do WebHook enviados pelo sistema da BioDoc.
# 3.1. Endpoint esperado
| Campo | Detalhe |
|---|---|
| Método | POST |
| URL | Definida pelo autorizador (deve ser informada no campo URL de comunicação do WebHook no painel de configurações da empresa) |
| Cabeçalho | Authorization: Bearer <TOKEN_DO_CLIENTE> |
Content-Type: application/json |
# 3.2. Corpo da Requisição (Payload JSON)
A BioDoc enviará um payload JSON com os seguintes dados:
{
"confidence": "98",
"date": "2025-02-04T12:34:56Z",
"response": 200,
"message": "Liveness verificado com sucesso",
"card": "1234567890",
"image": "URL para download da imagem",
"Success": true,
"LogID": "b6f2e300-123b-4b7d-bfa0-6ce5a2b86cd1"
}
# 3.3. Validação da Requisição
O autorizador deve validar o token presente no cabeçalho
Authorization.Caso o token seja inválido ou inexistente, a requisição não deve ser enviada.
Se Integração via WebHook estiver ativado e o token for inválido ou inexistente, a requisição deve ser rejeitada com status 401 Unauthorized.
# 3.4. Respostas Esperadas (Status HTTP)
| Status HTTP | Descrição |
|---|---|
| 200 OK | Requisição processada com sucesso |
# 3.5. Códigos de Resposta da Operação (Campo response no Payload)
Estes são os códigos que podem ser retornados no campo "response" do payload JSON, indicando o resultado da operação de Liveness:
| Código | Mensagem |
|---|---|
| 200 | 'Face Reconhecida' |
| 201 | 'Cadastro realizado com sucesso!' |
| 202 | 'Alteração de foto solicitada com sucesso!' |
| 203 | 'Validação mediante Justificativa: [justificativa]' |
| 400 | 'Face não reconhecida.' |
| 401 | 'Face não reconhecida.' |
# 4. Fluxo de Operação
O cliente do autorizador inicia a verificação no Liveness 2.0.
A BioDoc envia o resultado da verificação para a Integração via WebHook informada.
O autorizador recebe o POST-event e valida o token de autenticação.
O autorizador processa os dados e encerra a sessão de verificação conforme sua lógica interna.
# 5. Considerações Finais
O campo Integração via WebHook é opcional, mas caso ativado, a resposta do Liveness 2.0 será enviada para ele, substituindo o callback padrão.
O autorizador deve garantir alta disponibilidade do seu listener para evitar perda de eventos.
Recomendamos a implementação de logs e monitoramento para identificar eventuais falhas na comunicação.
Se Integração via WebHook estiver ativado, o callback para
URLnão será acionado.Definir um timeout na requisição para evitar travamentos caso a URL configurada esteja indisponível.
Caso haja dúvidas sobre a implementação, entre em contato com nosso suporte técnico.