For the complete documentation index, see llms.txt. This page is also available as Markdown.

Document result JSON

ID Document Recognition result JSON. documentName, OCR, MRZ, barcode, verification, image quality, images, and security fields returned by recognize and documentProcess on every platform.

recognize (mobile) and POST /api/documentProcess (Linux / Windows) return the same idea: one JSON object. Dedicated documentRecognition / documentLiveness (and the matching HTTP paths) use the same JSON shape with recognition-only or authenticity-only fields populated. Flutter, React Native, and Ionic normalize Android output so it matches this iOS-shaped contract.

Parse this object in your app. Do not copy the demo Result screen.

Top-level fields

Field
Meaning

errorCode

Optional engine error

documentName

Document type name

countryName

Issuing country

score

Document / locate confidence

msg

Optional message

verification

Field and document checks

imageQuality

Capture quality checks (omitted when response.ImageQuality is "none")

ocr

Visual-zone fields

mrz

Machine-readable zone

barcode

Barcode / QR fields

images

Crops (portrait, document, signature, …). Recognition only; omitted on documentLiveness.

security

Authenticity / document liveness (license-gated)

verification

Key
Meaning

overall

Whole-document verdict

docType

Type check

expiry

Expiry check

text

OCR consistency

mrz

MRZ check

security

Authenticity rolled up

imageQA

Image quality rolled up

portrait

Portrait check

reasons

Optional list of fail reasons

Values: 0 Pass, 1 Fail, 2 Not checked.

imageQuality.checks

Typical keys (order used in the Android demo): focus, glares, resolution, colorness, perspective, bounds, portrait, handwritten, brightness, occlusion.

Each check uses CheckResult: 0 Fail, 1 Pass, 2 Not checked. That is not the same 0/1/2 mapping as verification.

images[]

Each item: name, image (often base64), optional source. Present on documentRecognition / recognize / documentProcess. Omitted on documentLiveness.

security

Authenticity / document liveness (license-gated). Full key list: Document security check fields.

Key
Meaning

overall

Rolled-up authenticity (success / fail / notChecked)

label

Human-readable status

pages[]

Per-page groups (pageIndex, overall, label, plus RGB check keys such as photoOriginAnalysis, hologramIntegrity)

Each group is { title, result, checks? } or { title, score } for pattern percent. Nested checks are omitted when they were not run.

Needs authenticity "normal" on recognize / "Authenticity": "normal" on the server. "none" skips Security.

Locate JSON (camera overlay only)

locateDocument is not folded into the recognize result. Expect score, position.corners, and sometimes _locateImageWidth / _locateImageHeight. No OCR and no image quality on this path (ImageQuality is "none").

Flutter, React Native, and Ionic ship typed helpers (recognizeResult, rows, summary, images, securityRows) so you do not write a 600-line parser.

Request a License & Support · Contact us

FAQ

Same JSON on every platform? Yes — recognize and POST /api/documentProcess share this field set.

Authenticity key names? Document security check fields.

Last updated