엔드포인트 | 메서드 | 요청 데이터 | 응답 예시 | 설명 | 비고 |
---|---|---|---|---|---|
/api/login | POST | { "username": ..., "password": ... } | { "token": ... } | 로그인 후 JWT 토큰 발급 | |
/api/users | POST | { "username": ..., "password": ... } | 성공 메시지 또는 유저 상세 | 회원 등록 | |
/api/users/me | GET | - | 내 정보 상세 | 내 정보 조회 | |
/api/users/{id} | PATCH | { "fullName": ..., "phone": ... } | 수정 완료 메시지 | 회원 정보 수정 | 이름, 핸드폰, 이메일 수정가능, 관리자, 부서 팀장일 경우 타인의 회원 정보 수정 가능 |
/api/users/{id} | GET | - | 회원 상세 정보 | 특정 회원 정보 조회 | 관리자나 해당 부서 팀장만 타인의 상세 정보 조회 가능 |
api/users/password | PATCH | {"password": ..., "confirmPassword": ...} | 패스워드 변경 완료 | ||
/api/users/{id} | DELETE | - | 삭제 성공 | 회원 삭제 | 소프트딜리트, 관리자 권한, 부서 팀장만 사용 가능 |
/api/users | GET | {"pageSize": ..., "pageNumber": ..., "departmet": ..., "sortType": ..., "searchType": ..., "searchType": ...} | 회원 리스트 | 회원 리스트 조회 | 관리자 권한 일 경우 모든 회원 정보및 부서별 조회 가능, 그 외 본인의 부서 소속 회원만 조회 가능 |
/api/users/{id}/role | PATCH | {"role": ...} | 변경 성공 | 회원 권한 변경 | {ADMIN, MEMBER, GUEST} , 관리자 권한만 사용 가능 |
엔드포인트 | 메서드 | 요청 데이터 | 응답 예시 | 설명 | 비고 |
---|---|---|---|---|---|
/api/departments | POST | { "name": ..., "description": ... } | 부서 생성 데이터 | 부서 생성 | |
/api/departments | GET | { "name": ..., "description": ... } | 부서 조회 데이터 | 부서 리스트 조회 | |
/api/departments/{id} | GET | { "name": ..., "description": ... } | 부서 조회 데이터 | 부서 조회 | |
/api/departments/{id} | PATCH | { "name": ..., "description": ... } | 부서 수정 데이터 | 부서 수정 | |
/api/departments/{id} | DELETE | { "name": ..., "description": ... } | 부서 삭제 데이터 | 부서 삭제 |
엔드포인트 | 메서드 | 요청 데이터 | 응답 예시 | 설명 | 비고 |
---|---|---|---|---|---|
/api/projects | POST | { "name": ..., "description": ... } | 프로젝트 생성 데이터 | 프로젝트 생성 | |
/api/projects | GET | - | 참여중인 프로젝트 목록 | 내 프로젝트 리스트 조회 | 관리자 권한일 시 전체 조회 |
/api/projects/{id} | GET | - | 프로젝트 상세 | 단일 프로젝트 상세 조회 | |
/api/projects/{id} | PUT | { "name": ..., "description": ... } | 수정 메시지 | 프로젝트 수정 | |
/api/projects/{id} | DELETE | - | 삭제 성공 메시지 | 프로젝트 삭제 |
엔드포인트 | 메서드 | 요청 데이터 | 응답 예시 | 설명 |
---|---|---|---|---|
/api/projects/{id}/members | GET | - | 멤버 목록 | 프로젝트 멤버 조회 |
/api/projects/{id}/members | POST | { "userId": ..., "role": ... } | 추가 메시지 | 멤버 초대/추가 |
/api/tasks | POST | { "projectId": ..., "title": ..., "assigneeId": ... } | 태스크 생성 | 태스크 생성 |
/api/tasks | GET | ?projectId=... | 태스크 목록 | 태스크 조회 |
/api/tasks/{id} | PUT | { "status": ... } | 업데이트 메시지 | 태스크 상태 변경 |
/api/tasks/{id} | DELETE | - | 삭제 성공 | 태스크 삭제 |
엔드포인트 | 메서드 | 요청 데이터 | 응답 예시 | 설명 |
---|---|---|---|---|
/api/comments | POST | { "target": "task/issue/etc", "targetId": ..., "content": ... } | 댓글 등록 | 댓글 작성 |
/api/files/upload | POST | (multipart/form-data) | 업로드 성공 | 문서 업로드 |
엔드포인트 | 메서드 | 요청 헤더/파라미터 | 응답 예시 | 설명 |
---|---|---|---|---|
/api/notifications | GET | 인증 헤더 | 알림 리스트 | 내 알림 조회 |
※ 참고: 추가 설계 예정.