MENU
      名刺
        • PDF

        名刺

        • PDF

        記事の要約

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

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

        リクエスト

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

        メソッドURI
        POST/name-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/name-card' \
        --header 'Content-Type: application/json' \
        --header 'X-OCR-SECRET: {アプリの登録時に発行された Secret Key}' \
        --data '{
            "version": "V2",
            "requestId": "1234",
            "timestamp": 0,
            "images": [
                {
                    "format": "jpg",
                    "name": "namecard_test2",
                    "data": "{Base64でエンコードされた画像データ}"
                }
            ]
        }'
        Shell

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

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

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

        レスポンス

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

        レスポンスボディ

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

        フィールドタイプ必須の有無説明
        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-変換後画像ページインデックス
        nameCardObject-名刺の詳細情報
        nameCard.metaObject-メタ情報
        nameCard.meta.estimatedLanguageString-OCR推定言語
        • ko | en | ja
          • ko:韓国語
          • en: 英語
          • ja: 日本語
        nameCard.resultObject-名刺の OCR認識結果

        result

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

        フィールドタイプ必須の有無説明
        nameArray-氏名情報
        nameFuriganaArray-フリガナ情報
        companyArray-会社情報
        addressArray-住所情報
        positionArray-役職連携
        departmentArray-部署情報
        mobileArray-携帯電話情報
        telArray-電話情報
        faxArray-FAX情報
        emailArray-メール情報
        homepageArray-ホームページ情報

        共通オブジェクト情報

        共通オブジェクトの説明は次の通りです。

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

        boundingPolys

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

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

        maskingPolys

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

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

        vertices

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

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

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

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

        レスポンス例

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

        成功

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

        {
            "version": "V2",
            "requestId": "1234",
            "timestamp": 1725235494383,
            "images": [
                {
                    "uid": "{uid}",
                    "name": "namecard_test",
                    "inferResult": "SUCCESS",
                    "message": "SUCCESS",
                    "validationResult": {
                        "result": "NO_REQUESTED"
                    },
                    "nameCard": {
                        "meta": {
                            "estimatedLanguage": "ko"
                        },
                        "result": {
                            "name": [
                                {
                                    "text": "キム**",
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 92.0,
                                                    "y": 103.0
                                                },
                                                {
                                                    "x": 218.0,
                                                    "y": 103.0
                                                },
                                                {
                                                    "x": 218.0,
                                                    "y": 141.0
                                                },
                                                {
                                                    "x": 92.0,
                                                    "y": 141.0
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "company": [
                                {
                                    "text": "** **代理店",
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 90.0,
                                                    "y": 255.0
                                                },
                                                {
                                                    "x": 237.0,
                                                    "y": 255.0
                                                },
                                                {
                                                    "x": 237.0,
                                                    "y": 284.0
                                                },
                                                {
                                                    "x": 90.0,
                                                    "y": 284.0
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "address": [
                                {
                                    "text": "ソウル特別市***",
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 91.0,
                                                    "y": 287.0
                                                },
                                                {
                                                    "x": 376.0,
                                                    "y": 287.0
                                                },
                                                {
                                                    "x": 376.0,
                                                    "y": 312.0
                                                },
                                                {
                                                    "x": 91.0,
                                                    "y": 312.0
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "position": [
                                {
                                    "text": "****",
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 226.0,
                                                    "y": 114.0
                                                },
                                                {
                                                    "x": 300.0,
                                                    "y": 114.0
                                                },
                                                {
                                                    "x": 300.0,
                                                    "y": 138.0
                                                },
                                                {
                                                    "x": 226.0,
                                                    "y": 138.0
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "mobile": [
                                {
                                    "text": "010********",
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 88.0,
                                                    "y": 145.0
                                                },
                                                {
                                                    "x": 300.0,
                                                    "y": 145.0
                                                },
                                                {
                                                    "x": 300.0,
                                                    "y": 175.0
                                                },
                                                {
                                                    "x": 88.0,
                                                    "y": 175.0
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "tel": [
                                {
                                    "text": "02-****-****",
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 89.0,
                                                    "y": 311.0
                                                },
                                                {
                                                    "x": 264.0,
                                                    "y": 311.0
                                                },
                                                {
                                                    "x": 264.0,
                                                    "y": 333.0
                                                },
                                                {
                                                    "x": 89.0,
                                                    "y": 333.0
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "fax": [
                                {
                                    "text": "02-****-****",
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 89.0,
                                                    "y": 334.0
                                                },
                                                {
                                                    "x": 264.0,
                                                    "y": 334.0
                                                },
                                                {
                                                    "x": 264.0,
                                                    "y": 358.0
                                                },
                                                {
                                                    "x": 89.0,
                                                    "y": 358.0
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "email": [
                                {
                                    "text": "****@****.net",
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 137.0,
                                                    "y": 359.0
                                                },
                                                {
                                                    "x": 312.0,
                                                    "y": 359.0
                                                },
                                                {
                                                    "x": 312.0,
                                                    "y": 382.0
                                                },
                                                {
                                                    "x": 137.0,
                                                    "y": 382.0
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ]
                        }
                    }
                }
            ]
        }
        JSON

        失敗

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

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

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

        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.