API 개요
나비잠 API는 사용자와 관리자 두 가지 관점으로 나뉩니다.
서버 정보
| 환경 | Base URL |
|---|---|
| 운영 | https://www.nabi-jam.com/api |
| 스테이징 | https://stg.nabi-jam.com/api |
도메인 주의
운영 환경은 반드시 www.nabi-jam.com을 사용하세요. nabi-jam.com으로 요청하면 301 리다이렉트가 발생하여 POST 요청의 Body가 손실됩니다.
공통 응답 형식
모든 API는 아래 5개 필드를 포함하는 JSON으로 응답합니다.
{
"status": "success",
"errorType": null,
"errorCode": null,
"message": null,
"data": { ... }
}
| 필드 | 타입 | Nullable | 설명 |
|---|---|---|---|
status | String | N | "success" 또는 "error" |
errorType | String | Y | 에러 유형 (정상 시 null) |
errorCode | Integer | Y | 에러 코드 (정상 시 null) |
message | String | Y | 에러 메시지 (정상 시 null) |
data | Object | Y | 응답 데이터 (데이터 없으면 null) |
성공 응답 예시
{
"status": "success",
"errorType": null,
"errorCode": null,
"message": null,
"data": {
"orderId": "ORD-20260305-001"
}
}
에러 응답 예시
{
"status": "error",
"errorType": "ResourceNotFoundException",
"errorCode": null,
"message": "해당 예약을 찾을 수 없습니다.",
"data": null
}
에러 유형 (errorType)
| errorType | HTTP 상태 | 설명 |
|---|---|---|
IllegalArguemntError | 400 | 잘못된 파라미터 |
MethodArgumentNotValidException | 400 | 요청 검증 실패 (@Valid) |
ResourceNotExistException | 400 | 리소스 없음 (일반) |
LoginFailException | 401 | 인증 실패 |
ResourceTimeOutException | 401 | 세션/인증 만료 |
AuthorizationException | 403 | 권한 없음 |
ResourceNotFoundException | 404 | 리소스 조회 실패 |
InvalidCodeException | 409 | 유효하지 않은 코드 |
ResourceAlreadyExistException | 409 |