Skip to content

Api 명세서

1. 인증 & 사용자 API

구분 메서드 URL 설명 인증 주요 요청 데이터(요약)
회원가입 POST /auth/signup 기본 회원가입 없음 이름, 이메일, 비밀번호, 전화번호, 생년월일, 주소, 성별
로그인 POST /auth/login 이메일/비번 로그인, 토큰 발급 없음 이메일, 비밀번호
비밀번호 재설정 요청 POST /auth/password-reset/request 비밀번호 초기화 링크/코드 요청 없음 이메일 (또는 휴대폰)
비밀번호 재설정 확정 POST /auth/password-reset/confirm 새 비밀번호로 변경 없음 토큰/코드, 새 비밀번호
내 프로필 조회 GET /users/me 내 프로필 정보 조회 필요 -
내 프로필 수정 PATCH /users/me 이름/전화번호/주소 등 수정 필요 수정할 필드(이름, 폰번호, 주소, 프로필 이미지 등)
회원 탈퇴 DELETE /users/me 계정 삭제/비활성화 필요 -
사용자 상세 조회 GET /users/{userId} 특정 사용자 공개 프로필 조회 필요 경로변수 userId

2. 친구 관리 API

구분 메서드 URL 설명 인증 주요 요청 데이터(요약)
사용자 검색 GET /users/search 닉네임/이메일로 사용자 검색 필요 q, page, size
친구 요청 보내기 POST /friends/requests 다른 사용자에게 친구 요청 필요 targetUserId, (선택) 메시지
받은 친구 요청 목록 GET /friends/requests/received 내가 받은 친구 요청 리스트 필요 page, size
보낸 친구 요청 목록 GET /friends/requests/sent 내가 보낸 친구 요청 리스트 필요 page, size
친구 요청 수락/거절 PATCH /friends/requests/{requestId} 친구 요청 승인/거절 필요 action = ACCEPT / REJECT
친구 목록 조회 GET /friends 내 친구 목록 조회 필요 page, size (선택)
친구 메모/별칭 수정 PATCH /friends/{friendUserId} 친구별 메모/별칭 설정 필요 alias, memo
친구 삭제 DELETE /friends/{friendUserId} 친구 관계 삭제 필요 경로변수 friendUserId

3. 술집 & 지도/위치 API

구분 메서드 URL 설명 인증 주요 요청 데이터(요약)
주변 술집 조회 GET /bars/nearby 내 위치 기준 1km(기본) 내 술집 리스트 필요(또는 선택) lat, lng, radius, category, openNow
술집 검색 GET /bars 키워드+위치 기반 술집 검색 필요(또는 선택) q, lat, lng, radius, category, page, size
술집 상세 GET /bars/{barId} 술집 상세 정보 필요(또는 선택) barId
술집 상태 조회 GET /bars/{barId}/status 영업 여부, 만석 여부, 예상 대기시간 필요 barId
길찾기/경로 안내 GET /directions 출발→도착 간 거리/시간/경로 필요 fromLat, fromLng, toLat, toLng, mode(WALK/TRANSIT/DRIVE)
내 위치 조회(선택) GET /location/me 브라우저/앱 위치 허용 시 현재 좌표 필요 -

4. AI 추천 서비스 API

구분 메서드 URL 설명 인증 주요 요청 데이터(요약)
술집 추천 받기 POST /recommendations/bars 시간/날씨/예산/제약 포함 술집 추천 필요 위치, 인원수, 1·2·3차 단계, 예산, 이동수단, 막차시간, 블랙리스트, 선호 테마 등
추천 이력 조회 GET /recommendations/history 내가 요청했던 추천 이력 필요 page, size

5. 리뷰 & 평가 API

구분 메서드 URL 설명 인증 주요 요청 데이터(요약)
리뷰 요약/통계 GET /bars/{barId}/reviews/summary 평균 별점, 개수, 별점 분포 등 필요(또는 선택) barId
리뷰 목록 조회 GET /bars/{barId}/reviews 술집별 리뷰 리스트 필요(또는 선택) barId, sort(LATEST/LIKES), page, size
리뷰 상세 조회 GET /reviews/{reviewId} 개별 리뷰 상세 필요(또는 선택) reviewId
리뷰 작성 POST /bars/{barId}/reviews 실제 방문 기반 리뷰 작성 필요 rating, text, tags, images
리뷰 수정 PATCH /reviews/{reviewId} 내가 쓴 리뷰 내용 수정 필요 수정할 필드 (점수, 내용, 태그 등)
리뷰 삭제 DELETE /reviews/{reviewId} 리뷰 삭제 필요 reviewId
내 리뷰 목록 GET /users/me/reviews 내가 작성한 리뷰 모아보기 필요 page, size
리뷰 좋아요 POST /reviews/{reviewId}/like 좋아요/좋아요 취소 필요 like = true/false
리뷰 신고 POST /reviews/{reviewId}/report 부적절 리뷰 신고 필요 reasonCode, detail
술집 개인 메모 작성/수정 PUT /bars/{barId}/memo 나만 보는 개인 메모 저장 필요 content
술집 개인 메모 조회 GET /bars/{barId}/memo 내 메모 조회 필요 barId

6. 방문 이력 & 선호도 API

구분 메서드 URL 설명 인증 주요 요청 데이터(요약)
방문 이력 등록 POST /visits 술집 방문 기록 저장 필요 barId, visitedAt, peopleCount, (선택)planId
내 방문 이력 조회 GET /users/me/visits 기간별 방문 내역 조회 필요 from, to, page, size
선호도 프로필 조회 GET /users/me/preferences 선호 술 종류/가격대/분위기 등 필요 -
활동 요약 조회 GET /users/me/activity-summary 자주 가는 코스, 모임별 추천에 쓸 요약 필요 기간 등(선택)
프라이버시 설정 PATCH /users/me/settings/privacy 방문/리뷰 공개 범위 설정 필요 visitHistoryVisibility, reviewVisibility

7. 술자리 플랜 & 일정/캘린더 API

구분 메서드 URL 설명 인증 주요 요청 데이터(요약)
플랜 생성 POST /plans 1·2·3차 코스(술집+시간) 작성 필요 planName, description, steps[], members[]
플랜 상세 조회 GET /plans/{planId} 플랜 상세 정보 필요 planId
플랜 수정 PATCH /plans/{planId} 코스/메모 등 수정 필요 수정 필드
플랜 삭제 DELETE /plans/{planId} 플랜 삭제 필요 planId
플랜 목록(정렬) GET /plans 내/그룹 플랜 목록 (투표순 정렬 등) 필요 sort, page, size
플랜 투표 POST /plans/{planId}/votes 플랜 선호 투표 필요 vote = true/false
일정 등록 POST /schedules 플랜과 연결된 일정/알림 설정 필요 planId, title, type, startAt, endAt, reminders[]
일정 이력 조회 GET /schedules/history 과거 술자리 일정 목록 필요 from, to, page, size
월간 캘린더 데이터 GET /calendar/monthly 월별 일정 목록(아이콘/타입 포함) 필요 year, month
일간 캘린더 데이터 GET /calendar/daily 일별 상세 일정/툴팁용 요약 필요 date
일정 상세(회고) GET /calendar/events/{scheduleId} 일정 상세 + 장소/참여자/메모 필요 scheduleId
공유 캘린더 생성 POST /calendar/shared 친구와 공유하는 캘린더 필요 캘린더 이름, 멤버 리스트 등
구글 캘린더 연동 POST /calendar/integrations/google Google Calendar 연동 토큰 등록 필요 OAuth 관련 토큰/코드

8. 그룹 & 채널 & 채팅 API

구분 메서드 URL 설명 인증 주요 요청 데이터(요약)
그룹 생성 POST /groups 술자리/모임 그룹 생성 필요 name, description, iconUrl
그룹 상세 조회 GET /groups/{groupId} 그룹 정보 조회 필요 groupId
그룹 수정 PATCH /groups/{groupId} 그룹 이름/설명/아이콘 수정 필요 수정 필드
그룹 삭제 DELETE /groups/{groupId} 그룹 삭제 (관리자) 필요 groupId
그룹 소유권 이관 POST /groups/{groupId}/transfer-owner 리더 변경 필요 newOwnerId
그룹 탈퇴 POST /groups/{groupId}/leave 내가 그룹에서 나가기 필요 groupId
멤버 강퇴 POST /groups/{groupId}/kick 특정 멤버 강퇴 필요 targetUserId
그룹 멤버 목록 GET /groups/{groupId}/members 그룹 멤버 리스트 필요 groupId
초대 링크 생성 POST /groups/{groupId}/invites 초대 URL 생성 필요 groupId
초대 정보 조회 GET /invites/{inviteCode} 초대 대상 그룹 정보 미리보기 없음/필요 inviteCode
초대 수락 POST /invites/{inviteCode}/accept 초대 수락 후 그룹 참여 필요 inviteCode
채널 목록 조회 GET /groups/{groupId}/channels 그룹 내 채널 리스트 필요 groupId
채널 생성 POST /groups/{groupId}/channels 텍스트/이벤트 채널 만들기 필요 name, type(TEXT/PLAN/EVENT)
플랜 채널 생성 POST /groups/{groupId}/channels/plan 특정 플랜 전용 채널 필요 name, linkedPlanId
채널에 장소 카드 추가 POST /channels/{channelId}/places 채널에 술집 카드 공유 필요 barId, comment
채널 노트 추가 POST /channels/{channelId}/notes 채널 공지/메모 텍스트 필요 content
채팅 메시지 목록 GET /channels/{channelId}/messages 채팅 로그 조회 필요 before, after, page, size
메시지 보내기 POST /channels/{channelId}/messages 텍스트/이미지/영상 전송 필요 content, attachments[]
메시지 수정 PATCH /messages/{messageId} 보낸 메시지 수정 필요 수정할 내용
메시지 삭제 DELETE /messages/{messageId} 메시지 삭제 필요 messageId
투표(폴) 생성 POST /channels/{channelId}/polls 채팅방 내 투표 만들기 필요 question, options[], expiresAt
투표 참여 POST /polls/{pollId}/vote 옵션 선택 필요 optionIndex
이모지 리액션 POST /messages/{messageId}/reactions 이모지 반응 추가/삭제 필요 emoji, add = true/false