Skip to main content
The Parsing Model extracts and parses structured data from IDs and documents — names, dates, addresses, amounts, and more.

Available Models

ModelUse CaseSupported File Types
lightParsing light model. Data extraction is aimed at Driver License, State ID, Residency Permit, Social Security Card, Military IDjpg, jpeg, png, webp, pdf
performanceParsing performance model. Data extraction is aimed at bank statements, US pay stubs, and common government-issued IDs (for example driver licenses)jpg, jpeg, png, webp, pdf
Retrieve the full list of models programmatically:
curl https://api.deepxl.ai/v1/parsing-models \
  -H "x-api-key: YOUR_API_KEY"

Parsing a Document

Submit a file for parsing via POST /v1/parse:
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"}'

Parameters

ParameterTypeRequiredDescription
modelstringYeslight or performance
filefileYesThe document to parse (max 50MB)
tagsstringNoJSON object with metadata key-value pairs
countrystringNoOptional country hint. Supported values: us, mx, br. Missing, empty, or invalid values default to us.

Country Hint Behavior

Use the optional country parameter when you want to steer parsing toward a specific supported market.
  • Supported values: us, mx, br
  • Matching is case-insensitive
  • Leading and trailing whitespace is ignored
  • Missing, empty, or invalid values fall back to us
The request value is treated as a routing hint. It is normalized before the request is forwarded downstream, and the normalized value is returned as country in the parse response metadata. Example:
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","documentId":"DOC-2024-042"}'

Response Structure

{
  "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" }
    ],
    "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"
      }
    ]
  }
}

Field Reference

FieldTypeDescription
parseIdintegerUnique identifier for the parse record
mediaTypestringMedia type category (image or document)
fileTypestringFile extension (jpeg, png, pdf, webp)
fileNamestringOriginal uploaded file name
fileSizeintegerFile size in bytes
timestampintegerUnix timestamp of the analysis
timestampISOstringISO 8601 timestamp of the analysis
modelstringModel used (light or performance)
modelVersionstringVersion of the model used for analysis
documentTypestringIdentified document type (e.g. idDocument, bankStatement.us, payStub.us)
parsedDataobjectExtracted key-value pairs (fields vary by document type)
tagsobject[]Metadata tags attached to this parse
filesobject[]Associated files (original upload)

Understanding Results

Document Type

The documentType field identifies the parsed document type (for example idDocument, bankStatement.us, or payStub.us).

Parsed Data

The parsedData object contains the extracted key-value pairs. The fields depend on the document type. ID Documents (light model):
FieldDescription
firstNameFirst name
lastNameLast name
dateOfBirthDate of birth (YYYY-MM-DD)
licenseNumberLicense or document number
expirationDateDocument expiration date (YYYY-MM-DD)
addressFull address
performance model document types: The extracted fields vary by document type. The current set is idDocument, bankStatement.us, and payStub.us.

Tags and Filtering

Attach metadata to organize your parsing results:
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","documentId":"DOC-2024-042"}'
Filter your parse history:
curl "https://api.deepxl.ai/v1/parse?tagFilter=customerId=9999" \
  -H "x-api-key: YOUR_API_KEY"

Browsing History

Retrieve paginated parsing results:
curl "https://api.deepxl.ai/v1/parse?limit=25&offset=0&sortBy=parseId&direction=desc" \
  -H "x-api-key: YOUR_API_KEY"

Sort Options

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