외국인등록증
    • 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
      • 이미지: jpg, jpeg, png
      • 단일 페이지: pdf, tif, tiff
    • 이미지 형식 중 하나를 선택하여 입력
    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": "alienRegistration_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\": 0, \"images\": [{\"format\": \"png\", \"name\": \"alienRegistration_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: 미보유
    acObject-외국인등록증 정보
    ac.alienRegNumArray-외국인 등록번호 상세 정보
    ac.sexArray-성별 상세 정보
    ac.nameArray-이름 상세 정보
    ac.nationalityArray-국적 상세 정보
    ac.visaTypeArray-비자 유형 상세 정보
    ac.issueDateArray-발급 일자 상세 정보
    ac.authorityArray-발급 기관 상세 정보
    ac.authorityEngArray-발급 기관 영문 상세 정보
    ac.alienRegNumEtcArray-외국인 등록번호 외 기타 상세 정보
    roisArray-객체 테두리 위치 정보
    idTypeString-신분증 유형
    • Alien Registration Card

    alienRegNum

    ac.alienRegNum에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 번호 텍스트
    formattedObject-인식된 번호 텍스트 정보
    formatted.valueString-인식된 번호 텍스트 값
    keyTextString-인식된 번호 텍스트의 키 값
    confidenceScoreFloat-인식된 번호 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    sex

    ac.sex에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 성별 텍스트
    formattedObject-인식된 성별 텍스트 정보
    formatted.valueString-인식된 성별 텍스트 값
    keyTextString-인식된 성별 텍스트의 키 값
    confidenceScoreFloat-인식된 성별 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    name

    ac.name에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 이름 텍스트
    formattedObject-인식된 이름 텍스트 정보
    formatted.valueString-인식된 이름 텍스트 값
    keyTextString-인식된 이름 텍스트의 키 값
    confidenceScoreFloat-인식된 이름 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    nationality

    ac.nationality에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 국적 텍스트
    formattedObject-인식된 국적 텍스트 정보
    formatted.valueString-인식된 국적 텍스트 값
    keyTextString-인식된 국적 텍스트의 키 값
    confidenceScoreFloat-인식된 국적 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    visaType

    ac.visaType에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 비자 유형 텍스트
    formattedObject-인식된 비자 유형 텍스트 정보
    formatted.valueString-인식된 비자 유형 텍스트 값
    keyTextString-인식된 비자 유형 텍스트의 키 값
    confidenceScoreFloat-인식된 비자 유형 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    num

    pp.num에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 번호 텍스트
    formattedObject-인식된 번호 텍스트 정보
    formatted.valueString-인식된 번호 텍스트 값
    keyTextString-인식된 번호 텍스트의 키 값
    confidenceScoreFloat-인식된 번호 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    일자객체정보

    일자 객체에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 일자 텍스트
    formattedObject-인식된 일자 텍스트 정보
    formatted.yearString-인식된 일자의 연도(yyyy)
    formatted.monthString-인식된 일자의 월(MM)
    formatted.dayString-인식된 일자의 일(dd)
    keyTextString-인식된 발급 텍스트의 키 값
    confidenceScoreFloat-인식된 일자 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    authority

    ac.authority에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 발급 기관 텍스트
    formattedObject-인식된 발급 기관 텍스트 정보
    formatted.valueString-인식된 발급 기관 텍스트 값
    keyTextString-인식된 발급 기관 텍스트의 키 값
    confidenceScoreFloat-인식된 발급 기관 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    authorityEng

    ac.authorityEng에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    textString-인식된 발급 기관 영문 텍스트
    formattedObject-인식된 발급 기관 텍스트 정보
    formatted.valueString-인식된 발급 기관 텍스트 값
    keyTextString-인식된 발급 기관 텍스트의 키 값
    confidenceScoreFloat-인식된 발급 기관 텍스트 신뢰도
    • 0~1
    • 신뢰도 값이 클수록 텍스트의 정확도가 높음
    boundingPolysArray-boundingPoly 세부 정보
    maskingPolysArray-maskingPoly 세부 정보

    alienRegNumEtc

    ac.alienRegNumEtc에 대한 설명은 다음과 같습니다.

    필드타입필수 여부설명
    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": 1725415136556,
        "images": [
            {
                "uid": "{uid}",
                "name": "alienRegistration_test",
                "inferResult": "SUCCESS",
                "message": "SUCCESS",
                "validationResult": {
                    "result": "NO_REQUESTED"
                },
                "idCard": {
                    "meta": {
                        "estimatedLanguage": "ko"
                    },
                    "result": {
                        "isConfident": true,
                        "ac": {
                            "alienRegNum": [
                                {
                                    "text": "123***-123****",
                                    "formatted": {
                                        "value": "123***-123****"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 250.44644,
                                                    "y": 86.428566
                                                },
                                                {
                                                    "x": 399.24106,
                                                    "y": 86.428566
                                                },
                                                {
                                                    "x": 399.24106,
                                                    "y": 104.10713
                                                },
                                                {
                                                    "x": 250.44644,
                                                    "y": 104.10713
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 323.0759,
                                                    "y": 84.660706
                                                },
                                                {
                                                    "x": 401.0089,
                                                    "y": 84.660706
                                                },
                                                {
                                                    "x": 401.0089,
                                                    "y": 105.874985
                                                },
                                                {
                                                    "x": 323.0759,
                                                    "y": 105.874985
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "sex": [
                                {
                                    "text": "F",
                                    "formatted": {
                                        "value": "F"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 457.27267,
                                                    "y": 86.69321
                                                },
                                                {
                                                    "x": 491.81177,
                                                    "y": 87.496445
                                                },
                                                {
                                                    "x": 491.4664,
                                                    "y": 102.34618
                                                },
                                                {
                                                    "x": 456.92734,
                                                    "y": 101.542946
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "name": [
                                {
                                    "text": "HONG S*******",
                                    "formatted": {
                                        "value": "HONG S*******"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 250.30173,
                                                    "y": 137.56241
                                                },
                                                {
                                                    "x": 307.85138,
                                                    "y": 136.8519
                                                },
                                                {
                                                    "x": 308.07855,
                                                    "y": 155.25519
                                                },
                                                {
                                                    "x": 250.52892,
                                                    "y": 155.96568
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "nationality": [
                                {
                                    "text": "REPUBLIC OF UTOPIA",
                                    "formatted": {
                                        "value": "REPUBLIC OF UTOPIA"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 251.42857,
                                                    "y": 180.71428
                                                },
                                                {
                                                    "x": 344.24106,
                                                    "y": 180.71428
                                                },
                                                {
                                                    "x": 344.24106,
                                                    "y": 198.88393
                                                },
                                                {
                                                    "x": 251.42857,
                                                    "y": 198.88393
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "visaType": [
                                {
                                    "text": "기업투자 (D-8)",
                                    "formatted": {
                                        "value": "기업투자(D-8)"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 250.44643,
                                                    "y": 225.40178
                                                },
                                                {
                                                    "x": 312.8125,
                                                    "y": 225.40178
                                                },
                                                {
                                                    "x": 312.8125,
                                                    "y": 245.04465
                                                },
                                                {
                                                    "x": 250.44643,
                                                    "y": 245.04465
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "issueDate": [
                                {
                                    "text": "2011.1.1 1234.",
                                    "formatted": {
                                        "year": "2011",
                                        "month": "01",
                                        "day": "01"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 71.69643,
                                                    "y": 292.67856
                                                },
                                                {
                                                    "x": 102.63393,
                                                    "y": 292.67856
                                                },
                                                {
                                                    "x": 102.63393,
                                                    "y": 302.00894
                                                },
                                                {
                                                    "x": 71.69643,
                                                    "y": 302.00894
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 69.91906,
                                                    "y": 290.60785
                                                },
                                                {
                                                    "x": 485.82584,
                                                    "y": 262.38263
                                                },
                                                {
                                                    "x": 486.8961,
                                                    "y": 278.1529
                                                },
                                                {
                                                    "x": 70.989296,
                                                    "y": 306.3781
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "authority": [
                                {
                                    "text": "서울출입국관리사무소장",
                                    "formatted": {
                                        "value": "서울출입국관리사무소장"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 300.07544,
                                                    "y": 285.12625
                                                },
                                                {
                                                    "x": 492.13126,
                                                    "y": 285.91016
                                                },
                                                {
                                                    "x": 492.02887,
                                                    "y": 310.99646
                                                },
                                                {
                                                    "x": 299.97308,
                                                    "y": 310.21255
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "authorityEng": [
                                {
                                    "text": "CHIEF, SEOUL IMMIGRATION OFFICE",
                                    "formatted": {
                                        "value": "CHIEF, SEOUL IMMIGRATION OFFICE"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 302.00894,
                                                    "y": 308.88394
                                                },
                                                {
                                                    "x": 338.3482,
                                                    "y": 308.88394
                                                },
                                                {
                                                    "x": 338.3482,
                                                    "y": 321.1607
                                                },
                                                {
                                                    "x": 302.00894,
                                                    "y": 321.1607
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": []
                                }
                            ],
                            "alienRegNumEtc": [
                                {
                                    "text": "B4***",
                                    "formatted": {
                                        "value": "B4***"
                                    },
                                    "keyText": "",
                                    "confidenceScore": 0.0,
                                    "boundingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 128.6607,
                                                    "y": 292.67853
                                                },
                                                {
                                                    "x": 160.58034,
                                                    "y": 292.67853
                                                },
                                                {
                                                    "x": 160.58034,
                                                    "y": 301.51782
                                                },
                                                {
                                                    "x": 128.6607,
                                                    "y": 301.51782
                                                }
                                            ]
                                        }
                                    ],
                                    "maskingPolys": [
                                        {
                                            "vertices": [
                                                {
                                                    "x": 127.77678,
                                                    "y": 291.7946
                                                },
                                                {
                                                    "x": 161.46426,
                                                    "y": 291.7946
                                                },
                                                {
                                                    "x": 161.46426,
                                                    "y": 302.40176
                                                },
                                                {
                                                    "x": 127.77678,
                                                    "y": 302.40176
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ]
                        },
                        "rois": [
                            {
                                "vertices": [
                                    {
                                        "x": 11.189065,
                                        "y": 9.545465
                                    },
                                    {
                                        "x": 537.28156,
                                        "y": 9.624473
                                    },
                                    {
                                        "x": 538.10034,
                                        "y": 341.7781
                                    },
                                    {
                                        "x": 11.295485,
                                        "y": 342.03995
                                    }
                                ]
                            }
                        ],
                        "idtype": "Alien Registration Card"
                    }
                }
            }
        ]
    }
    

    실패

    호출이 실패한 경우의 응답 예시는 다음과 같습니다.

    {
        "version": "V2",
        "requestId": "1234",
        "timestamp": 1725235840459,
        "images": [
            {
                "uid": "{uid}",
                "name": "alienRegistration_test",
                "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.