1. 개요
모든 에러 응답은 다음과 같은 형식을 따릅니다.
{
"success": false,
"code": 424,
"message": "이메일 또는 비밀번호가 올바르지 않습니다.",
"data": null
}
2. 코드 체계
- 4xx: 클라이언트 에러
- 400~409: 일반적인 요청 에러
- 410~419: 인증/인가 관련 에러
- 420~429: 사용자 관련 에러
- 430~439: 친구 관련 에러
- 440~449: 채팅 관련 에러
- 450~459: 초대 관련 에러
- 5xx: 서버 에러
- 500~509: 일반적인 서버 에러
- 510~519: 데이터베이스 관련 에러
- 520~529: 파일 관련 에러
3. 에러 코드 목록
일반적인 요청 에러 (400~409)
| 코드 |
HTTP 상태 |
설명 |
메시지 |
| 400 |
400 Bad Request |
입력값 오류 |
입력값이 올바르지 않습니다. |
| 401 |
405 Method Not Allowed |
허용되지 않은 HTTP 메서드 |
허용되지 않은 메서드입니다. |
| 402 |
400 Bad Request |
잘못된 타입의 값 |
잘못된 타입의 값입니다. |
| 403 |
400 Bad Request |
필수 파라미터 누락 |
필수 요청 파라미터가 누락되었습니다. |
| 404 |
404 Not Found |
엔티티 없음 |
엔티티를 찾을 수 없습니다. |
| 405 |
415 Unsupported Media Type |
지원하지 않는 미디어 타입 |
지원하지 않는 미디어 타입입니다. |
| 406 |
400 Bad Request |
처리 불가능한 요청 상태 |
요청을 처리할 수 없는 상태입니다. |
인증/인가 관련 에러 (410~419)
| 코드 |
HTTP 상태 |
설명 |
메시지 |
| 410 |
401 Unauthorized |
인증 필요 |
인증이 필요합니다. |
| 411 |
401 Unauthorized |
유효하지 않은 토큰 |
잘못된 인증 토큰입니다. |
| 412 |
401 Unauthorized |
만료된 토큰 |
만료된 인증 토큰입니다. |
| 413 |
403 Forbidden |
접근 권한 없음 |
접근이 거부되었습니다. |
| 415 |
401 Unauthorized |
만료된 Refresh Token |
만료된 Refresh Token입니다. |
| 416 |
401 Unauthorized |
유효하지 않은 Refresh Token |
유효하지 않은 Refresh Token입니다. |
| 417 |
401 Unauthorized |
Refresh Token 재사용 감지 |
토큰 재사용이 감지되었습니다. 보안을 위해 모든 세션이 종료됩니다. |
사용자 관련 에러 (420~429)
| 코드 |
HTTP 상태 |
설명 |
메시지 |
| 420 |
404 Not Found |
사용자 없음 |
사용자를 찾을 수 없습니다. |
| 421 |
409 Conflict |
이메일 중복 |
이미 사용 중인 이메일입니다. |
| 422 |
409 Conflict |
사용자명 중복 |
이미 사용 중인 사용자명입니다. |
| 423 |
409 Conflict |
닉네임 중복 |
이미 사용 중인 닉네임입니다. |
| 424 |
401 Unauthorized |
로그인 실패 |
이메일 또는 비밀번호가 올바르지 않습니다. |
친구 관련 에러 (430~439)
| 코드 |
HTTP 상태 |
설명 |
메시지 |
| 430 |
404 Not Found |
친구 없음 |
친구를 찾을 수 없습니다. |
| 431 |
404 Not Found |
친구 요청 없음 |
친구 요청을 찾을 수 없습니다. |
| 432 |
409 Conflict |
친구 요청 중복 |
이미 친구 요청을 보냈습니다. |
| 433 |
400 Bad Request |
자기 자신에게 친구 요청 |
자기 자신에게 친구 요청을 보낼 수 없습니다. |
| 434 |
403 Forbidden |
차단한 사용자에게 친구 요청 |
차단한 사용자에게 친구 요청을 보낼 수 없습니다. |
| 435 |
409 Conflict |
이미 친구 |
이미 친구입니다. |
| 436 |
404 Not Found |
차단 관계 없음 |
차단 관계를 찾을 수 없습니다. |
| 437 |
400 Bad Request |
자기 자신을 차단 |
자기 자신을 차단할 수 없습니다. |
채팅 관련 에러 (440~449)
| 코드 |
HTTP 상태 |
설명 |
메시지 |
| 440 |
404 Not Found |
채팅방 없음 |
채팅방을 찾을 수 없습니다. |
| 441 |
403 Forbidden |
채팅방 접근 권한 없음 |
채팅방에 접근할 권한이 없습니다. |
| 442 |
404 Not Found |
채팅 메시지 없음 |
채팅 메시지를 찾을 수 없습니다. |
| 443 |
400 Bad Request |
비활성화된 채팅방 |
비활성화된 채팅방입니다. |
| 444 |
409 Conflict |
이미 채팅방 멤버 |
이미 채팅방에 참여중입니다. |
| 445 |
403 Forbidden |
채팅방 멤버가 아님 |
채팅방에 참여하고 있지 않습니다. |
| 446 |
403 Forbidden |
방장 권한 필요 |
방장만 수행할 수 있는 작업입니다. |
초대 관련 에러 (450~459)
| 코드 |
HTTP 상태 |
설명 |
메시지 |
| 450 |
404 Not Found |
초대 없음 |
초대를 찾을 수 없습니다. |
| 451 |
400 Bad Request |
이미 처리된 초대 |
이미 처리된 초대입니다. |
| 452 |
409 Conflict |
중복 초대 |
이미 초대를 보냈습니다. |
| 453 |
400 Bad Request |
만료된 초대 |
만료된 초대입니다. |
| 454 |
404 Not Found |
유효하지 않은 초대 코드 |
유효하지 않은 초대 코드입니다. |
서버 에러 (500~509)