> ## Documentation Index
> Fetch the complete documentation index at: https://docs.deepxl.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Verificação de Identidade

> Verifique a identidade comparando um documento de identidade com uma selfie em imagem ou vídeo

O Modelo ID-Selfie verifica a identidade de uma pessoa comparando o documento de identidade com uma selfie em imagem ou vídeo. Ele realiza correspondência facial e verificações anti-spoofing.

## Como funciona

1. Envie um **documento de identidade** (passaporte, carteira de motorista etc.)
2. Envie uma **selfie em imagem ou vídeo** da pessoa
3. A API compara os rostos e executa verificações anti-spoofing
4. Você recebe um booleano `verified` e verificações técnicas detalhadas

## Verificando a identidade

Envie ambos os arquivos via `POST /v1/verification`:

```bash theme={null}
curl -X POST https://api.deepxl.ai/v1/verification \
  -H "x-api-key: YOUR_API_KEY" \
  -F "idFile=@passport.jpg" \
  -F "selfieFile=@selfie.jpg" \
  -F 'tags={"customerId":"9999","customerName":"Acme Corp","documentId":"DOC-001","companyName":"DeepXL","companyId":"COMP-001"}'
```

### Parâmetros

| Parâmetro    | Tipo   | Obrigatório | Descrição                                                                                                                  |
| ------------ | ------ | ----------- | -------------------------------------------------------------------------------------------------------------------------- |
| `idFile`     | file   | Sim         | Imagem do documento de identificação (passaporte, carteira de motorista etc.)                                              |
| `selfieFile` | file   | Sim         | Imagem de selfie ou vídeo da pessoa                                                                                        |
| `tags`       | string | Não         | Objeto JSON com pares chave-valor de metadados                                                                             |
| `country`    | string | Não         | Dica opcional de país. Valores compatíveis: `us`, `mx`, `br`. Valores ausentes, vazios ou inválidos assumem o padrão `us`. |

### Tipos de arquivo suportados

**Documento de identidade:** jpg, jpeg, png, webp

**Selfie:** jpg, jpeg, png, webp, mp4 (vídeo)

## Estrutura de resposta

```json theme={null}
{
  "result": {
    "verificationId": 5,
    "idFileType": "jpeg",
    "idFileName": "passport.jpg",
    "idFileSize": 174112,
    "selfieFileType": "jpeg",
    "selfieFileName": "selfie.jpg",
    "selfieFileSize": 250118,
    "timestamp": 1770984835,
    "timestampISO": "2026-02-13T13:13:55.213189",
    "model": "verification",
    "modelVersion": "1.0.0",
    "verified": true,
    "modelResults": {
      "technicalChecks": [
        {
          "checkType": "face_detection",
          "faceCount": { "id": 2, "selfie": 1 },
          "idFaces": [
            {
              "faceId": "face_1",
              "detectionConfidence": 0.9992,
              "landmarks": {
                "nose": { "x": 257.7, "y": 946.13 },
                "left_eye": { "x": 287.49, "y": 911.67 },
                "right_eye": { "x": 227.69, "y": 911.25 },
                "mouth_left": { "x": 283.88, "y": 971.12 },
                "mouth_right": { "x": 232.78, "y": 971.0 }
              },
              "boundingBox": { "x1": 195, "x2": 318, "y1": 838, "y2": 1013 }
            },
            {
              "faceId": "face_2",
              "detectionConfidence": 0.9865,
              "landmarks": {
                "nose": { "x": 696.46, "y": 885.83 },
                "left_eye": { "x": 701.44, "y": 879.83 },
                "right_eye": { "x": 690.77, "y": 880.29 },
                "mouth_left": { "x": 701.06, "y": 891.11 },
                "mouth_right": { "x": 692.61, "y": 891.52 }
              },
              "boundingBox": { "x1": 684, "x2": 707, "y1": 866, "y2": 898 }
            }
          ],
          "selfieFaces": [
            {
              "faceId": "face_1",
              "detectionConfidence": 0.9985,
              "landmarks": {
                "nose": { "x": 724.91, "y": 807.64 },
                "left_eye": { "x": 803.63, "y": 708.27 },
                "right_eye": { "x": 649.76, "y": 710.14 },
                "mouth_left": { "x": 793.35, "y": 871.12 },
                "mouth_right": { "x": 659.28, "y": 871.8 }
              },
              "boundingBox": { "x1": 569, "x2": 884, "y1": 523, "y2": 986 }
            }
          ]
        }
      ]
    },
    "tags": [
      { "name": "customerId", "value": "9999" },
      { "name": "customerName", "value": "Acme Corp" },
      { "name": "documentId", "value": "DOC-001" },
      { "name": "companyName", "value": "DeepXL" },
      { "name": "companyId", "value": "COMP-001" }
    ],
    "files": [
      {
        "category": "id",
        "fileName": "passport.jpg",
        "fileSize": 174112,
        "contentType": "image/jpeg",
        "timestamp": 1770984835,
        "timestampISO": "2026-02-13T13:13:55.213189",
        "url": "https://api.deepxl.ai/v1/files/v_id_5_passport.jpg"
      },
      {
        "category": "face",
        "fileName": "selfie.jpg",
        "fileSize": 250118,
        "contentType": "image/jpeg",
        "timestamp": 1770984835,
        "timestampISO": "2026-02-13T13:13:55.213189",
        "url": "https://api.deepxl.ai/v1/files/v_face_5_selfie.jpg"
      }
    ]
  }
}
```

### Referência de campos

| Campo            | Tipo    | Descrição                                              |
| ---------------- | ------- | ------------------------------------------------------ |
| `verificationId` | integer | Identificador único do registro de verificação         |
| `idFileType`     | string  | Extensão do arquivo do documento de identidade         |
| `idFileName`     | string  | Nome original do arquivo do documento de identidade    |
| `idFileSize`     | integer | Tamanho do arquivo do documento de identidade em bytes |
| `selfieFileType` | string  | Extensão do arquivo da selfie                          |
| `selfieFileName` | string  | Nome original do arquivo da selfie                     |
| `selfieFileSize` | integer | Tamanho do arquivo da selfie em bytes                  |
| `timestamp`      | integer | Timestamp Unix da análise                              |
| `timestampISO`   | string  | Timestamp ISO 8601 da análise                          |
| `model`          | string  | Modelo utilizado (`verification`)                      |
| `modelVersion`   | string  | Versão do modelo utilizado para a análise              |
| `verified`       | boolean | Se a identidade foi confirmada                         |

### Verificado

O campo `verified` é um booleano que indica se a identidade foi confirmada — o rosto na selfie corresponde ao rosto no documento de identidade e as verificações anti-spoofing foram aprovadas.

### Verificações técnicas

O array `modelResults.technicalChecks` contém resultados de detecção de rosto tanto para o documento de identidade quanto para a selfie.

**Detecção de rosto** (`checkType: "face_detection"`):

| Campo         | Tipo   | Descrição                                                             |
| ------------- | ------ | --------------------------------------------------------------------- |
| `faceCount`   | object | Número de rostos detectados — contagem de `id` e contagem de `selfie` |
| `idFaces`     | array  | Rostos detectados no documento de identidade                          |
| `selfieFaces` | array  | Rostos detectados na selfie                                           |

**Cada objeto de rosto inclui:**

| Campo                 | Tipo   | Descrição                                                                                                   |
| --------------------- | ------ | ----------------------------------------------------------------------------------------------------------- |
| `faceId`              | string | Identificador do rosto (ex.: `face_1`, `face_2`)                                                            |
| `detectionConfidence` | float  | Confiança da detecção de rosto (0.0–1.0)                                                                    |
| `landmarks`           | object | Coordenadas dos pontos de referência faciais (`nose`, `left_eye`, `right_eye`, `mouth_left`, `mouth_right`) |
| `boundingBox`         | object | Coordenadas da caixa delimitadora do rosto (`x1`, `y1`, `x2`, `y2`)                                         |

### Categorias de arquivo

| Categoria | Descrição                           |
| --------- | ----------------------------------- |
| `id`      | O documento de identidade enviado   |
| `face`    | A selfie em imagem ou vídeo enviada |

## Tags e filtragem

```bash theme={null}
curl "https://api.deepxl.ai/v1/verification?tagFilter=customerId=9999" \
  -H "x-api-key: YOUR_API_KEY"
```

## Navegando pelo histórico

```bash theme={null}
curl "https://api.deepxl.ai/v1/verification?limit=25&offset=0&sortBy=verificationId&direction=desc" \
  -H "x-api-key: YOUR_API_KEY"
```

### Opções de ordenação

`verificationId`, `idFileName`, `idFileSize`, `idFileType`, `selfieFileName`, `selfieFileSize`, `selfieFileType`, `verified`, `timestamp`
