1. 엔드포인트
GET https://rest-api.argosidentity.com/v3/submission
GET https://kr.rest-api.argosidentity.com/v3/submission
2. 인증
x-api-key 헤더에 API 키를 포함시켜야 합니다:
x-api-key
x-api-key: {yourAPIKey}
3. 요청 파라미터
요청 파라미터는 URL query 형식이어야 합니다. 각 파라미터에 대한 설명은 다음과 같습니다.string
특정 제출 건의 고유 ID (단일 건 조회)
string
사용자 ID와 일치하는 목록 조회
string
이메일 주소와 일치하는 제출 목록 조회
string
기본값:"50"
반환할 결과의 수 (기본값: 50)
string
다음 페이지 조회를 위한 ID
string
다음 페이지 조회를 위한 날짜
string
조회 시작 날짜 (YYYY-MM-DD)
string
조회 종료 날짜 (YYYY-MM-DD)
string
request_type 파라미터를 사용하여 특정 데이터 유형만 선택적으로 조회할 수 있습니다. 다음 옵션 중 하나를 선택하여 입력할 수 있습니다:
kyc: KYC 관련 데이터와 submission_id를 반환합니다.aml: AML 관련 데이터와 submission_id를 반환합니다.data: 제출자의 개인 정보 데이터와 submission_id를 반환합니다.others: KYC, AML, 개인 정보를 제외한 나머지 모든 데이터 항목을 반환합니다.
4. 호출 방식별 예시
- 단일 건 조회 (submission_id)
- User ID로 조회 (userid)
- Email로 조회 (email)
- 전체 목록 조회
특정 제출 건의 상세 정보를 조회합니다.
요청 예시
curl --location 'https://rest-api.argosidentity.com/v3/submission?submission_id={submission_id}' \
--header 'x-api-key: {yourAPIKey}'
curl --location 'https://kr.rest-api.argosidentity.com/v3/submission?submission_id={submission_id}' \
--header 'x-api-key: {yourAPIKey}'
응답 예시
{
"Items": [
{
"data": {
"age_group": "{age group}",
"first_name": "{first name}",
"last_name": "{last name}",
"full_name": "{full name}",
"full_name_en": "{full name en}",
"gender": "male",
"nationality": "USA",
"date_of_birth": "YYYY-MM-DD",
"address_city": "{city}",
"address_country": "KOR",
"address_state": "{state}",
"address_street": "{street}",
"address_street2": "{street2}",
"address_zipcode": "{zipcode}",
"ip_address": "{ip_address}",
"idcard_issuingCountry": "USA",
"idcard_issueDate": "YYYY-MM-DD",
"idcard_expireDate": "YYYY-MM-DD",
"idType": "drivers_license",
"documentNumber": "{********}",
"typeOfPermit": "{F-1}",
"typeOfPermitGovKor": "{F-1}",
"expiryDateOfStayKor": "YYYY-MM-DD",
"nationalityGovKor": "{미국인}",
"cf1": "{cf1}",
"cf2": "{cf2}",
"cf3": "{cf3}"
},
"OCR_raw": {
"rotate": {
"value": "0"
},
"address": {
"value": "John Smith, 123 Elm Street, town, CA 91234, USA",
"score": 96,
"accepted": true,
"coordinates": {}
}
},
"ocr": {
"birthDate": "YYYY-MM-DD",
"expireDate": "YYYY-MM-DD",
"issueDate": "YYYY-MM-DD",
"firstName": "{first name}",
"lastName": "{last name}",
"fullName": "{full name}",
"identityNumber": "{identity number}",
"nationality": "USA"
},
"review": {
"birthDate": "YYYY-MM-DD",
"fullName": "{full name}",
"gender": "female",
"nationality": "USA",
"issueDate": "YYYY-MM-DD",
"expireDate": "YYYY-MM-DD",
"documentNumber": "{document number}",
"identityNumber": "{identity number}"
},
"image": {
"idImage": "{idImage from ArgosServer}",
"idBackImage": "{idBackImage from ArgosServer}",
"selfieImage": "{selfieImage from ArgosServer}",
"addressImage": "{addressImage from ArgosServer}"
},
"memo": {
"text": "dashboard memo",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ"
},
"duplicated_users": ["submission_id_1", "submission_id_2"],
"duplicated_selfie_users": ["submission_id_1", "submission_id_2"],
"email": "{email}",
"submission_id": "{submission_id}",
"recognition_score": "{recognition_score}",
"argos_score": "{argos_score}",
"duplicated_information": "{duplicated_information}",
"custom_duplicated_information": "{custom_duplication_information}",
"applicant_id": "{applicant_id}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"kyc_result_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"pending_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"userid": "{userid}",
"reviewer": "system",
"project_options": {
"option_aml": true,
"option_addressData": false,
"policy_approvePeriod": 0,
"option_idNumber": true,
"policy_blacklistCountries": [],
"policy_acceptedID": ["government_id", "passport", "drivers_license"],
"option_mask_documentNumber": false,
"option_validationGov": false,
"option_mask_idNumber": false,
"option_documentNumber": true,
"webhookURL": "{webhook_url}",
"policy_ageLimit": 18,
"option_ai_only": false
},
"additional_list": [
{
"answer": "{field_name}",
"inputValue": "{user_input}",
"blockType": "text"
}
],
"kyc": {
"result": "approved",
"comment": [],
"commentCode": [],
"attempts": [
{
"attemptCnt": 1,
"step1Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"ocrResult": "success",
"verificationResult": "success",
"verification": {
"result": {
"code": "CF-00000",
"message": "성공",
"transactionId": "{transaction_id}",
"extraMessage": ""
},
"data": {
"resAuthenticity": "{authenticity}",
"resExpirationDate": "YYYY-MM-DD",
"resNationality": "{nationality}",
"resAuthenticityDesc": "",
"resStatus": "{status}"
},
"userName": "{fullname}"
},
"verificationParams": {
"idType": "passport",
"nationality": "USA",
"birthDate": "YYYY-MM-DD",
"documentNumber": "{document_number}"
},
"faceSimilarityScore": 84,
"selfieImage": "{selfieImage URL}",
"livenessScore": 76,
"liveness": {
"score": 1.1610267,
"probability": 0.76151925,
"quality": 0.5903906
},
"step2Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ"
}
],
"retry": []
},
"aml": {
"raw_data": {},
"matches": [],
"risk_level_summary": "Not Screened",
"currentstatus": "Not Screened"
},
"verification": {
"faceAge": []
},
"signals": {
"faceAge": [],
"cameraProcessInfo": [
{
"processStartTime": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"processEndTime": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"type": "idcard-front-capture",
"error": null
}
],
"startButtonClickTime": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"confidence": {
"finalData": {
"fullName": 0.9189999999999999,
"gender": 1,
"nationality": 0.9969999999999999,
"birthDate": 1,
"expireDate": 0.9969999999999999,
"documentNumber": 0.9969999999999999
},
"ocrData": {
"gender": 1,
"birthDate": 1,
"documentNumber": 0.99,
"expireDate": 0.99,
"nationality": 0.99,
"fullName": 0.73
},
"ocrExtractedData": {
"birth_date": 1,
"emergency_name": 0.14,
"number": 0.99,
"height": 0.96,
"restrictions": 0.64,
"weight": 1,
"emergency_address": 0.5,
"nationality": 0.99,
"authority": 0.98,
"name": 0.73,
"gender": 1,
"audit_number": 0.98,
"emergency_telephone": 0.9,
"eyes": 0.98,
"donor": 0.17,
"blood_type": 0,
"first_name": 0.73,
"address": 0.88,
"expiry_date": 0.99,
"last_name": 0.98,
"middle_name": 0.73,
"endorsements": 0.98
}
}
},
"updateHistory": {
"updateAdmin": "{admin's email}",
"updateTime": "YYYY-MM-DD-HH-MM-SS-ZZZ"
},
"warning": [],
"Injection_action": [],
"id_LivenessScore": {},
"projection": {
"projectionId": "{projection_id}",
"projectionName": "{projection_name}"
},
"tokenId": "{token_id}",
"pre_verification": {
"request_id": "{request_id}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"ip_address": "XXX.xx.xx.x",
"fraud_score": 84,
"attempts_frequency": "FirstSeen",
"country_code": "KOR",
"connection_type": "Mobile",
"is_valid": true
}
}
]
}
{
"Items": [
{
"data": {
"age_group": "N/A",
"name": "{name}",
"gender": "male",
"nationality": "KOR",
"date_of_birth": "YYYY-MM-DD",
"address_formatted": "{formatted address}",
"address_detail": "{detail address}",
"ssnNumber": "{***-**-****}",
"phoneNumber": "{phone number}",
"cf1": "{cf1}",
"cf2": "{cf2}",
"cf3": "{cf3}"
},
"memo": {
"text": "dashboard memo",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ"
},
"duplicated_users": ["submission_id_1", "submission_id_2"],
"duplicated_selfie_users": ["submission_id_1", "submission_id_2"],
"email": "{email}",
"submission_id": "{submission_id}",
"duplicated_information": "{duplicated_information}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"kyc_result_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"pending_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"userid": "{userid}",
"reviewer": "system",
"additional_list": [
{
"answer": "{field_name}",
"inputValue": "{user_input}",
"blockType": "text"
}
],
"aml": {
"raw_data": {},
"matches": [],
"risk_level_summary": "Not Screened",
"currentstatus": "Not Screened"
},
"verification": {
"faceAge": []
},
"signals": {
"faceAge": [],
"cameraProcessInfo": [
{
"processStartTime": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"processEndTime": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"type": "knowledge-face-passive",
"error": null
}
],
"startButtonClickTime": "YYYY-MM-DD-HH-MM-SS-ZZZ"
},
"kyc": {
"result": "approved",
"comment": [],
"commentCode": [],
"attempts": [
{
"attemptCnt": 1,
"step1Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"step2Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"faceSimilarityScore": 85,
"selfieImage": "{selfieImage URL}",
"livenessScore": 99,
"liveness": {
"score": 1.2,
"probability": 0.8,
"quality": 0.6
},
"detectFace": [
{
"AgeRange": {
"High": 33,
"Low": 25
},
"Gender": {
"Confidence": 99.27,
"Value": "Male"
}
}
]
}
],
"retry": []
},
"projection": {
"projectionId": "{projection_id}",
"projectionName": "{projection_name}"
},
"pre_verification": {
"request_id": "{request_id}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"ip_address": "XXX.xx.xx.x",
"fraud_score": 84,
"attempts_frequency": "FirstSeen",
"country_code": "KOR",
"connection_type": "Mobile",
"is_valid": true
}
}
]
}
상세한 응답 필드 정의는 응답 필드 정의 페이지를 참조하세요.
특정 사용자 ID와 연관된 모든 제출 건을 조회합니다.
요청 예시
curl --location 'https://rest-api.argosidentity.com/v3/submission?userid={userid}' \
--header 'x-api-key: {yourAPIKey}'
curl --location 'https://kr.rest-api.argosidentity.com/v3/submission?userid={userid}' \
--header 'x-api-key: {yourAPIKey}'
응답 예시
result.json
{
"Items": [
{
"data": {
"name": "{name}",
"gender": "male",
"nationality": "KOR",
"date_of_birth": "YYYY-MM-DD",
"address_formatted": "{formatted address}",
"address_detail": "{detail address}",
"ssnNumber": "{***-**-****}",
"phoneNumber": "{phone number}",
"cf1": "{cf1}",
"cf2": "{cf2}",
"cf3": "{cf3}"
},
"email": "{email}",
"submission_id": "{submission_id}",
"userid": "{userid}",
"duplicated_information": "{duplicated_information}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"kyc_result_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"pending_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"reviewer": "system",
"recognition_score": "{recognition_score}",
"argos_score": "{argos_score}",
"image": {
"idImage": "{idImage from ArgosServer}",
"idBackImage": "{idBackImage from ArgosServer}",
"selfieImage": "{selfieImage from ArgosServer}",
"addressImage": "{addressImage from ArgosServer}"
},
"memo": {
"text": "dashboard memo",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ"
},
"kyc": {
"result": "approved",
"comment": [],
"commentCode": [],
"attempts": [
{
"attemptCnt": 1,
"step1Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"step2Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"faceSimilarityScore": 85,
"selfieImage": "{selfieImage URL}",
"livenessScore": 99,
"liveness": {
"score": 1.2,
"probability": 0.8,
"quality": 0.6
}
}
],
"retry": []
},
"aml": {
"raw_data": {},
"matches": [],
"risk_level_summary": "Not Screened",
"currentstatus": "Not Screened"
},
"additional_list": [
{
"answer": "{field_name}",
"inputValue": "{user_input}",
"blockType": "text"
}
],
"projection": {
"projectionId": "{projection_id}",
"projectionName": "{projection_name}"
}
},
{
"data": {
"name": "{name}",
"gender": "female",
"nationality": "BRA",
"date_of_birth": "YYYY-MM-DD"
},
"email": "{email}",
"submission_id": "{submission_id_2}",
"userid": "{userid}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"kyc": {
"result": "rejected",
"comment": ["Multiple invalid KYC attempts"],
"commentCode": ["too_many_retry"]
}
}
]
}
상세한 응답 필드 정의는 응답 필드 정의 페이지를 참조하세요.
특정 이메일 주소와 연관된 모든 제출 건을 조회합니다.
요청 예시
curl --location 'https://rest-api.argosidentity.com/v3/submission?email={email}' \
--header 'x-api-key: {yourAPIKey}'
curl --location 'https://kr.rest-api.argosidentity.com/v3/submission?email={email}' \
--header 'x-api-key: {yourAPIKey}'
응답 예시
result.json
{
"Items": [
{
"data": {
"name": "{name}",
"gender": "male",
"nationality": "KOR",
"date_of_birth": "YYYY-MM-DD",
"address_formatted": "{formatted address}",
"address_detail": "{detail address}",
"ssnNumber": "{***-**-****}",
"phoneNumber": "{phone number}",
"cf1": "{cf1}",
"cf2": "{cf2}",
"cf3": "{cf3}"
},
"email": "{email}",
"submission_id": "{submission_id}",
"duplicated_information": "{duplicated_information}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"kyc_result_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"pending_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"reviewer": "system",
"recognition_score": "{recognition_score}",
"argos_score": "{argos_score}",
"image": {
"idImage": "{idImage from ArgosServer}",
"idBackImage": "{idBackImage from ArgosServer}",
"selfieImage": "{selfieImage from ArgosServer}",
"addressImage": "{addressImage from ArgosServer}"
},
"memo": {
"text": "dashboard memo",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ"
},
"kyc": {
"result": "approved",
"comment": [],
"commentCode": [],
"attempts": [
{
"attemptCnt": 1,
"step1Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"step2Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"faceSimilarityScore": 85,
"selfieImage": "{selfieImage URL}",
"livenessScore": 99,
"liveness": {
"score": 1.2,
"probability": 0.8,
"quality": 0.6
}
}
],
"retry": []
},
"aml": {
"raw_data": {},
"matches": [],
"risk_level_summary": "Not Screened",
"currentstatus": "Not Screened"
},
"additional_list": [
{
"answer": "{field_name}",
"inputValue": "{user_input}",
"blockType": "text"
}
],
"projection": {
"projectionId": "{projection_id}",
"projectionName": "{projection_name}"
}
},
{
"data": {
"name": "{name}",
"gender": "female",
"nationality": "BRA",
"date_of_birth": "YYYY-MM-DD"
},
"email": "{email}",
"submission_id": "{submission_id_2}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"kyc": {
"result": "rejected",
"comment": ["Multiple invalid KYC attempts"],
"commentCode": ["too_many_retry"]
}
}
]
}
상세한 응답 필드 정의는 응답 필드 정의 페이지를 참조하세요.
모든 제출 건을 조회합니다. 페이지네이션을 사용하는 것을 권장합니다.
요청 예시
curl --location 'https://rest-api.argosidentity.com/v3/submission?count=50' \
--header 'x-api-key: {yourAPIKey}'
curl --location 'https://kr.rest-api.argosidentity.com/v3/submission?count=50' \
--header 'x-api-key: {yourAPIKey}'
응답 예시
result.json
{
"Items": [
{
"data": {
"name": "{name}",
"gender": "male",
"nationality": "KOR",
"date_of_birth": "YYYY-MM-DD",
"address_formatted": "{formatted address}",
"address_detail": "{detail address}",
"ssnNumber": "{***-**-****}",
"phoneNumber": "{phone number}",
"cf1": "{cf1}",
"cf2": "{cf2}",
"cf3": "{cf3}"
},
"email": "{email}",
"submission_id": "{submission_id}",
"duplicated_information": "{duplicated_information}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"kyc_result_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"pending_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"userid": "{userid}",
"reviewer": "system",
"recognition_score": "{recognition_score}",
"argos_score": "{argos_score}",
"image": {
"idImage": "{idImage from ArgosServer}",
"idBackImage": "{idBackImage from ArgosServer}",
"selfieImage": "{selfieImage from ArgosServer}",
"addressImage": "{addressImage from ArgosServer}"
},
"memo": {
"text": "dashboard memo",
"updated_at": "YYYY-MM-DD-HH-MM-SS-ZZZ"
},
"kyc": {
"result": "approved",
"comment": [],
"commentCode": [],
"attempts": [
{
"attemptCnt": 1,
"step1Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"step2Time1st": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"faceSimilarityScore": 85,
"selfieImage": "{selfieImage URL}",
"livenessScore": 99,
"liveness": {
"score": 1.2,
"probability": 0.8,
"quality": 0.6
}
}
],
"retry": []
},
"aml": {
"raw_data": {},
"matches": [],
"risk_level_summary": "Not Screened",
"currentstatus": "Not Screened"
},
"additional_list": [
{
"answer": "{field_name}",
"inputValue": "{user_input}",
"blockType": "text"
}
],
"projection": {
"projectionId": "{projection_id}",
"projectionName": "{projection_name}"
}
},
{
"data": {
"name": "{name}",
"gender": "female",
"nationality": "BRA",
"date_of_birth": "YYYY-MM-DD"
},
"email": "{email}",
"submission_id": "{submission_id_2}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"pending_at": "YYYY-MM-DD-HH-MM-SS-ZZZ",
"reviewer": "system",
"recognition_score": "{recognition_score}",
"argos_score": "{argos_score}",
"kyc": {
"result": "rejected",
"comment": ["test"],
"commentCode": ["other"]
}
}
],
"nextpageKey": {
"id": "{submission_id}",
"created_at": "YYYY-MM-DD-HH-MM-SS-ZZZ"
}
}
이 API 호출은 모든 제출 건을 반환하므로 대량의 데이터가 포함될 수 있습니다. 성능 최적화를 위해 페이지네이션 파라미터를 사용하는 것이 좋습니다.
상세한 응답 필드 정의는 응답 필드 정의 페이지를 참조하세요.
5. 안전한 데이터 전송
submission_id를 포함한 요청 파라미터 전체를 하나의 JSON 객체로 암호화한 뒤, URL 인코딩하여
data 쿼리 파라미터로 전달해야 합니다.
자세한 내용은 API 요청 데이터 암호화 (AES-256-ECB)를 참조하세요.POST·PATCH 요청 본문의 암호문은 raw base64 문자열로 전달합니다. GET 요청의 암호문은 URL 인코딩한 뒤
data 쿼리 파라미터로 전달합니다.암호화된 요청 예시
curl --location 'https://rest-api.argosidentity.com/v3/submission?data={encrypted_data}' \
--header 'x-api-key: {yourAPIKey}'
curl --location 'https://kr.rest-api.argosidentity.com/v3/submission?data={encrypted_data}' \
--header 'x-api-key: {yourAPIKey}'
안전한 데이터 전송을 사용할 경우 응답이 암호화된 데이터로 반환되며, 데이터를 읽기 위해 복호화해야 합니다.
암호화할 요청 전체
안전한 데이터 전송 옵션이 활성화된 프로젝트에서는 사용할 요청 파라미터를 모두 하나의 JSON 객체로 묶어 암호화합니다. 아래는 모든 파라미터를 포함한 예시이며, 실제 요청에는 필요한 파라미터만 넣습니다:encrypt-request-params.json
{
"count": "50",
"submission_id": "string",
"email": "string",
"userid": "string",
"nextpage_id": "string",
"nextpage_date": "string",
"start_date": "YYYY-MM-DD",
"end_date": "YYYY-MM-DD",
"request_type": "kyc"
}
data 쿼리 파라미터로 전달합니다.
data 밖에 평문으로 둔 파라미터는 무시됩니다. 조회 조건은 모두 암호화할 객체 안에 넣어야 합니다.암호화된 응답
응답에는 isEncrypted 플래그와 암호화된 데이터가 포함됩니다:result.json
{
"data": "encrypted-string",
"isEncrypted": true
}
6. 응답 필드 정의
GET/Submission API의 응답에 포함되는 모든 필드에 대한 상세 정의는 다음 페이지를 참조하세요:응답 필드 정의
GET/Submission API 응답 필드의 상세 정의 및 설명
7. 오류 코드
| 에러 코드 | 메시지 | 설명 |
|---|---|---|
invalid_payload | Invalid payload | 요청 본문을 파싱할 수 없음 |
missing_data | Required input data is missing | 필수 필드가 누락됨 |
invalid_project | Invalid project | 프로젝트 ID가 유효하지 않음 |
invalid_admin | Invalid admin | 관리자 계정에 이 프로젝트에 대한 권한이 없음 |
invalid_parameter | invalid parameter: {parameter} | 예상치 못한 매개변수가 제출됨 |
invalid_format | invalid format: ${parameter} | 매개변수가 예상 형식과 일치하지 않음 |
processing_error | Failed to complete migration | 처리 중 알 수 없는 오류 발생 |