TEAM B-4 B-4 B-4 B-4 B-4 B-4 B-4
팀원 소개 ! ❤️
Search
NAME
ROLE
MBTI
BLOG
GITHUB
한 마디!
Daily Scrum
😻 개인 하루 계획표 🥰
Search
화요일
4
수요일
0
목요일
0
금요일
0
토요일
0
일요일
0
월요일
0
S.A.
프로젝트 소개 !
프로젝트
사용한 기술
필수 요구 사항
추가 요구 사항
TEAM GITHUB
팀 과제 기획 관련
ERD
Wire Frame
Convention
개발 일정 및 역할
영규
지환
연우
유진
개발 일정
기본 보기
Table
Search
분류
기능
method
url
요구사항
request
response-success
fail
주석
사용자
POST
/v1/users/signup
{
"username":”Rtanee",
"password":"123456789",
”email” : “Rtanee@sparta.com”,
}
status code: 201
{
"username":”Rtanee",
"password":"123456789",
”email” : “Rtanee@sparta.com”,
}
1. 입력값 오류
{
"msg": "허용된 username 또는 password 값이 아닙니다.",
"status": 400,
"fieldError": [
{
"errorField": "username",
"correctPoint": "\"^[a-z0-9]{4,10}$\"와 일치해야 합니다"
},
{
"errorField": "password",
"correctPoint": "\"^[a-zA-Z0-9!@#$%^&*()-_+=<>?/\\[\\]{}|;:'\",.]{8,15}$\"와 일치해야 합니다"
},
{
"errorField": "introduction",
"correctPoint": "크기가 1에서 30 사이여야 합니다"
},
{
"errorField": "email",
"correctPoint": "올바른 형식의 이메일 주소여야 합니다"
}
]
},
2. username 중복
{
"msg": "이미 존재하는 username 입니다.",
"status": 400
},
3. 관리자 인증 실패
{
"msg": "관리자 암호가 틀려 등록이 불가합니다.",
"status": 400
}
PATCH
/v1/users/(userId)/password
Authorization: Bearer token
{
"currentPassword" :"123456789",
"newPassword" :"123456987",
"passwordCheck" :"123456987"
}
status code: 204
1. 현재 비밀번호가 일치하지 않는 경우
{
"msg": "비밀번호가 일치하지 않습니다.
}
2. 새로운 비밀번호와 비밀번호 확인이 일치하지 않는 경우
{
"msg": "비밀번호가 일치하지 않습니다.
}
PUT
/v1/users/(userId)/profile
Authorization: Bearer token
{
”id” : “id값”
"username":"수정된 이름",
"email":"수정된 이메일",
"introduction":"수정된 소개"
}
{
”id” : “id값”
"username":"수정된 이름",
"email":"수정된 이메일",
"introduction":"수정된 소개"
}
1. DB에 저장되어 있는 이름과 중복될 경우
{
"msg": "중복된 이름입니다.",
}
2. DB에 저장되어 있는 이메일과 중복될 경우
{
"msg": "중복된 이메일입니다.",
}
GET
/v1/users/{userId}
Authorization: Bearer token
{
"userId" : "park",
"email" : “park@email.com",
“introduction" : "학생 입니다.”
}
GET
/v1/users/logout
status code: 204
1. Authorization 헤더가 없을 때
{
"msg": "Cannot invoke \"String.substring(int)\" because \"bearerToken\" is null",
"status": 400
},
2. Authorization헤더가 있지만 토큰값에 “Bearer “가 없을때
{
"msg": "begin 7, end 0, length 0",
"status": 400
},
3. Authorization헤더가 있지만 유효한 토큰이 아닐 때
{
"msg": "해당 토큰이 존재하지 않습니다.",
"status": 400
},
POST
/v1/users/login
{
"name" : "park",
"password" : "1234"
}
status code: 204
{
msg; “로그인 성공했어요! 축하드려요!”
}
1. username 미일치
{
"msg": "등록된 유저가 없습니다.",
"status": 400
}
2. 비밀번호 미일치
{
"msg": "비밀번호가 일치하지 않습니다.",
"status": 400
},
3. 중복 로그인 시도
{
"msg": "이미 로그인 되어 있습니다.",
"status": 400
}
보드
POST
/v1/boards
Authorization: Bearer token
{ “title”:”title”, ”content”:”content” }
“redirect: /api/boards/{boardsId}”
GET
/v1/boards/{boardId}
[{”post_id” : ”1”,
“title” : ”title”,
”content”:”content”,
"createdAt": "2023-12-05T15:29:28.790981",
"modifiedAt": "2023-12-05T15:29:28.790981",
”accessCount” : “조회수 입니다”,
”comment_list": [
{
”comment_id” : “3”,
”user_id” : “유저 이름1”,
”content”:”content1”,
"createdAt": "2023-11-16T15:29:28.790981",
"modifiedAt": "2023-12-05T15:29:28.790981"
},
{
”comment_id” : “4”,
”user_id” : “유저 이름2”,
”content”:”content2”,
"createdAt": "2023-11-16T15:29:28.790981",
"modifiedAt": "2023-12-05T15:29:28.790981"
}
]
보드가 존재하지 않습니다.
DELETE
/v1/boards/{boardId}
Authorization: Bearer token
{
"msg" : "삭제 성공",
"status" : "200"
}
보드가 존재하지 않습니다.
PUT
/v1/boards/{boardId}
Authorization: Bearer token
{ “title”:”title 수정”, ”content”:”content 수정” }
“redirect: /api/posts/{postId}”
보드가 존재하지 않습니다.
PATCH
/v1/boards/{boardId}/boardColor
Authorization: Bearer token
{”backgroundColor” : ”GREEN”
}
리스트
POST
/v1/boards/{boardsId}/columns
Authorization: Bearer token
{ “comment”:”comment” }
“redirect: /api/posts/{postId}”
보드가 존재하지 않습니다.
DELETE
/v1/boards/{boardsId}/columns/{columnsId}
Authorization: Bearer token
{
"msg" : "댓글이 삭제되었습니다.",
"status" : "200"
}
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
PUT
/v1/boards/{boardsId}/columns/{columnsId}
Authorization: Bearer token
{ “comment”:”comment” }
“redirect: /api/posts/{postId}”
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
POST
/v1/boards/{boardsId}/columns/{columnsId}/order/{newOrder}
Authorization: Bearer token
{
”targetBoard”: “boardId”
}
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
GET
/v1/boards/{boardsId}/lists/{listsId}/lists
Authorization: Bearer token
[{
”list_id” : “유저 이름1”,
“title”:”title1”,
”content”:”content1”,
"comment_list" : [
"writer" : "유저 이름1",
"createdAt": "2023-11-16T15:29:28.123412"
]
"createdAt": "2023-11-16T15:29:28.790981"
}]
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
카드
POST
/v1/columns/{columnsId}/cards
Authorization: Bearer token
{
"title" : "title1"
}
“redirect: /v1/users/boards/lists/{postId}/cards
GET
/v1/columns/{columnsId}/cards/{cardsId}
Authorization: Bearer token
[{”card_id” : ”1”,
“title” : ”title”,
”content”:”content”,
"due_date":"2023-12",
"complete":"false",
"createdAt": "2023-12-05T15:29:28.790981",
"modifiedAt": "2023-12-05T15:29:28.790981",
”comment_list": [
{
”comment_id” : “3”,
”user_id” : “유저 이름1”,
”content”:”content1”,
"createdAt": "2023-11-16T15:29:28.790981",
"modifiedAt": "2023-12-05T15:29:28.790981"
},
{
”comment_id” : “4”,
”user_id” : “유저 이름2”,
”content”:”content2”,
"createdAt": "2023-11-16T15:29:28.790981",
"modifiedAt": "2023-12-05T15:29:28.790981"
}
]
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
카드가 존재하지 않습니다.
DELETE
/v1/columns/{columnsId}/cards/{cardsId}
Authorization: Bearer token
204 (No Content)
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
카드가 존재하지 않습니다.
PATCH
/v1/columns/{columnsId}/cards/{cardsId}/cardTitle
Authorization: Bearer token
{
"title" : "changeTilte"
}
[{”card_id” : ”1”,
“title” : ”changeTitle”,
”content”:”changeContent”,
"due_date":"2023-12",
"complete":"false",
"createdAt": "2023-12-05T15:29:28.790981",
"modifiedAt": "2023-12-05T15:41:31.790981",
”comment_list": [
{
”comment_id” : “3”,
”user_id” : “유저 이름1”,
”content”:”content1”,
"createdAt": "2023-11-16T15:29:28.790981",
"modifiedAt": "2023-12-05T15:29:28.790981"
},
{
”comment_id” : “4”,
”user_id” : “유저 이름2”,
”content”:”content2”,
"createdAt": "2023-11-16T15:29:28.790981",
"modifiedAt": "2023-12-05T15:29:28.790981"
}
],200 (OK)
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
카드가 존재하지 않습니다.
PATCH
/v1/columns/{columnsId}/cards/{cardsId}/cardContent
Authorization: Bearer token
{
"title" : "changeCardContent"
}
[{”title” : “title”, “writer” : “writer”, “content” : “changeContent”, “backgroundColor” : “WHITE”, “comments : {”content” : “content”, “commentWriter” : “commentWriter”}],200 (OK)
PATCH
/v1/columns/{columnsId}/cards/{cardsId}/cardColor
Authorization: Bearer token
{
"title" : "changeCardColor"
}
{”title” : “title”, “writer” : “writer”, “content” : “content”, “backgroundColor” : “RED”, “comments : {”content” : “content”, “commentWriter” : “commentWriter”}},200 (OK)
POST
/v1/columns/{columnsId}/cards/{cardsId}/assignee
Authorization: Bearer token
{
"username" : “username”
}
204 (No Content)
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
카드가 존재하지 않습니다.
DELETE
/v1/columns/{columnsId}/cards/{cardsId}/assignee
Authorization: Bearer token
{
"username" : “username”
}
204 (No Content)
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
카드가 존재하지 않습니다.
PATCH
/v1/columns/{columnsId}/cards/{cardsId}/order/{newOrder}
Authorization: Bearer token
204 (No Content)
보드가 존재하지 않습니다.
리스트가 존재하지 않습니다.
카드가 존재하지 않습니다.
카드 댓글
POST
/v1/cards/{cardsId}/comment
Authorization: Bearer token
{
"content" : "content1"
}
{
"content" : "content1"
”writer” : “writer”}, 201 (Created)
카드가 존재하지 않습니다.
PATCH
/v1/cards/{cardsId}/comment/{commentId}
Authorization: Bearer token
{
"content" : "changeContent1"
}
200 (OK)
댓글이 존재하지 않습니다.
수정 권한이 없습니다.
DELETE
/v1/cards/{cardsId}/comment/{commentId}
Authorization: Bearer token
204 (No Content)
댓글이 존재하지 않습니다.
삭제 권한이 없습니다.
휴지통