Skip to main content
POST
/
api
/
v1
/
onboarding
/
enroll
Nova análise de cadastro
curl --request POST \
  --url https://flex-hml.flexdoc-apis.com.br/services/api/v1/onboarding/enroll \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form 'cpf=<string>' \
  --form imageFront='@example-file' \
  --form 'email=<string>' \
  --form 'phone=<string>' \
  --form 'zipCode=<string>' \
  --form imageBack='@example-file' \
  --form imageSelfie='@example-file' \
  --form 'callBackUrl=<string>' \
  --form 'basicAuth=<string>'
{
  "onboardingId": "onb-123456",
  "cpf": 12345678900,
  "customerId": "flexdoc",
  "status": "STARTED",
  "statusReason": "Documentos ilegíveis",
  "faceMatch": {
    "similarity": 92.5,
    "match": true
  },
  "basicData": {
    "useTerms": true,
    "acceptedTermVersion": 1,
    "firstName": "João",
    "fullName": "João da Silva",
    "cep": "01000000",
    "city": "São Paulo",
    "state": "SP",
    "email": "[email protected]",
    "emailToken": "abc123def456",
    "emailConfirmed": false,
    "emailTokenExpiresAt": "2025-05-01T12:00:00",
    "cellphone": 67991234567,
    "smsToken": 7891011,
    "tokenConfirmed": false,
    "smsTokenExpiresAt": "2025-05-01T12:00:00"
  },
  "scoreData": {
    "cpf": 12345678901,
    "customerId": "CUST_123456",
    "score": 85,
    "hardStop": false,
    "penalties": [
      {
        "rulesName": "RULE_01",
        "rulesPenalty": 15,
        "hardStop": false,
        "message": "CNH com menos de 2 meses para vencer"
      }
    ],
    "statistics": {
      "batchId": 12345,
      "methodName": "analyzeDocument",
      "totalTime": 1500
    }
  },
  "ocrData": {
    "typeRecognized": "rg",
    "typeParentAlias": "di",
    "digitalDocument": true,
    "fields": [
      {
        "key": "nome",
        "value": "João da Silva",
        "conf": 0.95,
        "bbox": [
          12,
          34,
          56,
          78
        ],
        "fields": "<unknown>"
      }
    ],
    "errorMessage": "Falha ao processar imagem: formato inválido"
  }
}

Authorizations

Authorization
string
header
required

Autentica o acesso a partir de usuário e senha e retorna o Bearer token JWT. Copie o access_token retornado e utilize-o no header Authorization para acessar os endpoints da API.

Body

multipart/form-data

Dados multipart contendo campos pessoais e arquivos de imagem (frontal, verso e selfie).

Payload para cadastro de onboarding, contendo dados pessoais, documentos codificados e configurações de callback.

cpf
string
required

CPF (somente números).

imageFront
file
required

Frente do documento, frente/verso unificados ou PDF (PDF, JPG ou PNG).

email
string

E-mail.

phone
string

Telefone (somente números).

zipCode
string

CEP (somente números).

imageBack
file

Verso do documento (PDF, JPG ou PNG).

imageSelfie
file

Selfie (PDF, JPG ou PNG).

callBackUrl
string

URL de callback (WebHook).

basicAuth
string

Basic Authorization (WebHook).

Response

Onboarding concluído com sucesso.

Resultado do processo de onboarding, incluindo identificadores e dados de validação.

onboardingId
string

Identificador único do processo de onboarding.

Example:

"onb-123456"

cpf
string

CPF da pessoa.

Example:

12345678900

customerId
string

Identificador do cliente no sistema.

Example:

"flexdoc"

status
enum<string>

Status atual do onboarding.

Available options:
STARTED,
PENDING,
PROCESSING,
ANALYSIS,
DONE,
REJECTED,
CANCELED,
ERROR,
BLACKLISTED,
RESOLVED
Example:

"STARTED"

statusReason
string

Motivo do status, em caso de falha ou bloqueio.

Example:

"Documentos ilegíveis"

faceMatch
object

Resultado da comparação facial, contendo o nível de similaridade e o indicador de correspondência.

basicData
object

Dados básicos do usuário extraídos durante o processo de onboarding.

scoreData
object

Resultado da análise de score do processo de onboarding, incluindo penalidades e estatísticas.

ocrData
object

Resultado da extração OCR, contendo tipos, campos extraídos, estatísticas e eventual mensagem de erro.