> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/docs.facephi-pt-br/api-rest/identity-api/identity-api-reference/onboarding/morphology/document-validation/document-validation-start.md).

# Início da validação de documentos

Inicia o processo de validação morfológica de documentos de identidade enviando as **imagens do documento, país e tipo** de documento para analisar.

### Endpoint

```
POST /verify/documentValidation/start
```

### Cabeçalhos

| Nome          | Tipo   | Obrigatório | Descrição                                                   |
| ------------- | ------ | ----------- | ----------------------------------------------------------- |
| **x-api-key** | string | **Sim**     | API Key de autorização de acesso.                           |
| **family**    | string | Não         | Valor: **Onboarding**. Requerido com o serviço de Tracking. |

{% hint style="info" %}
Todas as chamadas aos Endpoints para Tracking com **Identity Platform** devem conter o header `family`.
{% endhint %}

### Corpo da solicitação

**Content-Type:** `application/json`

#### Parâmetros

| Parâmetro                 | Tipo   | Obrigatório | Descrição                                                                                                                                          |
| ------------------------- | ------ | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `country`                 | string | **Sim**     | Código do país **ISO 3166-1 alpha-3**.                                                                                                             |
| `idType`                  | string | **Sim**     | Tipo do documento fornecido. Valores possíveis: `PASSPORT`, `DRIVING_LICENSE`, `ID_CARD`, `VISA`                                                   |
| `frontsideImage`          | string | **Sim**     | Imagem codificada em **Base64**, aberta ou tokenizada, do lado frontal do documento.                                                               |
| `backsideImage`           | string | Não         | Imagem codificada em **Base64**, aberta ou tokenizada, do lado posterior do documento. Opcional para documentos de uma única face como `PASSPORT`. |
| `merchantIdScanReference` | string | Não         | Referência personalizada da operação. **Comprimento máximo: 100 caracteres.**                                                                      |
| `Tracking`                | object | Não         | Objeto que representa a informação de Tracking necessária.                                                                                         |
| `tracking.extraData`      | string | Não         | Token gerado pelo SDK Mobile/Web. Contém informações de Tracking tokenizadas com a Plataforma.                                                     |
| `tracking.operationId`    | string | Não         | Identificador de operação gerado pelo SDK Mobile/Web.                                                                                              |

#### Exemplo de solicitação

```json
{
  "country": "ESP",
  "idType": "ID_CARD",
  "frontsideImage": "BAMBAQLNHJoWGPjfeuDIzDXdZuP...",
  "backsideImage": "BAMBAQLNHJoWGPjfeuDIzDXdZuP...",
  "merchantIdScanReference": "my-scan-ref-001",
  "tracking": {
    "extraData": "BQABAQG2gBNjuHN4kLmPqYf7R...",
    "operationId": "123e4567-e89b-12d3-a456-426614174000"
  }
}
```

### Respostas

#### `200` Sucesso

#### Parâmetros de resposta

| Parâmetro       | Tipo   | Descrição                                                       |
| --------------- | ------ | --------------------------------------------------------------- |
| `timestamp`     | string | Carimbo de data/hora (UTC) da resposta no formato **ISO 8601**. |
| `scanReference` | string | **Número de referência** para cada escaneamento.                |
| `type`          | string | ⚠️ Valor **obsoleto**. Será removido em versões futuras.        |

#### Exemplo de resposta

```json
{
  "timestamp": "1970-01-01T00:00:00.000Z",
  "scanReference": "fe294c25-17e1-4d98-a958-710edbf00064",
  "type": "1"
}
```

#### `400` Bad Request

```json
{
  "status": 400,
  "title": "Requisição inválida",
  "detail": "Solicitação inválida.",
  "type": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400",
  "errors": []
}
```

#### `401` Não autorizado

```json
{
  "message": "Não autorizado"
}
```

#### `403` Proibido

```json
{
  "Message": "O usuário não está autorizado a acessar este recurso com uma negação explícita"
}
```

#### `502` Bad Gateway

```json
{
  "status": 502,
  "title": "Gateway inválido",
  "detail": "O servidor recebeu uma resposta inválida.",
  "type": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/502"
}
```

#### `504` Gateway Timeout

```json
{
  "message": "A requisição do Endpoint excedeu o tempo limite"
}
```
