본문으로 건너뛰기

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설명
statusStringN"success" 또는 "error"
errorTypeStringY에러 유형 (정상 시 null)
errorCodeIntegerY에러 코드 (정상 시 null)
messageStringY에러 메시지 (정상 시 null)
dataObjectY응답 데이터 (데이터 없으면 null)

성공 응답 예시

{
"status": "success",
"errorType": null,
"errorCode": null,
"message": null,
"data": {
"orderId": "ORD-20260305-001"
}
}

에러 응답 예시

{
"status": "error",
"errorType": "ResourceNotFoundException",
"errorCode": null,
"message": "해당 예약을 찾을 수 없습니다.",
"data": null
}

에러 유형 (errorType)

errorTypeHTTP 상태설명
IllegalArguemntError400잘못된 파라미터
MethodArgumentNotValidException400요청 검증 실패 (@Valid)
ResourceNotExistException400리소스 없음 (일반)
LoginFailException401인증 실패
ResourceTimeOutException401세션/인증 만료
AuthorizationException403권한 없음
ResourceNotFoundException404리소스 조회 실패
InvalidCodeException409유효하지 않은 코드
ResourceAlreadyExistException409리소스 중복
ResourceUnavailableException409리소스 사용 불가 (잠금)
TossDataIntegrityException409결제 데이터 불일치
SettingConflictException409설정 변경 충돌 (예약 존재)
ResourceValidTimePassedException410유효 시간 초과

인증 방식

구분엔드포인트인증 방식
사용자POST /account/login세션 쿠키 발급 → 이후 요청에 자동 포함
관리자POST /admin/login세션 쿠키 발급 → 이후 요청에 자동 포함
결제 진행-PAY_SESSIONID / ADMIN_PAY_SESSIONID 쿠키

API 카테고리

사용자

API설명
예약/결제슬롯 조회, 결제 진행, 취소, 내역 확인
로그인카카오 알림톡 인증코드 기반 로그인
도어락 제어SSE 기반 비동기 도어락 해제

관리자

API설명
로그인관리자 인증
예약/결제 제어조회, 취소, 변경, 대리 예약, 가상계좌
방 비활성화룸 활성/비활성 토글
도어락 제어관리자용 도어락 해제
카카오 알림톡알림톡 재발송
온습도 정보매장 온습도 조회
냉난방기원격 냉난방 제어

기타

API설명
가맹모집가맹 문의 접수
참고자료토스 에러코드, 지점 변수값