住民登録証
    • PDF

    住民登録証

    • PDF

    記事の要約

    Classic/VPC環境で利用できます。

    特化モデルエンジンを使用して住民登録証の入力情報(key-value)を認識し、抽出します。

    リクエスト

    リクエスト形式を説明します。リクエスト形式は次の通りです。

    メソッドURI
    POST/id-card

    リクエストヘッダ

    CLOVA OCR APIで共通して使用されるヘッダの詳細は、CLOVA OCRのリクエストヘッダをご参照ください。

    リクエストボディ

    リクエストボディの説明は次の通りです。

    Content-Type: application/jsonの場合

    リクエストヘッダのContent-Typeapplication/jsonの場合のリクエストボディの説明は次の通りです。

    フィールドタイプ必須の有無説明
    versionString-バージョン情報
    • V2のみ使用
    requestIdStringRequired任意の API呼び出しの UUID
    timestampIntegerRequired任意の APIの呼び出し時刻(Timestamp)
    imagesArrayRequiredimagesの詳細情報

    Content-Type: multipart/form-dataの場合

    リクエストヘッダのContent-Typemultipart/form-dataの場合のリクエストボディの説明は次の通りです。

    フィールドタイプ必須の有無説明
    messageObjectRequiredリクエストデータ情報
    message.versionStringRequiredバージョン情報
    • V2のみ使用
    message.requestIdStringRequired任意の API呼び出しの UUID
    message.timestampIntegerRequired任意の APIの呼び出し時刻(Timestamp)
    message.imagesArrayRequiredimagesの詳細情報
    fileFileRequiredOCR認識画像ファイル

    images

    imagesの説明は次の通りです。

    フィールドタイプ必須の有無説明
    formatStringRequired画像の形式
    • jpg | jpeg | png | pdf | tif | tiff
      • 画像: jpgjpegpng
      • 単一ページ: pdftiftiff
    • 画像の形式のうち、1つを選択して入力
    nameStringRequired任意の画像名
    • 画像の識別とレスポンス結果の確認時に使用
    dataStringRequiredBase64でエンコードされた画像データ
    • Content-Type: application/jsonの場合に入力可能

    リクエスト例

    リクエストのサンプルコードは次の通りです。

    Content-Type: application/jsonの場合

    リクエストヘッダのContent-Typeapplication/jsonの場合のリクエストのサンプルコードは次の通りです。

    curl --location --request POST 'https://cbgrx5natw.apigw.ntruss.com/custom/v1/{DomainId}/{InvokeKey}/document/id-card' \
    --header 'Content-Type: application/json' \
    --header 'X-OCR-SECRET: {アプリの登録時に発行された Secret Key}' \
    --data '{
        "version": "V2",
        "requestId": "string",
        "timestamp": 0,
        "images": [
            { 
                "format": "png", 
                "name": "idcard_test", 
                "data":"{Base64でエンコードされた画像データ}"
            }
        ]
     }'
    

    Content-Type: multipart/form-dataの場合

    リクエストヘッダのContent-Typemultipart/form-dataの場合のリクエストのサンプルコードは次の通りです。

    curl --location --request POST 'https://cbgrx5natw.apigw.ntruss.com/custom/v1/{DomainId}/{InvokeKey}/document/id-card' \
    --header 'X-OCR-SECRET: {アプリの登録時に発行された Secret Key}' \
    --header 'Content-Type: multipart/form-data' \
    --form 'message="{\"version\": \"V2\", \"requestId\": \"1234\", \"timestamp\": 1724832750462, \"images\": [{\"format\": \"png\", \"name\": \"idcard_test\"}]}"' \
    --form 'file=@"{file}"'
    

    レスポンス

    レスポンス形式を説明します。

    レスポンスボディ

    レスポンスボディの説明は次の通りです。

    フィールドタイプ必須の有無説明
    versionString-バージョン情報
    • V2のみ使用
    requestIdString-API呼び出し UUID
    timestampInteger-APIの呼び出し時刻(Timestamp)
    imagesArray-imagesの詳細情報

    images

    imagesの説明は次の通りです。

    フィールドタイプ必須の有無説明
    uidString-住民登録証画像の UID
    • API有効性検査時に使用
    nameString-住民登録証の画像名
    • 画像の識別とレスポンス結果の確認時に使用
    inferResultString-住民登録証の画像認識結果
    • SUCCESS | FAILURE | ERROR
      • SUCCESS: 認識成功
      • FAILURE: 認識失敗
      • ERROR: 認識処理例外
    messageString-結果メッセージ
    validationResultObject-有効性検査の結果情報
    validationResult.resultString-有効性検査の結果コード
    • NO_REQUESTED | UNCHECKED | ERROR | VALID | INVALID
      • NO_REQUESTED: 検証をリクエストしていない(有効性検査失敗)
      • UNCHECKED: 検証の有無を確認できない
      • ERROR: 検証中にエラー発生(有効性検査失敗)
      • VALID: 検証中にエラー発生(有効性検査成功)
      • INVALID: 検証合格失敗
    validationResult.messageString-有効性検査結果の詳細メッセージ
    • 必ずしも返される値ではない
    convertedImageInfoObject-変換後の画像情報
    • formatpdfまたはtiffの場合
    • 座標は呼び出し画像ファイルを基準に設定
    convertedImageInfo.widthInteger-変換後画像の横長
    convertedImageInfo.heightInteger-変換後画像の縦長
    convertedImageInfo.pageIndexInteger-変換後画像ページインデックス
    idCardObject-身分証明書の詳細情報
    idCard.metaObject-メタ情報
    idCard.meta.estimatedLanguageString-OCR推定言語
    • ko | en | ja
      • ko:韓国語
      • en: 英語
      • ja: 日本語
    idCard.resultObject-身分証明書の OCR認識結果

    result

    resultの説明は次の通りです。

    フィールドタイプ必須の有無説明
    isConfidentBoolean-各タイプの詳細情報を保有するかどうか
    • true | false
      • true: 保有
      • false: 保有しない
    icObject-住民登録証情報
    ic.nameArray-氏名の詳細情報
    ic.personalNumArray-住民登録番号の詳細情報
    ic.addressArray-住所の詳細情報
    ic.issueDateArray-発行日の詳細情報
    ic.authorityArray-発行機関の詳細情報
    roisArray-オブジェクト枠線の位置情報
    idTypeString-身分証明書タイプ
    • ID Card

    name

    ic.nameの説明は次の通りです。

    フィールドタイプ必須の有無説明
    textString-認識結果の名前テキスト
    formattedObject-認識結果の名前テキスト情報
    formatted.valueString-認識結果の名前テキストの値
    keyTextString-認識結果の名前テキストのキー
    confidenceScoreFloat-認識結果の名前テキストの信頼度
    • 0~1
    • 信頼度が高いほどテキストの精度が高い
    boundingPolysArray-boundingPolyの詳細情報
    maskingPolysArray-maskingPolyの詳細情報

    personalNum

    ic.personalNumの説明は次の通りです。

    フィールドタイプ必須の有無説明
    textString-認識結果の住民登録番号テキスト
    formattedObject-認識結果の住民登録番号テキスト情報
    formatted.valueString-認識結果の住民登録番号テキスト情報
    keyTextString-認識結果の住民登録番号テキストのキー
    confidenceScoreFloat-認識結果の住民登録番号テキストの信頼度
    • 0~1
    • 信頼度が高いほどテキストの精度が高い
    boundingPolysArray-boundingPolyの詳細情報
    maskingPolysArray-maskingPolyの詳細情報

    address

    ic.addressの説明は次の通りです。

    フィールドタイプ必須の有無説明
    textString-認識結果の住所テキスト
    formattedObject-認識結果の住所テキスト情報
    formatted.valueString-認識結果の住所テキストの値
    keyTextString-認識結果の住所テキストのキー
    confidenceScoreFloat-認識結果の住所テキストの信頼度
    • 0~1
    • 信頼度が高いほどテキストの精度が高い
    boundingPolysArray-boundingPolyの詳細情報
    maskingPolysArray-maskingPolyの詳細情報

    issueDate

    ic.issueDateの説明は次の通りです。

    フィールドタイプ必須の有無説明
    textString-認識結果の発行日テキスト
    formattedObject-認識結果の発行日テキスト情報
    formatted.yearString-認識結果の発行日の年度(yyyy)
    formatted.monthString-認識結果の発行日の月(MM)
    formatted.dayString-認識結果の発行日の日(dd)
    keyTextString-認識結果の発行日テキストのキー
    confidenceScoreFloat-認識結果の発行日テキストの信頼度
    • 0~1
    • 信頼度が高いほどテキストの精度が高い
    boundingPolysArray-boundingPolyの詳細情報
    maskingPolysArray-maskingPolyの詳細情報

    authority

    ic.authorityの説明は次の通りです。

    フィールドタイプ必須の有無説明
    textString-認識結果の発行機関テキスト
    formattedObject-認識結果の発行機関テキスト情報
    formatted.valueString-認識結果の発行機関テキストの値
    keyTextString-認識結果の発行機関テキストのキー
    confidenceScoreFloat-認識結果の発行機関テキストの信頼度
    • 0~1
    • 信頼度が高いほどテキストの精度が高い
    boundingPolysArray-boundingPolyの詳細情報
    maskingPolysArray-maskingPolyの詳細情報

    rois

    roisの説明は次の通りです。

    フィールドタイプ必須の有無説明
    フィールドタイプ必須の有無説明
    ------------
    xFloat-オブジェクト枠線の位置 X軸の座標
    yFloat-オブジェクト枠線の位置 Y軸の座標

    boundingPolys

    boundingPolysの説明は次の通りです。

    フィールドタイプ必須の有無説明
    verticesArray-verticesの詳細情報

    maskingPolys

    maskingPolysの説明は次の通りです。

    フィールドタイプ必須の有無説明
    verticesArray-verticesの詳細情報

    boundingPolyVertices

    boundingPolyVerticesの説明は次の通りです。

    フィールドタイプ必須の有無説明
    xFloat-X軸の座標
    yFloat-Y軸の座標

    レスポンスステータスコード

    CLOVA OCR APIで共通して使用されるレスポンスステータスコードの詳細は、CLOVA OCRの共通レスポンスステータスコードをご参照ください。

    レスポンス例

    レスポンスのサンプルコードは次の通りです。

    成功

    呼び出しに成功した場合のレスポンスのサンプルコードは次の通りです。

    {
        "version": "V2",
        "requestId": "1234",
        "timestamp": 1725406864631,
        "images": [
            {
                "uid": "{uid}",
                "name": "idcard_test",
                "inferResult": "SUCCESS",
                "message": "SUCCESS",
                "validationResult": {
                    "result": "NO_REQUESTED"
                },
                "idCard": {
                    "meta": {
                        "estimatedLanguage": "ko"
                    },
                    "result": {
                        "isConfident": true,
                        "ic": {
                            "name": [
                                {
                                    "text": "ホン**",
                                    "formatted": {
                                        "value": "ホン**"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 72.2125,
                                                    "y": 116.6
                                                },
                                                {
                                                    "x": 367.6875,
                                                    "y": 116.6
                                                },
                                                {
                                                    "x": 367.6875,
                                                    "y": 165.625
                                                },
                                                {
                                                    "x": 72.2125,
                                                    "y": 165.625
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "personalNum": [
                                {
                                    "text": "800***-234****",
                                    "formatted": {
                                        "value": "800***-234****"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 65.5875,
                                                    "y": 181.52498
                                                },
                                                {
                                                    "x": 363.71246,
                                                    "y": 181.52498
                                                },
                                                {
                                                    "x": 363.71246,
                                                    "y": 216.63748
                                                },
                                                {
                                                    "x": 65.5875,
                                                    "y": 216.63748
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 211.13873,
                                                    "y": 178.01373
                                                },
                                                {
                                                    "x": 367.22372,
                                                    "y": 178.01373
                                                },
                                                {
                                                    "x": 367.22372,
                                                    "y": 220.14873
                                                },
                                                {
                                                    "x": 211.13873,
                                                    "y": 220.14873
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "address": [
                                {
                                    "text": "ソウル特別市***",
                                    "formatted": {
                                        "value": "ソウル特別市***"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 51.675,
                                                    "y": 235.1875
                                                },
                                                {
                                                    "x": 192.7875,
                                                    "y": 235.1875
                                                },
                                                {
                                                    "x": 192.7875,
                                                    "y": 272.2875
                                                },
                                                {
                                                    "x": 51.675,
                                                    "y": 272.2875
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "issueDate": [
                                {
                                    "text": "2020.08.16",
                                    "formatted": {
                                        "year": "2020",
                                        "month": "08",
                                        "day": "16"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 242.475,
                                                    "y": 351.7875
                                                },
                                                {
                                                    "x": 374.3125,
                                                    "y": 351.7875
                                                },
                                                {
                                                    "x": 374.3125,
                                                    "y": 381.6
                                                },
                                                {
                                                    "x": 242.475,
                                                    "y": 381.6
                                                }
                                            ]
                                        },
                                    ],
                                    "maskingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 239.52966,
                                                    "y": 349.0218
                                                },
                                                {
                                                    "x": 424.9578,
                                                    "y": 349.0217
                                                },
                                                {
                                                    "x": 424.9578,
                                                    "y": 384.3657
                                                },
                                                {
                                                    "x": 239.52968,
                                                    "y": 384.36578
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "authority": [
                                {
                                    "text": "ソウル特別市**区長**",
                                    "formatted": {
                                        "value": "ソウル特別市**区長"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 146.53316,
                                                    "y": 381.33884
                                                },
                                                {
                                                    "x": 326.93195,
                                                    "y": 383.12497
                                                },
                                                {
                                                    "x": 326.47778,
                                                    "y": 428.99695
                                                },
                                                {
                                                    "x": 146.07898,
                                                    "y": 427.21082
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ]
                        },
                        "rois": [
                            {
                                "vertices": [
                                    {
                                        "x": 3.1388545,
                                        "y": 3.9956706
                                    },
                                    {
                                        "x": 754.52325,
                                        "y": -5.092327
                                    },
                                    {
                                        "x": 747.84045,
                                        "y": 473.14856
                                    },
                                    {
                                        "x": 2.264223,
                                        "y": 474.4076
                                    }
                                ]
                            }
                        ],
                        "idtype": "ID Card"
                    }
                }
            }
        ]
    }
    

    失敗

    呼び出しに失敗した場合のレスポンスのサンプルコードは次の通りです。

    {
        "version": "V2",
        "requestId": "1234",
        "timestamp": 1725235840459,
        "images": [
            {
                "uid": "{uid}",
                "name": "idcard_sample",
                "inferResult": "ERROR",
                "message": "Read page:0 error.",
                "validationResult": {
                    "result": "NO_REQUESTED"
                }
            }
        ]
    }
    

    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.