HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
⚽
SFAM (스포츠 패밀리) Portfolio
/
🖼️
프로젝트 관리 상세 보기
/
♟️
API 설계
♟️

API 설계

🛰️
API 설계 페이지 각 유저 스토리 API 정보와 시퀀스 다이어그램 문서 페이지 입니다.
🔖 API & Sequence diagram🫥 공통 모델응답 성공 데이터 & 에러 데이터

🔖 API & Sequence diagram

USER
이름
Method
End Point
진행상태
MoSCow
Group
BE.담당자
🛹
사용자가 아이디와 비밀번호로 서비스에 로그인합니다.
POST
/api/users/siginin
완료
Must have
USER
🏔️
사용자가 아이디와 비밀번호로 서비스에 가입합니다.
POST
/api/users/signup
완료
Must have
USER
🗽
사용자가 개인 프로필을 확인할 수 있습니다.
GET
/api/users/:id
완료
Must have
USER
🏜️
사용자는 자신의 팀에 팀원을 초대하기위해 다른 사용자를 조회할 수 있습니다.
GET
/api/users?nickname=
완료
Must have
USER
🌫️
사용자는 내 주변의 공고글을 보기 위해 위치 정보를 업데이트 한다.
PUT
/api/users/location
완료
Must have
USER
🌃
닉네임 중복 체크
GET
/api/users/nickname/duplication?input=
완료
Must have
USER
🌃
유저네임 중복 체크
GET
/api/users/username/duplication?input=
완료
Must have
USER
Team
이름
Method
End Point
진행상태
MoSCow
Group
BE.담당자
⛄
사용자가 팀을 생성할 수 있습니다.
POST
/api/teams
완료
Must have
Team
🖊️
사용자가 팀 프로필을 확인할 수 있습니다.
GET
/api/teams/:id
완료
Must have
Team
🥎
사용자는 자신의 팀에 팀원을 추가하기 위해 다른 사용자를 초대할 수 있다.
POST
/api/teams/:id/invitations
완료
Must have
Team
🎟️
사용자는 팀에 들어가기 위해 요청된 팀 초대를 수락 할 수 있다.
POST
/api/teams/:id/members
완료
Must have
Team
🏤
사용자는 팀을 원하지 않아 요청된 팀 초대를 거절 할 수 있다.
PATCH
/api/teams/:id/invitations/:id
완료
Must have
Team
⚔️
사용자는 초대에 대한 응답을 하기 위해 초대 목록을 조회한다.
GET
/api/teams/invitations
완료
Must have
Team
⚗️
사용자는 내가 리더인 팀을 조회할 수 있다.
GET
/api/teams/me/leader
완료
Must have
Team
Matches
이름
Method
End Point
진행상태
MoSCow
Group
BE.담당자
💼
사용자는 주변 매치 리스트 들을 보기 위해 동네 매치 특정 종목 특정 거리의 매치 리스트 조회를 할 수 있다.
GET
/api/matches?
완료
Must have
Matches
✍️
사용자는 대결 상대를 찾기 위해 대결 공고를 작성한다.
POST
/api/matches
완료
Must have
Matches
📍
사용자는 대결 정보를 확인하기 위해 대결 공고를 확인할 수 있다.
GET
/api/matches/:id
완료
Must have
Matches
⛽
사용자는 대결에 대한 의지 표현하기 위해 신청을 한다.
POST
/api/matches/:id/proposals
완료
Must have
Matches
🌊
대결 공고 작성자는 공고를 내리기 위해 삭제할 수 있다.
DELETE
/api/matches/:id
완료
Must have
Matches
🎨
사용자는 대결이 끝나면 승패를 반영하기 위해 경기 결과를 기입한다.
POST
/api/matches/:id/records
완료
Must have
Matches
💩
사용자는 대결이 끝나면 상대의 매너를 평가하기 위해 경기 후기(별로에요, 좋아요, 최고에요)를 기입한다.
POST
/api/matches/:id/reviews
완료
Must have
Matches
Matches/chat
이름
Method
End Point
진행상태
MoSCow
Group
BE.담당자
🐤
대결 공고 작성자는 대결 신청자와 대화하기 위해 신청을 수락 또는 거절할 수 있다.
PATCH
/api/matches/:matchId/proposals/:id
완료
Must have
Matches/chat
🤢
신청한 사용자는 공고자와 자세한 일정을 정하기 위해 채팅을 한다.
POST
/api/matches/proposals/:id/chats
완료
Must have
Matches/chat
😆
대결 공고 작성자는 대결 확정을 위해 대결을 수락한다.
PATCH
/api/matches/:id
완료
Must have
Matches/chat
🎣
사용자는 대결 상대와의 채팅방을 찾기 위해 채팅방 목록을 조회할 수 있다.
GET
/api/matches/:id/proposals
완료
Must have
Matches/chat
🔑
공고자와 신청자가 대화하기 위해 채팅 기록을 볼 수 있다.
GET
/api/matches/proposals/:id/chats
완료
Must have
Matches/chat

🫥 공통 모델

응답 성공 데이터 & 에러 데이터

  • 응답 성공 데이터 : data로 감싸서 제공
    • { "data": { "id": 7, "username": "pjh612" } }
  • 에러 데이터 반환
    • { "code": "V0001", "message": "Validation error" }