-
Notifications
You must be signed in to change notification settings - Fork 8
공통‐API 명세
ashsty edited this page Jul 25, 2024
·
10 revisions
최종 수정: 2024-07-25
- 기존의 방 관련 리스트 API들의 DTO 네이밍이
roomInfo
->rooms
로 수정되었습니다. - 기존의 방 상세정보 API의 DTO 네이밍이
roomInfo
->roomResponse
로 수정되었습니다. - 기존의 방 관련(리스트, 상세 정보) API들의 DTO 필드
currentParticipantSize
의 네이밍이currentParticipants
로 수정되었습니다. - 기존의 방 관련(리스트, 상세 정보) API들의 DTO 필드
maximumParticipantSize
의 네이밍이limitedParticipants
로 수정되었습니다.
- 기존의 리뷰어/리뷰이 API의 DTO 네이밍이
reviewInfo
->matchResultResponses
로 수정되었습니다.
- 유저가 참여 중인 방 리스트
- 모집 중인 방 리스트 API
- 모집 완료된 방 리스트 API
- 특정 방 참여 신청 API
- 방 상세 정보 API
- 리뷰어 조회 API
- 리뷰어 조회 API
- 리뷰 완료 API
기능: 로그인한 유저가 참여 중인 방의 리스트를 보여줍니다.
- URL
url : localhost:8080/rooms/participated
method: GET
- 입력값
header {
Authorization: "[email protected]"
}
- 반환 json
{
"rooms": [
{
id: 1,
title: "자바 레이싱 카 - TDD",
content: "TDD를 배우고 싶은 자 나에게로",
manager: "김코딩",
repositoryLink: "https://github.com/example/java-racingcar",
thumbnailLink:
"https://gongu.copyright.or.kr/gongu/wrtㅓ/cmmn/wrtFileImageView.do?wrtSn=13301655&filePath=L2Rpc2sxL25ld2RhdGEvMjAyMS8yMS9DTFMxMDAwNC8xMzMwMTY1NV9XUlRfMjFfQ0xTMTAwMDRfMjAyMTEyMTNfMQ==&thumbAt=Y&thumbSe=b_tbumb&wrtTy=10004",
matchingSize: 3,
keywords: ["TDD", "클린코드", "자바"],
currentParticipants: 15,
limitedParticipants: 20,
recruitmentDeadline: "2024-07-30T15:00",
reviewDeadline: "2024-08-10T23:59",
isParticipated: true,
isClosed: false
},
{
id: 2,
title: "자바 레이싱 카 - MVC",
content: "MVC 패턴을 아시나요?",
manager: "최거짓",
repositoryLink: "https://github.com/example/java-racingcar",
thumbnailLink:
"https://gongu.copyright.or.kr/gongu/wrt/cmmn/wrtFileImageView.do?wrtSn=13301655&filePath=L2Rpc2sxL25ld2RhdGEvMjAyMS8yMS9DTFMxMDAwNC8xMzMwMTY1NV9XUlRfMjFfQ0xTMTAwMDRfMjAyMTEyMTNfMQ==&thumbAt=Y&thumbSe=b_tbumb&wrtTy=10004",
matchingSize: 4,
keywords: ["TDD", "클린코드", "자바"],
currentParticipants: 17,
limitedParticipants: 30,
recruitmentDeadline: "2024-07-30T15:00",
reviewDeadline: "2024-08-10T23:59",
isParticipated: true,
isClosed: false
}
]
}
기능: 현재 모집 중인 방의 리스트를 보여줍니다.
- URL
url : localhost:8080/rooms/opened?classification=fe&page=3
page: 0 ~
state: 'all' | 'an' | 'be' | 'fe'
method: GET
- 입력값
header {
Authorization: "[email protected]"
}
- 반환 json
{
"rooms": [
{
id: 1,
title: "자바 레이싱 카 - TDD",
content: "TDD를 배우고 싶은 자 나에게로",
manager: "김코딩",
repositoryLink: "https://github.com/example/java-racingcar",
thumbnailLink:
"https://gongu.copyright.or.kr/gongu/wrtㅓ/cmmn/wrtFileImageView.do?wrtSn=13301655&filePath=L2Rpc2sxL25ld2RhdGEvMjAyMS8yMS9DTFMxMDAwNC8xMzMwMTY1NV9XUlRfMjFfQ0xTMTAwMDRfMjAyMTEyMTNfMQ==&thumbAt=Y&thumbSe=b_tbumb&wrtTy=10004",
matchingSize: 3,
keywords: ["TDD", "클린코드", "자바"],
currentParticipants: 15,
limitedParticipants: 20,
recruitmentDeadline: "2024-07-30T15:00",
reviewDeadline: "2024-08-10T23:59",
isParticipated: true,
isClosed: false
},
{
id: 2,
title: "자바 레이싱 카 - MVC",
content: "MVC 패턴을 아시나요?",
manager: "최거짓",
repositoryLink: "https://github.com/example/java-racingcar",
thumbnailLink:
"https://gongu.copyright.or.kr/gongu/wrt/cmmn/wrtFileImageView.do?wrtSn=13301655&filePath=L2Rpc2sxL25ld2RhdGEvMjAyMS8yMS9DTFMxMDAwNC8xMzMwMTY1NV9XUlRfMjFfQ0xTMTAwMDRfMjAyMTEyMTNfMQ==&thumbAt=Y&thumbSe=b_tbumb&wrtTy=10004",
matchingSize: 4,
keywords: ["TDD", "클린코드", "자바"],
currentParticipants: 17,
limitedParticipants: 30,
recruitmentDeadline: "2024-07-30T15:00",
reviewDeadline: "2024-08-10T23:59",
isParticipated: true,
isClosed: false
}
],
"isLastPage": false
}
기능: 모집이 완료된 방의 리스트를 보여줍니다.
- URL
url : localhost:8080/rooms/closed?classification=fe&page=3
page: 0 ~
state: 'all' | 'an' | 'be' | 'fe'
method: GET
- 입력값
header {
Authorization: "[email protected]"
}
- 반환 json
{
"rooms": [
{
id: 1,
title: "자바 레이싱 카 - TDD",
content: "TDD를 배우고 싶은 자 나에게로",
manager: "김코딩",
repositoryLink: "https://github.com/example/java-racingcar",
thumbnailLink:
"https://gongu.copyright.or.kr/gongu/wrtㅓ/cmmn/wrtFileImageView.do?wrtSn=13301655&filePath=L2Rpc2sxL25ld2RhdGEvMjAyMS8yMS9DTFMxMDAwNC8xMzMwMTY1NV9XUlRfMjFfQ0xTMTAwMDRfMjAyMTEyMTNfMQ==&thumbAt=Y&thumbSe=b_tbumb&wrtTy=10004",
matchingSize: 3,
keywords: ["TDD", "클린코드", "자바"],
currentParticipants: 15,
limitedParticipants: 20,
recruitmentDeadline: "2024-07-30T15:00",
reviewDeadline: "2024-08-10T23:59",
isParticipated: true,
isClosed: false
},
{
id: 2,
title: "자바 레이싱 카 - MVC",
content: "MVC 패턴을 아시나요?",
manager: "최거짓",
repositoryLink: "https://github.com/example/java-racingcar",
thumbnailLink:
"https://gongu.copyright.or.kr/gongu/wrt/cmmn/wrtFileImageView.do?wrtSn=13301655&filePath=L2Rpc2sxL25ld2RhdGEvMjAyMS8yMS9DTFMxMDAwNC8xMzMwMTY1NV9XUlRfMjFfQ0xTMTAwMDRfMjAyMTEyMTNfMQ==&thumbAt=Y&thumbSe=b_tbumb&wrtTy=10004",
matchingSize: 4,
keywords: ["TDD", "클린코드", "자바"],
currentParticipants: 17,
limitedParticipants: 30,
recruitmentDeadline: "2024-07-30T15:00",
reviewDeadline: "2024-08-10T23:59",
isParticipated: true,
isClosed: false
}
],
"isLastPage": false
}
기능: 특정 방에 참여 신청을 할 수 있습니다.
- URL
url : localhost:8080/participate/{id}
method: POST
- 입력값
header {
Authorization: "[email protected]"
}
- 반환 json
X
기능: 방의 상세 정보를 보여줍니다.
- URL
url : localhost:8080/rooms/{id}
method: GET
- 입력값
header {
Authorization: "[email protected]"
}
- 반환 json
{
"roomResponse": {
id: 1,
title: "자바 레이싱 카 - TDD",
content: "TDD를 배우고 싶은 자 나에게로",
manager: "김코딩",
repositoryLink: "https://github.com/example/java-racingcar",
thumbnailLink:
"https://gongu.copyright.or.kr/gongu/wrt/cmmn/wrtFileImageView.do?wrtSn=13301655&filePath=L2Rpc2sxL25ld2RhdGEvMjAyMS8yMS9DTFMxMDAwNC8xMzMwMTY1NV9XUlRfMjFfQ0xTMTAwMDRfMjAyMTEyMTNfMQ==&thumbAt=Y&thumbSe=b_tbumb&wrtTy=10004",
matchingSize: 3,
keywords: ["TDD", "클린코드", "자바"],
currentParticipants: 15,
limitedParticipants: 20,
recruitmentDeadline: "2024-07-30T15:00",
reviewDeadline: "2024-08-10T23:59",
isParticipated: true,
isClosed: false
}
}
기능: 로그인한 유저가 참여 중인 리뷰방의 리뷰어 리스트를 보여줍니다.
- URL
url : localhost:8080/rooms/{id}/reviewers
method: GET
- 입력값
header {
Authorization: "[email protected]"
}
- 반환 json
{
"matchResultResponses": [
{
"userId" : 1,
"username" : "youngsu5582",
"link" : "https://github.com/youngsu5582/java-racing/comment/4",
"isReviewed" : true
},
{
"userId" : 2,
"username" : "youngsu5583",
"link" : "https://github.com/youngsu5582/java-racing/pull/4",
"isReviewed" : false
},
{
"userId" : 3,
"username" : "youngsu5584",
"link" : "https://github.com/youngsu5582/java-racing/pull/4",
"isReviewed" : false
}
]
}
기능: 로그인한 유저가 참여 중인 리뷰방의 리뷰이 리스트를 보여줍니다.
- URL
url : localhost:8080/rooms/{id}/reviewees
method: GET
- 입력값
header {
Authorization: "[email protected]"
}
- 반환 json
{
"matchResultResponses": [
{
"userId" : 1,
"username" : "youngsu5582",
"link" : "https://github.com/youngsu5582/java-racing/pull/7",
"isReviewed" : true
},
{
"userId" : 2,
"username" : "youngsu5583",
"link" : "https://github.com/youngsu5582/java-racing/pull/12",
"isReviewed" : false
{
"userId" : 3,
"username" : "youngsu5584",
"link" : "https://github.com/youngsu5582/java-racing/pull/23",
"isReviewed" : false
}
]
}
기능: 로그인한 유저가 참여 중인 리뷰방에서 특정 리뷰이의 리뷰를 완료하였습니다.
- URL
url : localhost:8080/review/complete
method: POST
- 입력값
header {
Authorization: "[email protected]"
}
body{
roomId: 1,
revieweeId: 5
}
- 반환 json
X