Pular para o conteúdo principal

Referência de API

Escolhendo um contrato

A escolha do contrato é uma consequência de onde a captura biométrica acontece — não uma decisão independente. Use a tabela abaixo como guia.

ContratoUse quando…CapturaFluxo
Web & SDKA jornada de captura é hospedada pela Unico (Web iFrame, Redirect ou SDK nativo)Unico controlaO processo é criado antes da captura → usuário passa pela jornada → resultado retorna via callback ou polling
APISua aplicação controla a captura (com ou sem o SDK da Unico) e envia a imagem diretamente na chamadaCliente controlaImagem é enviada junto com a criação do processo → resultado retorna de forma síncrona
Magic Link (Mexico)KYC onboarding no México (INE + selfie + liveness)Magic LinkBackend cria o link → usuário acessa via WhatsApp / SMS → resultado retorna via webhook
Contratos coexistentes

Os três contratos são APIs distintas com hosts, autenticação e payloads diferentes. Não existe um único endpoint que atenda aos três casos.

Hosts e ambientes
ContratoHost sandboxHost produção
Web & SDKhttps://api.idcloud.uat.unico.apphttps://api.idcloud.unico.app
APIhttps://api.id.uat.unico.apphttps://api.id.unico.app
Magic Link (Mexico)https://sandbox.trully.aihttps://api.trully.ai
OAuth2 / Tokenhttps://identityhomolog.acesso.iohttps://identity.acesso.io

Detalhes completos em Ambientes.

Autenticação

Todos os contratos Unico (Web & SDK e API) usam Bearer token (JWT) obtido via OAuth2 com urn:ietf:params:oauth:grant-type:jwt-bearer. A integração Magic Link do México usa uma API Key no header x-api-key.

Detalhes completos em Autenticação.

Diferenças de payload entre contratos

A mesma operação conceitual ("criar um processo de verificação de identidade") tem aparência diferente em cada contrato. Use as tabelas abaixo como referência rápida ao migrar entre integrações.

Criação de processo

AspectoWeb & SDKAPIMagic Link (Mexico)
EndpointPOST /client/v1/processPOST /processes/v1POST /v2/magic-link
AuthAuthorization: Bearer <jwt>Authorization: Bearer <jwt> + APIKEYx-api-key: <key>
ImagemNão enviada (capturada pela jornada da Unico)Enviada como imageBase64Não enviada (capturada via Trully)
Identificação do usuárioperson.duiType + person.duiValuesubject.code (CPF / CURP)external_id
Tipos de documentoCPF, CURP, SSN, NIN, DNI, NIKSomente CPF, CURPSomente INE (México)
Definição do pipelineflow (enum, 30+ valores)Implícito na APIKEY (capacidades)Implícito (KYC fixo)
CallbackcallbackUri (redirecionamento do usuário)Nenhum (síncrono)metadata.redirect_url
WebhookWebhook v1 (resultado final)Webhook v1 (opcional)Webhook v2 (eventos por etapa)
Retorna URL da jornadaSim (userRedirectUrl)NãoSim (magic_link_url)
ResultadoAssíncrono (polling via GET ou webhook)Síncrono (na resposta)Assíncrono (webhook + GET)
Token SDKSim (token, webAppToken)NãoNão

Recuperação do resultado

AspectoWeb & SDKAPIMagic Link (Mexico)
EndpointGET /client/v1/process/\{id\}GET /processes/v1/\{id\} (também na resposta de criação)GET /v2/history/request?magic_link_token={token}
Statusstate + result (enums com prefixo)status (1, 3, 5)status ("ok", etc.)
Estrutura do resultadoAninhada em process.authenticationInfo.{capability}ResultPlana: unicoId, liveness, government, identityFraudstersdata.result (específico Trully)
Documentoservices[].documents[] (RG/CNH com OCR)Endpoint separado (GET /processes/v1/\{id\}/document)INE retornado em data
Próximos passos