Pular para o conteúdo principal
Quickstart

De um host vazio até o seu primeiro processo criado e consultado, em poucos minutos.

Markdown

Esta página executa o Human Plugin junto com um container PostgreSQL descartável, para um início rápido no seu ambiente. Para fazer o deploy, veja Docker Compose ou Kubernetes.

Pré-requisitos​

  • Docker 24 ou superior, em linux/amd64 ou linux/arm64 (o Docker Desktop no macOS funciona).
  • As credenciais do registry e a chave de acesso da Unico. Veja Pré-requisitos e acesso.

1. Obtenha a imagem​

Faça login no registry da Unico com o seu usuário e token, uma vez por host:

echo "<token>" | docker login pkg.unico.run -u <username> --password-stdin
docker pull pkg.unico.run/human-plugin-api:latest

2. Inicie o PostgreSQL e o Human Plugin​

docker network create human-plugin
docker run -d --name human-plugin-db --network human-plugin \
-e POSTGRES_USER=human_plugin -e POSTGRES_PASSWORD=human_plugin -e POSTGRES_DB=human_plugin \
postgres:16

Defina a sua chave de acesso no shell e depois inicie o Human Plugin:

export HUMAN_API_ACCESS_KEY='<your access key>'
docker run -d --name human-plugin --network human-plugin --stop-timeout 60 -p 127.0.0.1:8080:8080 \
-e HUMAN_API_ACCESS_KEY \
-e POSTGRES_ADDRESS_HOST=human-plugin-db \
-e POSTGRES_USER=human_plugin \
-e POSTGRES_PASSWORD=human_plugin \
-e POSTGRES_SSL_MODE=disable \
pkg.unico.run/human-plugin-api:latest

POSTGRES_SSL_MODE=disable serve apenas para este banco local. Mantenha o padrão, require, em qualquer outro. Veja Configuração.

Verifique se o Human Plugin está pronto:

curl --fail http://127.0.0.1:8080/health/ready

Você deve ver {"status":"ok"}. Se o comando falhar, docker logs human-plugin mostra o motivo.

3. Crie um processo​

Escolha um dos fluxos. clientId, correlationId e credential são os mesmos em todos os fluxos.

A pessoa tira a selfie na jornada de captura. A resposta traz o link para ela.

curl -s -X POST http://127.0.0.1:8080/v1/processes \
-H 'Content-Type: application/json' \
-d '{
"flow": "humantoken",
"clientId": "client-a",
"correlationId": "quickstart-001",
"credential": { "type": "DUI_TYPE_NG_BVN", "value": "<document number>" },
"callbackUri": "https://example.com/callback"
}'
{
"id": "b063041c-7529-4e70-a2b4-c71c00f19801",
"state": "PROCESS_STATE_CREATED",
"token": "<SDK token>",
"link": "https://…"
}

Abra o link em um celular e tire a selfie. O token e o link são retornados somente aqui: o Human Plugin não os armazena.

  • id é o id próprio do Human Plugin para o processo. Guarde-o: é a única forma de ler o processo depois.
  • correlationId é a sua referência e precisa ser único. Reutilizar um retorna 409 CORRELATION_ID_ALREADY_USED.
  • credential é o documento da pessoa. Envie null quando não houver. Os tipos que você pode usar estão no catálogo de atributos.
  • data.humanToken diz quem é a pessoa, e data.ndocs é a inteligência da pessoa: o que ela já fez com você. Veja Inteligência.
  • Com uma Journey, o processo finalizado também tem data.liveness: live quando a captura veio de uma pessoa viva, not_live quando não veio. Veja O resultado em data.

4. Leia de volta​

Substitua o id pelo da sua resposta:

curl -s http://127.0.0.1:8080/v1/processes/b063041c-7529-4e70-a2b4-c71c00f19801

Uma Journey permanece em PROCESS_STATE_CREATED até a pessoa concluir a captura. Leia de novo depois disso: a resposta passa para PROCESS_STATE_FINISHED, com data.humanToken, data.liveness e data.ndocs. Confirme que data.liveness.value é live antes de confiar no resultado.

5. Limpe o ambiente​

docker rm -f human-plugin human-plugin-db && docker network rm human-plugin

Próximos passos​