Riv.IA EYE API
Verificação visual de identidade via API REST: prova de vida, comparação facial, anti-spoof e detecção de elementos — tudo em uma única chamada autenticada por Bearer Token.
https://api.riv.ia.brhttps://dev.riv.ia.brComo usar a API
Todos os endpoints exigem um Bearer Token. Gere o token primeiro e inclua-o no header de cada requisição.
- 1
Gerar token
Autentique com client_id e client_secret para receber o Bearer Token.
- 2
Enviar selfie
Faça POST em /eye/v1/verify com a selfie e os checks desejados.
- 3
Receber veredito
Resposta JSON explicável com o veredito agregado approved.
Autenticação
Use suas credenciais para gerar um Bearer Token de curta duração. Inclua-o no header Authorization: Bearer <token> em todas as chamadas subsequentes.
Troca suas credenciais por um Bearer Token de acesso.
Body (application/json)
client_idstringobrigatórioclient_secretstringobrigatórioExemplo de requisição
curl -X POST https://api.riv.ia.br/auth/v1/tokens/generate \ -H "Content-Type: application/json" \ -d '{"client_id":"SEU_CLIENT_ID","client_secret":"SEU_CLIENT_SECRET"}'
Resposta — 200 OK
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR...",
"token_type": "Bearer",
"expires_in": 3600
}Riv.IA EYE
Ponto de entrada único para verificação visual. Combine os checks que precisar — o veredito approved é a conjunção de todos os checks solicitados.
Executa, em uma única chamada, qualquer combinação de liveness, face_match, authenticity e element_detection sobre a mesma selfie (e documento, quando aplicável).
Headers
Authorizationstringobrigatório/auth/v1/tokens/generate. Formato: Bearer <token>.Body (multipart/form-data)
selfiefileobrigatóriochecksstringobrigatórioliveness, face_match, authenticity, element_detection.documentfiledetection_requeststring (JSON)element_detection é solicitado. Ex.: {"elements":[{"type":"object","description":"crachá","required":true}]}.Exemplos de requisição
Escolha um cenário para ver o cURL correspondente. Use https://api.riv.ia.br (produção) ou https://dev.riv.ia.br (dev).
curl -X POST https://api.riv.ia.br/eye/v1/verify \ -H "Authorization: Bearer $RIVIA_KEY" \ -F "selfie=@selfie.jpg" \ -F "checks=liveness"
{
"success": true,
"approved": true,
"checks": ["liveness"],
"liveness": {
"resultado": true,
"person_present": true,
"confidence": 0.93,
"detalhes": []
},
"message": "Verificação aprovada."
}Apenas os checks solicitados em checks retornam um objeto preenchido — os demais campos vêm como null ou são omitidos.
Campos da resposta
successbooleanapprovedbooleanchecksstring[]livenessobject | nullface_matchobject | nullauthenticityobject | nullelement_detectionobject | nullmessagestring | nullCódigos de status
200OK400Bad Request401Unauthorized422Validation Error500Internal Server ErrorNotas de comportamento
checksé uma lista (CSV) do que você quer executar. Apenas os checks pedidos vêm preenchidos; o restante volta comonull.approvedé o AND lógico dos checks solicitados (resultado ∧ same_person ∧ is_authentic ∧ all_required_found).documenté obrigatório apenas comface_match;detection_requesté obrigatório apenas comelement_detection. Caso contrário a API retorna422.- Os checks rodam em paralelo. Pedir
liveness+authenticityjuntos consome uma única inferência (short-circuit). - Formatos de imagem aceitos: JPG, PNG, GIF, BMP, WEBP, DNG (máx. 10MB cada).
Pronto para integrar?
Fale com nosso time para receber credenciais de sandbox e iniciar sua integração com o Riv.IA EYE.
Solicitar credenciais →