--- title: "CLOVA OCR Validation" slug: "ai-application-service-ocr-ocrvalidation" tags: ["CLOVA OCR"] updated: 2026-09-17T09:35:51Z published: 2026-09-17T09:35:51Z canonical: "api.ncloud-docs.com/ai-application-service-ocr-ocrvalidation" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # CLOVA OCR Validation Available in Classic and VPC The CLOVA OCR service provides an external validation feature that can be used in Template OCR. To use this feature, you must first run Template Builder in the Template domain of the NAVER Cloud Platform console and integrate the validation feature on the page that appears. After integration, set a specific document as a template and send the values extracted from the document to an external validation server to check the validation results. Note The validation results are reflected in `validationResult` of the [Template OCR](/docs/en/clova-template-ocr-api#images2) response body. ## Request The following describes the request format for the endpoint. ### Request body If you set up external validation integration in CLOVA OCR Builder, external validation results will be sent along with the image recognition results when you receive them. Note For more information, see [OCR Reader](https://guide.ncloud-docs.com/docs/en/clovaocr-ocrreader) of the CLOVA OCR user guide. ### Request example The following is a sample request. ``` { "image": { "uid": "{uid}", "name": "Test-Request", "inferResult": "SUCCESS", "message": "SUCCESS", "matchedTemplate": { "id": 266, "name": "EN-Front-2020" }, "validationResult": { "result": "UNCHECKED" }, "title": { "name": "2020 EN2B-Front", "boundingPoly": { "vertices": [ { "x": 1148.3334, "y": 23.833334 }, { "x": 1423.5, "y": 23.833334 }, { "x": 1423.5, "y": 47.666668 }, { "x": 1148.3334, "y": 47.666668 } ] }, "inferText": "2020EN2B-Front", "inferConfidence": 0.99994594 }, "fields": [ { "name": "1-Value", "valueType": "ALL", "boundingPoly": { "vertices": [ { "x": 132.16667, "y": 491.83334 }, { "x": 197.16667, "y": 491.83334 }, { "x": 197.16667, "y": 546.0 }, { "x": 132.16667, "y": 546.0 } ] }, "inferText": "FIRST\nMIDDLE\nNAME", "inferConfidence": 0.99935573, "type": "NORMAL" }, { "name": "2-Value", "valueType": "NUMERIC", "boundingPoly": { "vertices": [ { "x": 223.98764, "y": 1148.0485 }, { "x": 263.99146, "y": 1148.049 }, { "x": 263.99606, "y": 1212.0457 }, { "x": 223.99258, "y": 1212.045 } ] }, "inferText": "", "inferConfidence": 0.84649235, "type": "NORMAL" }, { "name": "3-Value", "valueType": "ALL", "boundingPoly": { "vertices": [ { "x": 348.0137, "y": 1376.034 }, { "x": 507.0252, "y": 1376.0349 }, { "x": 507.0269, "y": 1416.0331 }, { "x": 348.01614, "y": 1416.0322 } ] }, "inferText": "", "inferConfidence": 0.9938921, "type": "MULTI_BOX", "subFields": [ { "boundingPoly": { "vertices": [ { "x": 348.0137, "y": 1376.034 }, { "x": 385.51636, "y": 1376.0349 }, { "x": 385.51862, "y": 1416.0306 }, { "x": 348.01614, "y": 1416.0298 } ] }, "inferText": "", "inferConfidence": 0.999991 }, { "boundingPoly": { "vertices": [ { "x": 388.51654, "y": 1376.0349 }, { "x": 426.01926, "y": 1376.0356 }, { "x": 426.02133, "y": 1416.0315 }, { "x": 388.51883, "y": 1416.0306 } ] }, "inferText": "", "inferConfidence": 0.98254 } ] } ] } } ``` ## Response The following describes the response format. ### Response body The following describes the response body. | Field | Type | Required | Description | | --- | --- | --- | --- | | `uid` | String | - | Same UID as the request body | | `result` | String | - | Authentication result - `NO_REQUESTED` \| `UNCHECKED` \| `ERROR` \| `VALID` \| `INVALID` - `NO_REQUESTED`: validation not requested - `UNCHECKED`: unconfirmed or unaccepted response - `ERROR`: validation execution error - `VALID`: result valid - `INVALID`: result invalid | | `message` | String | - | Detailed message about authentication result - It is displayed if `result` is `VALID` or `INVALID` | ### Response example The following is a sample example. ``` { "uid": "{uid}", "result": "VALID", "message": "VALID message!" } ```