사이드 메뉴
시작하기
로그인
커뮤니케이션
광고
에러 코드
이 문서는 카카오톡 전자문서 이용 중 발생할 수 있는 주요 에러와 해결 방법을 안내합니다. 이 외에 에러 코드는 공통 에러 코드를 참고합니다.
카카오톡 전자문서 API는 에러 코드(errorCode)와 에러 메시지(errorMessage)로 에러 정보를 안내합니다. 에러 코드는 에러 유형, 에러 메시지는 상세 원인을 나타냅니다. 아래는 에러 응답 정보와 예시입니다.
| 이름 | 타입 | 설명 |
|---|---|---|
| errorCode | String | 에러 코드 |
| errorMessage | String | 에러 메시지 |
| edocGtid | String | 트래킹(Tracking) ID |
// HTTP/1.1 404 Not Found{"errorCode": "E404_00","errorMessage": "요청 정보를 찾을 수 없습니다. 유효한 계약을 찾을 수 없습니다.","edocGtid": "in_gw_125423c27377c377f70d3e1d1a312ccd"}
에러 발생 시 해결 방법은 에러 코드에서 에러 메시지로 검색해 확인할 수 있습니다.
| 에러 코드 | 에러 메시지 | 해결 방법 | HTTP 상태 코드 |
|---|---|---|---|
| E400_00 | 유효하지 않은 요청입니다. 지원하지 않는 MediaType 입니다. | 헤더의 Content-Type은 application/json만 허용합니다.헤더에 Content-Type: application/json을 포함해 다시 요청합니다. | 400 |
| E400_00 | 유효하지 않은 요청입니다. 지원하지 않는 method 입니다. | 각 API는 문서의 기본 정보에 명시된 메서드로 요청해야 합니다. | 400 |
| E401_00 | 인증 헤더 키 형식이 잘못되었거나, 존재하지 않습니다. | Authorization, Target-Authorization, settle-id 헤더가 누락되었거나, 형식이 잘못된 경우 올바른 헤더를 포함해 재요청합니다.허용하지 않은 IP 주소로 요청한 경우 [호출 허용 IP 주소]에 등록된 IP로 요청하거나, 요청 IP를 등록 후 재요청합니다. | 401 |
| E500_00 | 서버 에러입니다. 다시 시도해 주세요. | 서버 에러입니다. 다시 시도해주세요. 반복될 경우 edocGtid로 문의합니다. | 500 |
HTTP 상태 코드
문서 발송: 다건 발송 API는 일부 문서 발송에만 에러가 발생하는 경우가 있으므로, HTTP 상태 코드가 아래 정보와 일치하지 않을 수 있습니다.
| 에러 코드 | 에러 메시지 | 해결 방법 | HTTP 상태 코드 |
|---|---|---|---|
| E400_00 | 유효하지 않은 요청입니다. CI 또는 전/성/생은 필수 입니다. | 수신인에 대한 CI 또는 전화번호, 이름, 생년월일을 입력해야 합니다. | 400 |
| 유효하지 않은 요청입니다. CI의 형식이 올바르지 않습니다. | 정확한 형식의 CI를 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 전화번호의 형식이 올바르지 않습니다. | 정확한 형식의 전화번호를 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 생년월일의 형식이 정확하지 않습니다. | 정확한 형식의 생년월일을 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. title은 공백이 될 수 없습니다. | title의 값은 필수로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. title은 40자 이내여야 합니다. | title의 값은 최대 40자 이하로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. guide는 공백이 될 수 없습니다. 유효하지 않은 요청입니다. guide는 500자 이내여야 합니다. | guide의 값은 필수로 입력해야 하고, 500자 이내로 입력해야 합니다. | ||
| readExpiresAt은 요청 일시로부터 6개월 이내여야 합니다. 유효하지 않은 요청입니다. readExpiresAt은 현재시간 보다 이후여야 합니다. | 최초 열람 만료 일시(readExpiresAt)를 유효한 값으로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. reviewExpiresAt이 설정할 수 있는 최대 기한을 초과했습니다. LINK 타입 문서의 경우 reviewExpiresAt은 요청 일시로부터 6개월 이내여야 합니다. 유효하지 않은 요청입니다. reviewExpiresAt은 현재시간 보다 이후여야 합니다. 유효하지 않은 요청입니다. reviewExpiresAt은 열람만료시간 보다 이후여야 합니다. | 재열람 만료 일시(reviewExpiresAt)를 유효한 값으로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. payload는 200자 이내여야 합니다. | payload의 값을 200자 이하로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. externalId는 40자 이내로만 요청되어야 합니다. | externalId의 값은 최대 40자 이하로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 문서 원문이 존재하지 않습니다. | 웹링크 타입 상품: content.link의 값이 있어야 합니다.HTML 타입 상품: content.html의 값이 있어야 합니다. | ||
| 유효하지 않은 요청입니다. 올바른 link형식이 아닙니다. | content.link가 https://로 시작해야 합니다. | ||
| 유효하지 않은 요청입니다. link는 1000자를 넘을 수 없습니다. | content.link의 글자수가 1,000자 이하여야 합니다. | ||
| 유효하지 않은 요청입니다. 유통정보를 등록하는 LINK 타입 문서의 경우 44자 또는 64자의 hash 값이 필수 입니다. | hash를 필수 전달해야 하고, 해당 값은 SHA-256 방식의 해시 함수로 생성된 결과여야 합니다. | ||
| 유효하지 않은 요청입니다. 문서 원문이 공백입니다. | content.html에 값을 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 문서 원문은 최대 64kb을 넘을 수 없습니다. | content.html에 64KB 이하의 값을 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 원문 서명이 있는 문서 발송 시 signExpiresAt은 필수입니다. | signExpiresAt을 필수로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 원문 서명이 있는 문서 발송 시 signExpiresAt은 요청 일시로부터 6개월 이내여야 합니다. | signExpiresAt의 값은 요청일 기준 6개월 이내의 값으로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 문서 생성 요청 내용이 없습니다. | envelopes 배열에 최소 1개의 요청을 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 문서 최대 생성 요청 건수(100건)를 초과하였습니다. | envelopes 배열에 최대 100개 이하의 요청을 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. externalId값은 필수 입니다. | 다건 발송 API는 externalId 값을 필수로 입력해야 합니다. | ||
| 유효하지 않은 요청입니다. 중복된 extenalUuid가 존재합니다. | envelopes에 입력된 각 배열의 externalId는 중복이 없어야 합니다. | ||
| E400_02 | 활성화된 공인전자 주소를 찾을 수 없습니다. | 유통정보문서: 송신자(요청기관)에 대한 공인전자주소가 비활성화되어 있습니다. 활성화가 필요합니다. | 400 |
| E400_03 | 식별할 수 없는 사용자입니다. | CI 또는 전화번호, 이름, 생년월일로 요청한 유저의 카카오 계정이 존재하지 않습니다. | 400 |
| E400_04 | 수신거부 된 유저입니다. | 사용자가 문서 수신을 거부했습니다. | 400 |
| E404_00 | 요청 정보를 찾을 수 없습니다. 상품을 찾을 수 없습니다. | 요청된 productCode에 대한 상품이 존재하지 않습니다. 요청 값 확인이 필요 합니다. | 404 |
| E429_00 | 최대 요청 횟수 초과. 초당 최대 호출 가능 횟수를 초과 하였습니다. | 단건 발송 요청은 초당 최대 100건 이내로만 요청해야 합니다. 다건 발송 요청은 초당 최대 200건 이내로만 요청해야 합니다. | 429 |
| E429_01 | 최대 요청 횟수 초과. 테스트 발송 제한을 초과하였습니다. | 딜러사로 발송 한도 추가 요청이 필요 합니다. | 429 |
| 에러 코드 | 에러 메시지 | 해결 방법 | HTTP 상태 코드 |
|---|---|---|---|
| E400_00 | 유효하지 않은 요청입니다. 만료된 토큰입니다. | 토큰 유효시간이 만료되었습니다. 토큰 발급 시점부터 10분 내로 토큰 검증 API를 요청해야 합니다. | 400 |
| 유효하지 않은 요청입니다. 이미 사용된 토큰입니다. | 토큰은 1회만 검증이 가능합니다. | ||
| 유효하지 않은 요청입니다. 토큰 검증이 불가능한 문서입니다. | 요청한 envelopeId의 문서는 토큰 검증이 수행되지 않는 상품이므로 토큰 검증 API를 요청하지 않아야 합니다. | ||
| E404_00 | 요청 정보를 찾을 수 없습니다. 토큰 검증을 수행할 문서[${ENVELOPE_ID}]를 찾을 수 없습니다. | 요청된 envelopeId에 대한 문서가 존재하지 않습니다. | 404 |
| 요청 정보를 찾을 수 없습니다. 토큰이 존재하지 않습니다. | 유효하지 않은 토큰으로 요청했습니다. 정상적인 경로로 전달된 토큰인지 확인이 필요합니다. |
| 에러 코드 | 에러 메시지 | 해결 방법 | HTTP 상태 코드 |
|---|---|---|---|
| E400_00 | 유효하지 않은 요청입니다. 원문이 LINK 타입인 문서만 열람할 수 있습니다. | 웹링크 타입 상품만 열람 처리가 가능합니다. | 400 |
유효하지 않은 요청입니다. token[${TOKEN}]이 만료되었습니다. | 토큰 유효시간이 만료되었습니다. 토큰 검증 시점부터 30분 내로 문서 열람 처리 API를 요청해야 합니다. | ||
| 유효하지 않은 요청입니다. 열람이 불가능한 문서입니다. | 요청한 envelopeId의 문서는 열람 처리를 수행하지 않는 상품입니다. 문서 열람 처리 API를 요청하지 않아야 합니다. | ||
| E400_01 | 문서 열람 기한이 만료되어 열람할 수 없습니다. | 열람 기한이 만료된 문서는 열람 처리할 수 없습니다. | 400 |
| E404_00 | 문서가 삭제되었거나 존재하지 않아 열람할 수 없습니다. | 요청된 envelopeId에 대한 문서가 존재하지 않습니다. | 404 |
| 요청 정보를 찾을 수 없습니다. 토큰 검증 이력이 없습니다. | 토큰 검증을 수행하지 않은 문서는 열람 처리 할 수 없습니다. 토큰 검증을 수행한 후 열람 처리하기 API를 요청해야 합니다. |
| 에러 코드 | 에러 메시지 | 해결 방법 | HTTP 상태 코드 |
|---|---|---|---|
| E400_00 | 유효하지 않은 요청입니다. 100건을 초과하여 요청할 수 없습니다. | 각 요청당 문서 100건 이내로 요청해야 합니다. | 400 |
| E404_00 | 요청 정보를 찾을 수 없습니다. 문서[${ENVELOPE_ID}]를 찾을 수 없습니다. | 요청된 envelopeId에 대한 문서가 존재하지 않습니다. | 404 |
| E429_00 | 최대 요청 횟수 초과. 초당 최대 호출 가능 횟수를 초과 하였습니다. | 조회 요청은 초당 최대 400건 이내로만 요청해야 합니다. | 429 |
| 에러 코드 | 에러 메시지 | 해결 방법 | HTTP 상태 코드 |
|---|---|---|---|
| E400_00 | 유효하지 않은 요청입니다. 원문 서명기능이 없는 문서입니다. | 전자서명 문서만 요청해야 합니다. | 400 |
| 유효하지 않은 요청입니다. 이미 서명값을 제공했습니다. | 해당 문서에 대한 서명 값을 이미 제공했습니다. 서명 값은 한 번만 제공하며, 추가 제공이 필요하다면 별도 문의해야 합니다. | ||
| E404_00 | 요청 정보를 찾을 수 없습니다. 서명값을 조회할 문서[${ENVELOPE_ID}]를 찾지 못하였습니다. | 요청된 envelopeId에 대한 문서가 존재하지 않습니다. | 404 |
| 요청 정보를 찾을 수 없습니다. 완료된 서명값을 찾지 못하였습니다. | 사용자가 원문에 대한 전자서명을 완료하지 않았습니다. |
| 에러 코드 | 에러 메시지 | 해결 방법 | HTTP 상태 코드 |
|---|---|---|---|
| E400_00 | 필수값이 누락되었습니다. (reason) | 유통증명서 발급 목적을 작성 후 요청에 포함해 유통증명서 발급 API를 재호출합니다. | 400 |
| 유효하지 않은 요청입니다. 유통증명서 발급 목적은 공백이 될 수 없습니다. | 유통증명서 발급 목적을 작성 후 요청에 포함해 유통증명서 발급 API를 재호출합니다. | ||
| 유효하지 않은 요청입니다. 유통증명서 발급 목적은 200자 이내여야 합니다. | 유통증명서 발급 목적을 200자 이내로 수정해 유통증명서 발급 API를 재호출합니다. | ||
| E404_01 | 유통 정보가 적재되지 않았습니다. 참고: 테스트 상품 또는 유통 정보를 적재하지 않는 상품도 해당 에러가 발생합니다. | 유통 정보가 적재된 후 재요청합니다. | 404 |
| E429_00 | 최대 요청 횟수 초과. | 유통증명서 발급 요청은 초당 최대 5건까지 가능합니다. 요청 속도를 조절 후 다시 호출합니다. | 429 |
| E503_00 | 서버 점검 중으로 서비스 이용이 불가능합니다. KISA 서버 점검 중입니다. | KISA 서버 점검 후 유통증명서 발급 API를 호출합니다. | 503 |
| 에러 코드 | 에러 메시지 | 해결 방법 | HTTP 상태 코드 |
|---|---|---|---|
| E400_00 | 필수값이 누락되었습니다. (period) | 발급 기간(period)을 요청에 포함해 유통 통계 수치 확인서 발급 API를 재호출합니다. | 400 |
| E400_00 | 형식이 잘못되었습니다. (period) | 발급 기간을 YYYY-MM 형식으로 지정해 유통 통계 수치 확인서 발급 API를 재호출합니다. | 400 |
| E429_00 | 최대 요청 횟수 초과. | 유통통계 수치 확인서 발급 요청은 초당 최대 5건 이내로만 가능합니다. 속도를 조절하여 다시 호출합니다. | 429 |
| E503_00 | 서버 점검 중으로 서비스 이용이 불가능합니다. KISA 서버 점검 중입니다. | 서버 점검 후 유통통계 수치 확인서 발급 API를 호출합니다. | 503 |
카카오톡 전자문서 API 호출이 가능한 상태인지 확인이 필요한 경우, 아래 API를 호출합니다. 정상 상태인 경우, 카카오톡 전자문서는 pong으로 응답합니다.
curl -v -G GET "https://edoc-gw.kakao.com/api/ping"