Visão geral
O relatório de correspondência facial regista uma comparação biométrica 1:1 entre a selfie em direto capturada durante a prova de vida e uma imagem de referência — mais frequentemente o retrato extraído do documento de identificação. Devolve uma pontuação de semelhança única de 0 a 100, URLs assinados para as duas imagens comparadas, a sessão de origem da imagem de referência e quaisquer avisos gerados pela correspondência. O relatório é gerado após o utilizador concluir tanto o passo de prova de vida como o passo de documento num fluxo (ou, no caso de fluxos baseados em retrato, como a autenticação biométrica, apenas após a prova de vida), ou diretamente através da API de correspondência facial autónoma quando fornece por si próprio duas imagens de rostos arbitrárias. Cada relatório inclui o seu própriostatus — independente do estado geral da sessão — que reflete como o passo de correspondência facial foi resolvido isoladamente:
- Aprovado — o
scoreestá acima do limiar de revisão e não foi acionado nenhum aviso de recusa automática. - Em Revisão — o
scoreestá entre os limiares de recusa e de revisão, ou não foi possível calcular nenhuma pontuação eface_match_not_computed_actionéREVIEW. - Recusado — o
scoreestá no limiar de recusa ou abaixo dele,NO_REFERENCE_IMAGEfoi acionado, ou não foi possível calcular nenhuma pontuação eface_match_not_computed_actionéDECLINE. - Reenvio solicitado — um revisor solicitou que o utilizador submetesse novamente este passo a partir da consola.
- Não concluído — o passo de correspondência facial ainda não produziu um resultado (incluindo enquanto o utilizador está a tentar novamente uma captura que falhou).
Onde surge nas respostas da API
O relatório de correspondência facial é incluído dentro do arrayface_matches[] — sempre um array JSON, nunca um objeto face_match singular. Fica a null até que pelo menos um passo de correspondência facial tenha produzido dados, e surgem múltiplas entradas quando um fluxo executa a correspondência facial mais de uma vez. Um fluxo de Adaptive Age Verification também o preenche quando é executada a alternativa de verificação de identidade: essa entrada reporta o nó de estimativa de idade como o seu node_id, uma vez que o fluxo não tem um nó de correspondência facial próprio.
- API de decisão de sessão —
GET /v3/session/{sessionId}/decision/devolveface_matches[]no nível superior. Consulte Obter decisão da sessão. - Webhooks — os payloads de
session.status.updatedincluem o mesmo arrayface_matches[]assim que o passo tiver produzido dados. Consulte Webhooks. - API de correspondência facial autónoma — para comparações diretas 1:1, consulte API de correspondência facial autónoma.
Leia
response.face_matches[0] e itere pelo array — a estrutura singular face_match referida em alguns tutoriais mais antigos não existe no endpoint de decisão da v3.Esquema
O esquema canónico campo a campo encontra-se na página de referência Modelos de dados. Os campos abaixo refletem esse esquema canónico.Valores de estado
As falhas por baixa semelhança são novamente tentadas antes de o estado se tornar definitivo: o utilizador pode efetuar até
face_match_max_attempts capturas (3 por predefinição), e apenas a pontuação da tentativa final é aplicada. Regras de estado personalizadas configuradas no nó do fluxo podem ajustar ainda mais o estado resultante, combinando-se com o estado derivado da pontuação sob a precedência Declined > In Review > Approved.
Exemplos
Aprovado — correspondência limpa
Em Revisão — semelhança limítrofe
Recusado — sem imagem de referência para comparação
Nota de segurança
Os URLs assinados parasource_image e target_image constituem dados biométricos e expiram após uma janela de validade curta. Trate-os como efémeros: não os guarde em cache nem os exponha publicamente. Normalmente, a sua aplicação apenas precisa de status e score — armazene o mínimo possível para minimizar os dados biométricos nos seus servidores.
Relacionado
- Avisos de correspondência facial — enum completo de avisos, causas e remediação.
- Relatório de prova de vida — o passo a montante que captura a imagem de destino.
- Webhooks — monitorize
session.status.updatedpara receber o relatório. - Modelos de dados — Correspondência facial — esquema canónico com todos os campos.