> ## 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.

# Análisis de documentos

> Extrae y analiza datos estructurados de identificaciones y documentos

El modelo de análisis extrae y analiza datos estructurados de identificaciones y documentos: nombres, fechas, direcciones, importes y más.

## Modelos disponibles

| Modelo        | Caso de uso                                                                                                                                                                                                                     | Tipos de archivo compatibles |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- |
| `light`       | Modelo de análisis ligero. La extracción de datos está orientada a licencias de conducir, documento de identidad estatal, permiso de residencia, tarjeta del Seguro Social, identificación militar                              | jpg, jpeg, png, webp, pdf    |
| `performance` | Modelo de análisis de alto rendimiento. La extracción de datos está orientada a estados de cuenta bancarios, talones de pago de EE. UU. y documentos de identidad emitidos por el gobierno (por ejemplo, licencias de conducir) | jpg, jpeg, png, webp, pdf    |

Recupera la lista completa de modelos mediante programación:

```bash theme={null}
curl https://api.deepxl.ai/v1/parsing-models \
  -H "x-api-key: YOUR_API_KEY"
```

## Analizar un documento

Envía un archivo para analizar mediante `POST /v1/parse`:

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

### Parámetros

| Parámetro | Tipo   | Obligatorio | Descripción                                                                                                                                    |
| --------- | ------ | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `model`   | string | Sí          | `light` o `performance`                                                                                                                        |
| `file`    | file   | Sí          | El documento a analizar (máx. 50 MB)                                                                                                           |
| `tags`    | string | No          | Objeto JSON con pares clave-valor de metadatos                                                                                                 |
| `country` | string | No          | Sugerencia opcional de país. Valores admitidos: `us`, `mx`, `br`. Los valores ausentes, vacíos o no válidos usan `us` de forma predeterminada. |

### Comportamiento de la sugerencia de país

Use el parámetro opcional `country` cuando quiera orientar el análisis hacia un mercado compatible específico.

* Valores admitidos: `us`, `mx`, `br`
* La coincidencia no distingue entre mayúsculas y minúsculas
* Se ignoran los espacios en blanco al principio y al final
* Los valores ausentes, vacíos o no válidos vuelven a `us`

El valor de la solicitud se trata como una **sugerencia de enrutamiento**. Se normaliza antes de que la solicitud se reenvíe a los sistemas posteriores, y el valor normalizado se devuelve como `country` en los metadatos de la respuesta de análisis.

Ejemplo:

```bash theme={null}
curl -X POST https://api.deepxl.ai/v1/parse \
  -H "x-api-key: YOUR_API_KEY" \
  -F "model=performance" \
  -F "file=@bank_statement.pdf" \
  -F "country=br" \
  -F 'tags={"customerId":"9999","customerName":"Acme Corp","documentId":"DOC-2024-042","companyName":"DeepXL","companyId":"COMP-001"}'
```

## Estructura de la respuesta

```json theme={null}
{
  "result": {
    "parseId": 123,
    "mediaType": "image",
    "fileType": "jpeg",
    "fileName": "drivers_license.jpg",
    "fileSize": 231433,
    "timestamp": 1770984134,
    "timestampISO": "2026-02-13T13:02:14.833162",
    "model": "light",
    "modelVersion": "1.2.0",
    "documentType": "idDocument",
    "parsedData": {
      "firstName": "JOHN",
      "lastName": "DOE",
      "dateOfBirth": "1990-05-15",
      "licenseNumber": "D1234567",
      "expirationDate": "2028-05-15",
      "address": "123 MAIN ST ANYTOWN, CA 90210"
    },
    "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": "original_file",
        "fileName": "drivers_license.jpg",
        "fileSize": 231433,
        "contentType": "image/jpeg",
        "timestamp": 1770984134,
        "timestampISO": "2026-02-13T13:02:14.833162",
        "url": "https://api.deepxl.ai/v1/files/parse_123_drivers_license.jpg"
      }
    ]
  }
}
```

### Referencia de campos

| Campo          | Tipo      | Descripción                                                                            |
| -------------- | --------- | -------------------------------------------------------------------------------------- |
| `parseId`      | integer   | Identificador único del registro de análisis                                           |
| `mediaType`    | string    | Categoría del tipo de medio (`image` o `document`)                                     |
| `fileType`     | string    | Extensión del archivo (`jpeg`, `png`, `pdf`, `webp`)                                   |
| `fileName`     | string    | Nombre original del archivo cargado                                                    |
| `fileSize`     | integer   | Tamaño del archivo en bytes                                                            |
| `timestamp`    | integer   | Marca de tiempo Unix del análisis                                                      |
| `timestampISO` | string    | Marca de tiempo ISO 8601 del análisis                                                  |
| `model`        | string    | Modelo utilizado (`light` o `performance`)                                             |
| `modelVersion` | string    | Versión del modelo utilizado para el análisis                                          |
| `documentType` | string    | Tipo de documento identificado (p. ej. `idDocument`, `bankStatement.us`, `payStub.us`) |
| `parsedData`   | object    | Pares clave-valor extraídos (los campos varían según el tipo de documento)             |
| `tags`         | object\[] | Etiquetas de metadatos adjuntas a este análisis                                        |
| `files`        | object\[] | Archivos asociados (carga original)                                                    |

## Comprender los resultados

### Tipo de documento

El campo `documentType` identifica el tipo de documento analizado (por ejemplo `idDocument`, `bankStatement.us` o `payStub.us`).

### Datos analizados

El objeto `parsedData` contiene los pares clave-valor extraídos. Los campos dependen del tipo de documento.

**Documentos de identidad (modelo ligero):**

| Campo            | Descripción                                     |
| ---------------- | ----------------------------------------------- |
| `firstName`      | Nombre                                          |
| `lastName`       | Apellido                                        |
| `dateOfBirth`    | Fecha de nacimiento (AAAA-MM-DD)                |
| `licenseNumber`  | Número de licencia o documento                  |
| `expirationDate` | Fecha de vencimiento del documento (AAAA-MM-DD) |
| `address`        | Dirección completa                              |

**Tipos de documento del modelo `performance`:**

Los campos extraídos varían según el tipo de documento. El conjunto actual es `idDocument`, `bankStatement.us` y `payStub.us`.

## Etiquetas y filtrado

Adjunte metadatos para organizar los resultados de sus análisis:

```bash theme={null}
curl -X POST https://api.deepxl.ai/v1/parse \
  -H "x-api-key: YOUR_API_KEY" \
  -F "model=performance" \
  -F "file=@bank_statement.pdf" \
  -F 'tags={"customerId":"9999","customerName":"Acme Corp","documentId":"DOC-2024-042","companyName":"DeepXL","companyId":"COMP-001"}'
```

Filtre su historial de análisis:

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

## Explorar el historial

Recupere resultados de análisis paginados:

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

### Opciones de ordenación

`parseId`, `mediaType`, `fileType`, `fileName`, `fileSize`, `confidence`, `documentType`, `timestamp`
