Error Reference

멀티체인 Web3 API에서 사용되는 에러 코드 명세입니다.

Error Response Format

오류가 발생한 경우 응답은 아래와 같은 형식으로 반환됩니다. codemessage는 발생한 에러 타입에 따라 다른 값으로 반환되며, code 명세에 대해서는 아래 Error Code Specification을 참고하세요.

{
   "code":"${ERROR_CODE}",
   "message":"${ERROR_DESCRIPTION}"
}

Error Code Specification

codeHTTP Status CodeDescription
SUCCESS200 OK정상 응답
SUCCESS201 Created정상 처리 (신규 생성)
INVALID_JSON_BODY400 Bad Request클라이언트의 요청 Body의 형식이 유효하지 않은 경우 반환되는 에러.


Example
1. 유효하지 않은 JSON Body
2. 필수인 요청 Body에 대해 빈 값이 전달됨
MISSING_REQUIRED_PARAMETER400 Bad Request클라이언트의 요청 내 필수 인자가 누락된 경우 반환되는 에러.


Example
1. 필수 Path, Header, Query 파라미터의 누락
2. 필수 값으로 정의된 Body 내 Key 또는 Value 값이 존재하지 않음.
INVALID_PARAMETER400 Bad Request요청한 파라미터가 정의된 형식과 다르거나 유효하지 않은 경우 반환되는 에러.


Example
1. Number 타입 형식의 파라미터를 문자열 형식으로 전달한 경우
2. 정의된 최대 길이를 초과하는 값을 전달한 경우
3. 유효하지 않은 날짜 또는 시간 형식을 입력한 경우
4. 정의된 인코딩 스킴(Scheme)이 적용되지 않은 경우(Base64 인코딩 등)
5. 요청 파라미터의 정규 표현식에 위배되는 값이 전달된 경우 (이메일, 전화번호 등)
WRONG_PARAMETER400 Bad Request유효한 형식의 요청 파라미터가 전달되었으나 지원하지 않는 값인 경우 반환되는 에러.


Example
1. enum 타입의 파라미터 중 정의되지 않은 값을 입력한 경우
2. 지원하지 않는 protocol, network를 요청한 경우
WRONG_RANGE_PARAMETER400 Bad RequestWRONG_PARAMETER 케이스 중 특히 범위 관련 오류 반환이 필요한 경우 반환되는 에러.


Example
1. 통계 API에서 최대 조회 기간을 초과한 데이터 조회를 요청한 경우
2. 기준일 이전 데이터를 요청한 경우
3. 존재하지 않는 데이터 범위에 대해 요청한 경우 (Pagination 사용 시, Token Index 등)
DEPRECATED_OPERATION400 Bad RequestDeprecated된 API 및 리소스에 대한 요청 시 반환되는 에러.
NO_AUTHENTICATION_FOUND401 Unauthorized클라이언트 요청 내 인증 정보가 포함되지 않는 경우에 반환되는 에러.
AUTHENTICATION_FAILED401 Unauthorized클라이언트 요청 내 인증 정보가 존재하나, 정보의 불일치 또는 존재하지 않는 계정인 경우 반환되는 에러.
PERMISSION_DENIED403 Forbidden인증은 완료되었으나 인가되지 않은 리소스에 접근하는 경우에 반환되는 권한 에러.
RESOURCE_NOT_FOUND404 Not Found클라이언트가 존재하지 않는 리소스에 대해 조회를 요청한 경우 반환되는 에러.


Example
1. 정의되지 않은 API Path에 대한 요청
2. 요청된 리소스를 찾을 수 없는 경우 (ID 기반 조회 시 주로 해당 됨)
TIMEOUT408 Request Timeout어플리케이션 서버에서 허용하는 시간 제한 내에 요청이 정상적으로 전달되지 않은 경우 반환되는 에러.
RESOURCE_ALREADY_EXISTS409 Conflict이미 존재하는 리소스에 대해 클라이언트가 중복 생성 요청을 한 경우 반환되는 에러.


Example
1. 특정 식별자로 리소스 생성을 요청하였으나 해당 식별자가 이미 존재하여 중복 생성할 수 없는 경우
REJECTED409 Conflict클라이언트 요청이 서버로부터 처리할 수 없는 요청으로 판단 되어 거절되는 경우 반환되는 에러.
TOO_LARGE_PAYLOAD413 Payload Too Large클라이언트 요청이 서버에서 허용하는 전체 payload의 최대 크기를 초과한 경우 반환되는 에러.
TOO_MANY_REQUESTS429 Too Many Request클라이언트의 요청이 허용된 처리량을 초과하여 처리가 불가능한 경우 반환되는 에러.


Example
1. 노드 서비스를 사용하는 경우 요금제에 따른 일별/월별 요청 허용량을 초과하여 요청하는 경우 (Quota Limitation)
2. 요금제에 따른 허용 순간 처리속도를 초과한 요청이 인입되어 처리가 불가능한 경우 (Rate Limit)
INTERNAL_SERVER_ERROR500 Internal Server Error내부 서버 오류


Example
1. 핸들되지 않은 런타임 에러의 발생
2. 서버 내 자원(DB, 큐, 캐시를 포함) 처리 과정에서 인프라 수준의 에러의 발생
INTERRUPTED500 Internal Server Error다중 요청을 처리하는 과정에서 특정 클라이언트의 요청에 대해 일시적으로 처리가 실패한 경우 반환되는 에러. 서버 부하로 인한 에러로 판단 할 수 있음.
UNAVAILABLE503 Service Unavailable서버의 서비스 제공이 불가능한 상태. 인프라의 다운 또는 서비스 중단을 동반한 업그레이드 작업 등으로 인해 반환될 수 있는 에러.

JSON-RPC Error Code Specification

CodeMessageDescription
-32000server error빈 배치에 대한 오류 응답으로 반환될 수 있는 에러
-32001notifications not supported알림이 지원되지 않을 때 반환될 수 있는 에러
-32002request timed outtime out이 발생했을 때 반횐될 수 있는 에러
-32600invalid request유효한 요청이 아닐 경우 반환 될 수 있는 에러
-32601"the method X does not exist/is not available”존재 하지 않는 method를 호출 했을 경우 반환될 수 있는 에러
-32601subscription not found존재하지 않는 subscription을 호출 했을 경우 반환될 수 있는 에러
-32602Invalid parameter
("missing value for required argument X”)
입력한 Parameters가 디코딩할 수 없거나 입력한 Parameters 수가 잘못되었을 때 반환될 수 있는 에러.
-32603Internal errorInternal JSON-RPC 에러
-32700parse error서버로 부터 Invalid된 JSON을 받았을 경우 반환될 수 있는 에러