





| 엔드포인트 | 메소드 | 설명 | 요청 파라미터 | 응답 | 필요 권한 |
|---|---|---|---|---|---|
| /api/member/refresh | POST | 토큰 갱신 | Header: Authorization | Map\<String, Object> (accessToken, refreshToken) | 없음 |
| /api/user/check/{nickname} | GET | 닉네임 중복 확인 | PathVariable: nickname(String) | Map\<String, Boolean> (available) | 없음 |
| /api/user/info | GET | 사용자 정보 조회 | - | UserDTO | 인증 |
| /api/user/modify | PUT | 사용자 정보 수정 | UserModifyDTO | Map\<String, Object> | 인증 |
| /api/user/joined | GET | 참여 채팅방 조회 | - | List\ | 인증 |
| /api/user/favorites | GET | 즐겨찾기 목록 조회 | - | List\ | 인증 |
| /api/notifications/subscribe | GET | SSE 알림 구독 | Header: Last-Event-ID | SseEmitter | 인증 |
| /api/notifications/all | GET | 전체 알림 조회 | RequestParam: page(int), size(int) | NotifyDto.PageResponse | 인증 |
| /api/notifications/{notificationId}/read | POST | 알림 읽음 처리 | PathVariable: notificationId(Long) | void | 인증 |
| /api/notifications/unread/count | GET | 읽지 않은 알림 수 조회 | - | Long | 인증 |
| /api/notifications/clear | POST | 전체 알림 읽음 처리 | - | void | 인증 |
| /api/comment | POST | 댓글 생성 | CommentRequestDto | CommentResponseDto | 인증 |
| /api/comment | PUT | 댓글 수정 | CommentRequestDto | CommentResponseDto | 인증 |
| /api/comment/{postId} | GET | 게시물의 댓글 조회 | PathVariable: postId(Long) | List\ | 인증 |
| /api/comment/{commentId} | DELETE | 댓글 삭제 | PathVariable: commentId(Long) | Long | 인증 |
| /chat/{postId}/send | MESSAGE | 채팅 메시지 전송 | DestinationVariable: postId(Long), Payload: ChatMessageDTO | ChatMessageDTO | 인증 |
| /api/post/{postId}/chat/join | POST | 채팅방 입장 | PathVariable: postId(Long) | ChatRoomDTO | 인증 |
| /api/post/{postId}/chat/leave | POST | 채팅방 퇴장 | PathVariable: postId(Long) | String(성공 메시지) | 인증 |
| /api/post/{postId}/chat | GET | 채팅 메시지 조회 | PathVariable: postId(Long) | List\ | 인증 |
| /api/post/{postId}/chat/status | GET | 채팅방 상태 조회 | PathVariable: postId(Long) | ChatRoomDTO | 인증 |
| /api/post | GET | 전체 게시물 조회 | - | List\ | SILVER |
| /api/post | POST | 게시물 생성 | MultipartFile: uploadFiles(선택), PostDTO | Map\<String, Long> (id) | SILVER |
| /api/post/{id} | GET | 특정 게시물 조회 | PathVariable: id(Long) | Post | SILVER |
| /api/post/list | GET | 게시물 페이징 조회 | PageRequestDTO | PageResponseDTO\ | SILVER |
| /api/post/{id} | PUT | 게시물 수정 | PathVariable: id(Long), MultipartFile: uploadFiles(선택), PostDTO | Map\<String, String> | SILVER |
| /api/post/{id} | DELETE | 게시물 삭제 | PathVariable: id(Long) | Map\<String, Object> | SILVER |
| /api/post/{id}/favorite | POST | 게시물 즐겨찾기 토글 | PathVariable: id(Long) | FavoriteDTO | SILVER |
| /api/post/{id}/like | POST | 게시물 좋아요 토글 | PathVariable: id(Long) | LikeDTO | SILVER |
| /api/admin/users | GET | 전체 사용자 조회 | - | List\ | ADMIN |
| /api/admin/users/{userId}/delete | PUT | 사용자 소프트 삭제 | PathVariable: userId(Long) | void | ADMIN |
| /api/admin/users/{userId}/restore | PUT | 삭제된 사용자 복구 | PathVariable: userId(Long) | UserDTO | ADMIN |

| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| id | bigint(20) | PK | 사용자 식별자 |
| is_deleted | bit(1) | 삭제 여부 | |
| social | bit(1) | 소셜 로그인 여부 | |
| deleted_at | datetime(6) | 삭제 일시 | |
| age | varchar(255) | 나이 | |
| varchar(255) | 이메일 | ||
| gender | varchar(255) | 성별 | |
| img | varchar(255) | 프로필 이미지 | |
| mobile | varchar(255) | 휴대폰 번호 | |
| name | varchar(255) | 이름 | |
| nickname | varchar(255) | 닉네임 | |
| password | varchar(255) | 비밀번호 |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| id | bigint(20) | PK | 게시글 식별자 |
| capacity | int(11) | 참여 가능 인원 | |
| del_flag | bit(1) | 삭제 플래그 | |
| latitude | double | 위도 | |
| longitude | double | 경도 | |
| local_date | date | 로컬 날짜 | |
| participate_flag | tinyint(1) | 참여 플래그 | |
| chat_room_id | bigint(20) | FK | 채팅방 ID |
| meeting_time | datetime(6) | 미팅 시간 | |
| user_id | bigint(20) | FK | 작성자 ID |
| view_count | bigint(20) | 조회수 | |
| title | varchar(100) | 제목 | |
| content | varchar(255) | 내용 | |
| place_name | varchar(255) | 장소명 | |
| road_name | varchar(255) | 도로명 | |
| activity_type | enum | 활동 유형(climbing, cycling, hiking, pilates, running, surfing, weight_training, yoga) |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| id | bigint(20) | PK | 채팅방 식별자 |
| activity_type | tinyint(4) | 활동 유형 | |
| can_join | bit(1) | 참여 가능 여부 | |
| participant | bit(1) | 참여자 여부 | |
| participant_count | int(11) | 참여자 수 |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| id | bigint(20) | PK | 메시지 식별자 |
| chat_room_id | bigint(20) | FK | 채팅방 ID |
| created_at | datetime(6) | 생성 일시 | |
| user_id | bigint(20) | FK | 작성자 ID |
| content | varchar(500) | 메시지 내용 | |
| chat_message_type | enum | 메시지 타입(normal, system) |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| comment_id | bigint(20) | PK | 댓글 식별자 |
| del_flag | bit(1) | 삭제 플래그 | |
| created_at | datetime(6) | 생성 일시 | |
| parent_id | bigint(20) | FK | 부모 댓글 ID |
| post_id | bigint(20) | FK | 게시글 ID |
| created_by | varchar(255) | 작성자 | |
| img | varchar(255) | 이미지 | |
| nick_name | varchar(255) | 닉네임 | |
| content | tinytext | 댓글 내용 |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| notification_id | bigint(20) | PK | 알림 식별자 |
| is_read | bit(1) | 읽음 여부 | |
| created_at | datetime(6) | 생성 일시 | |
| post_id | bigint(20) | FK | 게시글 ID |
| user_id | bigint(20) | FK | 사용자 ID |
| content | varchar(255) | 알림 내용 | |
| url | varchar(255) | 알림 URL | |
| notification_type | enum | 알림 타입(chat, comment, like, system) |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| id | bigint(20) | PK | 좋아요 식별자 |
| is_active | bit(1) | 활성화 여부 | |
| created_at | datetime(6) | 생성 일시 | |
| post_id | bigint(20) | FK | 게시글 ID |
| user_id | bigint(20) | FK | 사용자 ID |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| id | bigint(20) | PK | 즐겨찾기 식별자 |
| is_active | bit(1) | 활성화 여부 | |
| created_at | datetime(6) | 생성 일시 | |
| post_id | bigint(20) | FK | 게시글 ID |
| user_id | bigint(20) | FK | 사용자 ID |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| post_id | bigint(20) | PK, FK | 게시글 ID |
| file_name | varchar(255) | 파일명 | |
| ord | int(11) | 정렬 순서 |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| user_id | bigint(20) | PK, FK | 사용자 ID |
| user_role_list | enum | 사용자 권한(role_admin, role_bronze, role_silver, role_system) |
| 컬럼명 | 데이터타입 | 조건 | 설명 |
|---|---|---|---|
| chat_room_id | bigint(20) | PK, FK | 채팅방 ID |
| user_id | bigint(20) | PK, FK | 사용자 ID |