HTTP 상태 코드
HTTP 상태 코드(HTTP Status code)란 응답 메시지의 첫번째 줄에 나타나는 세 자리 숫자의 코드로 요청에 대한 상태 정보(성공 또는 실패)를 나타냅니다. 상태 코드는 크게 5가지로 분류되며, 상태 코드의 첫 번째 숫자로 응답의 종류를 파악할 수 있습니다. 상태 코드에 대한 자세한 사항은 RFC 2616를 참고하기 바랍니다.
다음은 API 호출 후 카카오 플랫폼에서 전송하는 상태 코드의 종류와 각 상태 코드가 의미하는 바를 설명한 표입니다.
200 OK |
성공 | 서버가 클라이언트의 요청을 성공적으로 수행 응답 바디의 경우 각 API별로 응답 바디의 형식이 다를 수 있으므로, 자세한 내용은 각 API별 상세 설명을 참고하기 바랍니다. |
400 Bad Request |
실패 | 일반적인 오류 주로 API에 필요한 필수 파라미터와 관련하여 서버가 클라이언트 오류를 감지해 요청을 처리하지 못한 상태입니다. |
401 Unauthorized |
실패 | 인증 오류(주로 토큰 관련) 해당 리소스에 유효한 인증 자격 증명이 없어 요청에 실패한 상태입니다. |
403 Forbidden |
실패 | 권한 오류 서버에 요청이 전달되었지만, 권한 때문에 거절된 상태입니다. |
429 Too Many Request |
실패 | 쿼터 초과(Daum 검색, 로컬, 비전, 포즈, 비전, 모먼트 API에만 해당) 정해진 사용량이나 초당 요청 한도를 초과한 경우 |
500 Internal Server Error |
실패 | 시스템 오류 서버 에러를 총칭하는 에러 코드로, 요청을 처리하는 과정에서 서버가 예상하지 못한 상황에 놓인 상태입니다. |
502 Bad Gateway |
실패 | 시스템 오류 서로 다른 프로토콜을 연결해주는 게이트웨이가 잘못된 프로토콜을 연결하거나 연결된 프로토콜에 문제가 있어 통신이 제대로 되지 않은 상태입니다. |
503 Service Unavailable |
실패 | 서비스 점검중 서버가 요청을 처리할 준비가 되지 않은 상태입니다. |
공통
-1 | 서버 내부에서 처리 중에 에러가 발생한 경우 해결 방법: 재시도 |
400 |
-2 | 필수 인자가 포함되지 않은 경우나 호출 인자값의 데이타 타입이 적절하지 않거나 허용된 범위를 벗어난 경우 해결 방법: 요청 파라미터 확인 |
400 |
-3 | 해당 API를 사용하기 위해 필요한 기능(간편가입, 동의항목, 서비스 설정 등)이 활성화 되지 않은 경우 해결 방법: [내 애플리케이션] > [제품설정] > '활성화 설정'에서 필요한 기능을 ON으로 설정한 후 재호출 |
403 |
-4 | 계정이 제재된 경우나 해당 계정에 제재된 행동을 하는 경우 | 403 |
-5 | 해당 API에 대한 요청 권한이 없는 경우 해결 방법: 검수 진행하여 권한 획득 후 재호출 |
403 |
-8 | 올바르지 않은 헤더로 요청한 경우 해결 방법: 요청 헤더 확인 |
400 |
-9 | 서비스가 종료된 API를 호출한 경우 해결 방법: 공지 메일이나 데브톡 공지확인 |
400 |
-10 | 허용된 요청 회수가 초과한 경우 해결 방법: 허용된 쿼터 확인 후 쿼터 범위 내로 호출 조정, 쿼터 및 제한과 FAQ 참고 |
400 |
-103 | 존재하지 않는 카카오계정으로 요청한 경우 | 400 |
-602 | 이미지 업로드 시 최대 용량을 초과하였을 경우 | 400 |
-603 | 이미지 업로드나 스크랩 요청과 같이 오래 걸리는 작업이 필요한 API에서 수행 시간이 오래 걸리는 경우 | 400 |
-819 | 카카오톡 채널과 앱이 연결되지 않은 경우 해결 방법: 카포비를 통한 채널과 앱의 연결 |
400 |
-903 | 등록되지 않은 개발자의 앱키나 앱키로 구성된 액세스 토큰으로 요청한 경우 | 400 |
-911 | 지원하지 않는 포맷의 이미지를 업로드 하는 경우 | 400 |
-9798 | 서비스 점검중 | 503 |
카카오 로그인
로그인 기반 API의 경우 앱 연결이 선행되어야 합니다.
-101 | 해당 앱에 카카오계정 연결이 완료되지 않은 사용자가 호출한 경우 해결 방법: 카카오계정 연결 후 재시도 |
400 |
-201 | 사용자 정보 요청 API나 사용자 정보 저장 API 호출 시 앱에 추가하지 않은 사용자 프로퍼티 키 값을 불러오거나 저장하려고 한 경우 해결 방법: [내 애플리케이션] > [제품 설정] > [카카오 로그인] > [사용자 프로퍼티]에서 설정한 사용자 프로퍼티 키와 요청 파라미터가 일치하도록 설정 |
400 |
-401 | 유효하지 않은 앱키나 액세스 토큰으로 요청한 경우, 등록된 앱 정보와 호출된 앱 정보가 불일치 하는 경우 해결 방법: 앱키 확인 또는 토큰 갱신, 개발자 사이트에 등록된 앱정보 확인 |
401 |
-402 | 해당 API에서 접근하는 리소스에 대해 사용자의 동의를 받지 않은 경우 해결 방법: 응답바디의 required_scopes을 확인하여 사용자에게 해당 동의항목을 추가 동의 받도록 요청 |
403 |
-406 | 14세 미만 미허용 설정이 되어 있는 앱으로 14세 미만 사용자가 API 호출한 경우 | 401 |
메시지
-501 | 카카오톡 미가입 사용자가 카카오톡 API를 호출하였을 경우 | 400 |
-502 | 받는 이가 보내는 이의 친구가 아닌 경우 해결 방법: 친구 캐시(cashe) 만료 시간 후에 재요청 |
400 |
-530 | 받는 이가 메시지 수신 거부를 설정한 경우 | 400 |
-531 | 특정 앱에서 보내는 이가 특정인에게 하루 동안 보낼 수 있는 쿼터를 초과한 경우 | 400 |
-532 | 특정 앱에서 보내는 이가 받는 사람 관계없이 하루 동안 보낼 수 있는 쿼터를 초과한 경우 | 400 |
-533 | 특정 앱에서 받는 이가 하루 동안 받을 수 있는 쿼터를 초과한 경우 | 400 |
-534 | 특정 앱에서 받는 이가 한달 동안 받을 수 있는 쿼터를 초과한 경우 | 400 |
-536 | '보내는 이와 받는 이' 한 쌍을 기준으로 하루 동안 주고 받을 수 있는 쿼터를 초과한 경우 | 400 |
-541 | 존재하지 않는 카카오톡 채널일 경우 | 400 |
카카오스토리
-601 | 카카오스토리 가입 사용자에게만 허용된 API에서 카카오스토리 미가입 사용자가 요청한 경우 | 400 |
-604 | 카카오스토리에서 스크랩이 실패하였을 경우 | 400 |
-605 | 카카오스토리에 존재하지 않는 내스토리를 요청했을 경우 | 400 |
-606 | 카카오스토리에서 업로드할 수 있는 최대 이미지 개수(현재 5개. 단, gif 파일은 1개)를 초과하였을 경우 | 400 |
-608 | 카카오스토리 채널 미가입자가 스토리채널 API를 요청한 경우 | 400 |
카카오톡 채널 고객파일 관리
-816 | 파일 ID가 잘못된 경우나 해당 파일 ID로 업로드된 카카오톡 채널 고객파일을 찾을 수 없는 경우 | 400 |
-817 | 이미 존재하는 파일명이나 허용되지 않는 파일명으로 고객파일 등록하는 경우 | 400 |
-818 | 등록한 고객파일이 최대 개수를 초과하였을 경우 (카카오톡 채널 관리자센터에 업로드한 파일 포함하여 최대 30개) | 400 |
카카오페이
-701 | 결제 인증이 완료되지 않은 상태에서 결제 승인 API를 호출한 경우 | 400 |
-702 | 이미 결제 완료된 TID로 다시 결제승인 API를 호출한 경우 | 400 |
-703 | 결제 승인 API 호출 시 포인트 금액이 잘못된 경우 | 400 |
-704 | 결제 승인 API 호출 시 결제 금액이 잘못된 경우 | 400 |
-705 | 결제 승인 API 호출 시 CARD 또는 MONEY 외에 지원하지 않는 결제 수단으로 요청한 경우 | 400 |
-706 | 결제 준비 API에서 요청한 partner_order_id와 다른 값으로 결제승인 API 호출한 경우 | 400 |
-707 | 결제 준비 API에서 요청한 partner_user_id와 다른 값으로 결제승인 API 호출 한 경우 | 400 |
-708 | 잘못된 pg_token로 결제승인 API를 호출한 경우 | 400 |
-710 | 결제 취소 API 호출 시 취소 요청 금액을 취소 가능액보다 큰 금액으로 요청한 경우 | 400 |
-721 | TID가 존재하지 않는 경우 | 400 |
-722 | 금액 정보가 잘못된 경우 | 400 |
-723 | 결제 만료 시간이 지난 경우 | 400 |
-724 | 단건 결제 금액이 잘못된 경우 | 400 |
-725 | 총 결제 금액이 잘못된 경우 | 400 |
-726 | 주문 정보가 잘못된 경우 | 400 |
-730 | 가맹점 앱 정보가 잘못된 경우 | 400 |
-731 | CID 가 잘못된 경우 | 400 |
-732 | GID 가 잘못된 경우 | 400 |
-733 | CID_SECRET이 잘못된 경우 | 400 |
-750 | SID가 존재하지 않는 경우 | 400 |
-751 | 비활성화된 SID로 정기결제 API를 호출한 경우 | 400 |
-752 | SID가 월 최대 사용 회수를 초과한 경우 | 400 |
-753 | 정기 결제 API 호출 시 partner_user_id가 SID를 발급받았던 최초 결제 준비 API에서 요청한 값과 다른 경우 | 400 |
-761 | 입력한 전화번호가 카카오톡에 가입하지 않은 경우 | 400 |
-780 | 결제 승인 API 호출이 실패한 경우 | 400 |
-781 | 결제 취소 API 호출이 실패한 경우 | 400 |
-782 | 정기 결제 API 호출이 실패한 경우 | 400 |
-783 | 승인 요청을 할 수 없는 상태에서 결제 승인 API를 호출한 경우 | 400 |
-784 | 취소 요청을 할 수 없는 상태에서 결제 취소 API를 호출한 경우 | 400 |
-785 | 결제와 취소를 중복으로 요청한 경우 | 400 |
-797 | 1회 결제 한도 금액을 초과할 경우 | 400 |
-798 | 허용되지 않는 IP를 사용한 경우 | 400 |
-799 | 등록된 웹사이트 도메인의 설정과 요청 도메인이 다를 경우 해결 방법: [내 애플리케이션] > [앱 설정] > [플랫폼] > [Web]에서 등록한 사이트 도메인 확인 |
400 |
푸시 알림
-901 | 등록된 푸시 토큰이 없는 기기로 푸시 메시지를 보낸 경우 | 400 |
비전
-912 | 문자 인식 API에서 지원하는 문자 영역 개수를 초과한 경우 | 400 |
포즈
-824 | 포즈 API 초당 요청 한도를 초과한 경우 | 429 |
기타: 카카오 서버 내부 에러
-812 | 번역 API의 내부 에러 | 400 |
-813 | 카카오모먼트 API의 내부 에러 | 400 |
-814 | 포즈 API의 내부 에러 | 500 |
-815 | 카카오톡 채널 고객파일 관리 API 내부 에러 | 400 |
'Kakao API 참고 표' 카테고리의 다른 글
개인정보 동의항목 (기본 설정과 설정 권한 획득 방법) (0) | 2021.01.20 |
---|---|
액세스 토큰에 관하여 (0) | 2020.12.22 |
INFO - 카카오 로그인 인가 및 액세스 토큰 관련 비지니스 에러 (0) | 2020.12.12 |
INFO - REST API 전체 목록 (0) | 2020.12.09 |
댓글