# Falha de Validação

A requisição está bem formada, mas contém dados inválidos ou viola regras de negócio. Verifique o array `errors` para detalhes sobre cada campo inválido.

**HTTP Status:** `422 Unprocessable Entity`

## Códigos de Erro

| Código | Descrição |
|  --- | --- |
| `missing_required_field` | Um campo obrigatório está ausente |
| `invalid_cpf` | O número de CPF não é válido |
| `invalid_cnpj` | O número de CNPJ não é válido |
| `invalid_email` | O endereço de email não é válido |
| `invalid_phone` | O número de telefone não é válido |
| `invalid_document_type` | O tipo de documento não é reconhecido |
| `invalid_file_format` | O formato do arquivo enviado não é suportado |
| `invalid_amount` | O valor solicitado está fora do intervalo permitido |
| `invalid_installments` | O número de parcelas não é válido para esta oferta |
| `offer_expired` | A oferta de crédito expirou |
| `offer_already_accepted` | Esta oferta de crédito já foi aceita |
| `simulation_mismatch` | Os parâmetros do empréstimo não correspondem à simulação |
| `kyc_incomplete` | O KYC do cliente não está completo (não é possível criar empréstimo) |
| `biometrics_not_required` | A verificação biométrica não é necessária para este cliente |
| `field_not_updatable` | O campo especificado não pode ser atualizado |
| `invalid_url` | A URL fornecida não é válida |
| `invalid_events` | A lista de eventos do webhook contém tipos de evento inválidos |
| `invalid_status` | O valor de status fornecido não é válido |
| `invalid_expire_current_in` | O valor de expiração da rotação de secret não é válido |


## Exemplo de Resposta

```json
{
  "type": "https://docs.dinie.com/errors/validation-failed",
  "title": "Validation Error",
  "status": 422,
  "detail": "One or more required fields are missing.",
  "code": "missing_required_field",
  "errors": [
    {
      "code": "missing_required_field",
      "param": "cpf",
      "detail": "The cpf field is required."
    }
  ]
}
```

## Como Resolver

- **`missing_required_field`** -- Verifique o array `errors` para saber quais campos estão ausentes e inclua-os.
- **`invalid_cpf` / `invalid_cnpj`** -- Valide o número do documento localmente antes de enviar. CPF possui 11 dígitos; CNPJ possui 14.
- **`invalid_email` / `invalid_phone`** -- Verifique se o formato corresponde ao padrão esperado.
- **`invalid_document_type` / `invalid_file_format`** -- Consulte a documentação da API para tipos de documento e formatos de arquivo suportados.
- **`invalid_amount`** -- Verifique os valores `min_amount` e `max_amount` da oferta e ajuste sua requisição.
- **`invalid_installments`** -- Use o valor da oferta de crédito ou simulação.
- **`offer_expired`** -- Solicite uma nova oferta de crédito. Ofertas possuem um período de validade limitado.
- **`offer_already_accepted`** -- Cada oferta só pode ser usada uma vez. Aguarde uma nova oferta.
- **`simulation_mismatch`** -- O valor do empréstimo, prazo e outros parâmetros devem corresponder exatamente à simulação.
- **`kyc_incomplete`** -- Certifique-se de que o cliente completou todas as etapas de KYC obrigatórias antes de criar um empréstimo.
- **`biometrics_not_required`** -- Não inicie biometria para este cliente; não faz parte do fluxo de KYC dele.
- **`field_not_updatable`** -- Este campo não pode ser alterado após a criação.
- **`invalid_url`** -- Certifique-se de que a URL do webhook usa HTTPS e está bem formada.
- **`invalid_events`** -- Consulte a lista de eventos de webhook disponíveis na documentação.
- **`invalid_status`** -- Use um dos valores de status válidos para este recurso.
- **`invalid_expire_current_in`** -- O valor deve estar entre 0 e 86400 segundos (24 horas).


## Veja Também

- [Guia de Tratamento de Erros](/apis/concepts/errors) -- Padrões completos de tratamento de erros e exemplos de código