Pular para o conteúdo principal

Revalidação Silenciosa

Atributos do PrepareInfo
AtributoTipoObrigatórioDescrição
externalUserIdStringIdentificador do usuário no seu sistema. Automaticamente hasheado com SHA-256 antes da transmissão, nunca enviado em texto simples.
Iniciando uma Revalidação Silenciosa
Passo 1 — Implementar initializeSDK

Crie uma nova classe/objeto UnicoSDK, com um método estático initializeSDK que retorna a instância do UnicoSDK, recebendo o context e um UnicoSDKConfig com seu sdkKey, bundleId e environment. Guarde a instância retornada — ela será necessária mais tarde para chamar startSilentValidation a partir do Java.

Chame no launch do aplicativo

UnicoSDK.initializeSDK deve ser chamado o mais cedo possível no launch do aplicativo (ex.: Application.onCreate). Chamá-lo mais tarde reduz o tempo de processamento em background e aumenta a chance de respostas de autenticação inconclusivas.

UnicoSDK.initializeSDK(
context,
UnicoSDKConfig(
sdkKey = "your_sdk_key",
bundleId = "your_bundle_id",
environment = Environment.UAT
)
)
Passo 2 — Implementar startSilentValidation

Depois do initializeSDK, associe a coleta já em andamento ao usuário identificado chamando startSilentValidation com um PrepareInfo contendo o externalUserId.

val prepareInfo = PrepareInfo(
externalUserId = "external_user_id"
)

UnicoSDK.startSilentValidation(prepareInfo)
.onSuccess { result -> /* ... */ }
.onFailure { error -> /* ... */ }

Se a validação ocorrer no início do fluxo, por exemplo, no login, aguarde o retorno do callback onSuccess antes de seguir para o Passo 3.

Passo 3 — Criar o processo e autenticar

Com a validação em andamento, crie o processo de verificação para concluir a autenticação. Consulte Referência de API ▸ API ▸ Criar Processo.

Inclua no corpo da requisição o mesmo externalUserId enviado no PrepareInfo do Passo 2 — é o que permite ao backend correlacionar a criação do processo com a validação já em andamento.

curl -X POST https://api.id.unico.app/processes/v1 \
-H "Authorization: Bearer $TOKEN" \
-H "APIKEY: $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject": {
"duiType": 1,
"code": "12345678909",
"name": "Luke Skywalker",
"gender": "M",
"birthDate": "2000-05-20",
"email": "[email protected]",
"phone": "5519725570707"
},
"useCase": "Onboarding",
"externalUserId": "external_user_id",
"imageBase64": "/9j/4AAQSkZJR..."
}'

A resposta inclui o campo silentAuth.result com o resultado da autenticação:

{
"id": "80371b2a-3ac7-432e-866d-57fe37896ac6",
"status": 3,
"silentAuth": {
"result": "yes"
}
}
CampoTipoDescrição
silentAuth.resultstringyes ou no — ver valores possíveis abaixo.
silentAuth.result — valores possíveis
ValorSignificado
yesAutenticação aprovada, usuário reconhecido com confiança suficiente, sem necessidade de captura adicional.
noDados insuficientes para aprovar silenciosamente. Recomenda-se autenticar por biometria (selfie) ou por outro método alternativo.