개요
이 API 문서는 DND 11기 7조 째깍 서비스의 API 문서를 유용하게 볼수 있게 도와줍니다.
기본적인 구성은 다음과 같습니다 |
API 구성
/api/v1/**
Domain Name 구성
https://43.203.239.67.nip.io
API
1. 카테고리
1.1. 카테고리 목록 조회
GET /api/v1/categories HTTP/1.1
X-CSRF-TOKEN: aDaBXWcRr1aOO9t2kz9HUMeaXcwTRU6gWprU087w3LiSwUSQUFS5aAJ3l2GjXu0TqxJzZfWqcPV1I36Nbf6x5aqT642h8331
Host: localhost:8080
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 429
[ {
"categoryId" : 1,
"categoryName" : "학교"
}, {
"categoryId" : 2,
"categoryName" : "친구"
}, {
"categoryId" : 3,
"categoryName" : "팀플"
}, {
"categoryId" : 4,
"categoryName" : "회의"
}, {
"categoryId" : 5,
"categoryName" : "스터디"
}, {
"categoryId" : 6,
"categoryName" : "취미"
}, {
"categoryId" : 7,
"categoryName" : "봉사"
}, {
"categoryId" : 8,
"categoryName" : "기타"
} ]
Path | Type | Description |
---|---|---|
|
|
카테고리 아이디 |
|
|
카테고리 이름 |
1.2. 카테고리 개별 조회 - 성공
Parameter | Description |
---|---|
|
카테고리 아이디 |
GET /api/v1/categories/1 HTTP/1.1
X-CSRF-TOKEN: M14pxwdHAOLVk8E3Q2D8MaY7aj8kM7ZTm-2ZFTh7ZN0okgbMUD0Q_zF_YYH4oPlWdE3IVJYKRwZCBtV--N2sLF0aVe9OpD71
Host: localhost:8080
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 51
{
"categoryId" : 1,
"categoryName" : "학교"
}
1.3. 카테고리 개별 조회 - 실패
GET /api/v1/categories/100 HTTP/1.1
X-CSRF-TOKEN: hLA0G6j9hTepDFsGAflGHKw5_ce6RA6H05TOAQWi7tUFZxRUtNEEK5DFtweEPGhkMNRyLZxa0KaNdjmq4a37ZzzE2-MxUiYx
Host: localhost:8080
HTTP/1.1 404 Not Found
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 102
{
"code" : "404",
"message" : "카테고리가 존재하지 않습니다.",
"validation" : { }
}
2. 모임
2.1. 모임 생성 - 성공
POST /api/v1/meetings HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer access_token
Content-Length: 229
X-CSRF-TOKEN: wlCZNs2isHLMPjmg6jRwyelcATetj6t9XrG0xce7vJhyoxxioWX9V_WRghfhCliWiRlE_Y1pLFbP7JJQOonXoaOP3agRxyRW
Host: localhost:8080
{
"categoryIds" : [ 1, 2 ],
"meetingName" : "세븐일레븐",
"meetingStartDate" : "2024-07-27",
"meetingEndDate" : "2024-07-29",
"numberOfPeople" : 6,
"isAnonymous" : false,
"dueDateTime" : "2024-07-26T23:59:59"
}
Path | Type | Description | Optional | Constraint |
---|---|---|---|---|
meetingName |
String |
모임 이름 |
모임 이름은 1자 이상 10자 이하로 입력해주세요. |
|
meetingStartDate |
String |
모임 시작 날짜 |
모임 시작일은 종료일 이전이어야 합니다. |
|
meetingEndDate |
String |
모임 종료 날짜 |
모임 종료일은 시작일 이후이어야 합니다. |
|
numberOfPeople |
Number |
모임 인원 |
모임 인원은 2명 이상 10명 이하로 설정해주세요. |
|
isAnonymous |
Boolean |
익명 여부 |
default = false (실명) |
|
dueDateTime |
String |
일정 입력 마감 시간 |
일정 입력 마감 시간은 모임 시작일 이전이어야 합니다. |
|
categoryIds |
Array |
카테고리 아이디 목록 |
1개 이상의 카테고리를 선택해주세요. |
HTTP/1.1 201 Created
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
2.2. 모임 생성 - 실패
POST /api/v1/meetings HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer access_token
Content-Length: 180
X-CSRF-TOKEN: kSE0pI2Q5S7d6vUhVno1BcgyllCGuX-alnOCpGVTnNrZz2fkoEUAwr-j0h3wjMQWZVcBMPgAuzK_jE23oUW2kFE1qO7urgLX
Host: localhost:8080
{
"categoryIds" : [ ],
"meetingName" : null,
"meetingStartDate" : null,
"meetingEndDate" : null,
"numberOfPeople" : null,
"isAnonymous" : null,
"dueDateTime" : null
}
HTTP/1.1 400 Bad Request
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 583
{
"code" : "400",
"message" : "잘못된 요청입니다.",
"validation" : {
"meetingEndDate" : "모임 일정 종료일은 필수 값입니다.",
"categoryIds" : "카테고리는 최소 1개 이상 3개 이하로 선택해주세요.",
"isAnonymous" : "익명 여부는 필수 값입니다.",
"meetingName" : "모임명은 필수 값입니다.",
"dueDateTime" : "일정 입력 종료 시간은 필수 값입니다.",
"numberOfPeople" : "인원수는 필수 값입니다.",
"meetingStartDate" : "모임 일정 시작일은 필수 값입니다."
}
}
Path | Type | Description |
---|---|---|
|
|
상태 코드 |
|
|
에러 메시지 |
|
|
유효성 검사 오류 목록 |
|
|
모임명은 필수 값입니다. |
|
|
모임 일정 시작일은 필수 값입니다. |
|
|
모임 일정 종료일은 필수 값입니다. |
|
|
인원수는 필수 값입니다. |
|
|
익명 여부는 필수 값입니다. |
|
|
일정 입력 종료 시간은 필수 값입니다. |
|
|
카테고리는 최소 1개 이상 8개 이하로 선택해주세요. |
2.3. 모임 삭제
Parameter | Description |
---|---|
|
모임 ID |
DELETE /api/v1/meetings/1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
X-CSRF-TOKEN: SQpCeR9hiWUPOJ5bX4SV-vtafZLZ_71E8lLo-f0dolKgDJcafWwnGy4A6AQiDKxob6mhn59qUKrvmohpx2Pan8R5wTeXP68p
Host: localhost:8080
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
2.4. 모임 정보 조회
GET /api/v1/meetings/123ABC/info HTTP/1.1
Content-Type: application/json;charset=UTF-8
Accept: application/json
X-CSRF-TOKEN: VIwyxs7LsCJ5WlNiqvJT51X9Oufn5x6sjNusmbsEB_hz9P0gZupRo6uugUFUOTZRnN9ngmecF4be1HuB6ujPrIgyNcFBlc9C
Host: localhost:8080
Parameter | Description |
---|---|
|
모임 UUID |
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 215
{
"meetingId" : 1,
"categoryNames" : [ "팀플", "회의" ],
"meetingName" : "세븐일레븐",
"meetingStartDate" : "2024-08-27",
"meetingEndDate" : "2024-08-29",
"dueDateTime" : "2024-08-26T23:59:59"
}
Path | Type | Description |
---|---|---|
|
|
카테고리 리스트 |
|
|
모임 ID |
|
|
모임 이름 |
|
|
모임 시작 날짜 |
|
|
모임 종료 날짜 |
|
|
일정 입력 마감 시간 |
2.5. 모임 최적 시간 조회
GET /api/v1/meetings/123ABC/times?sort=COUNT&request_time=2024-10-18T17%3A43%3A25.692006 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Accept: application/json
X-CSRF-TOKEN: cbezmIkdQqX2f-LPZ8JTp5bZiljoJBUPbDOLOQTMjJDencdJQI6G-boqIcHbSdH7U-9nkKG_pzndQHAiWlfvDDeutPbp-aV5
Host: localhost:8080
Parameter | Description |
---|---|
|
모임 UUID |
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 484
{
"data" : {
"meetingTimeList" : [ {
"memberNames" : [ "고래", "상어" ],
"startTime" : "2024-08-27T10:00:00",
"endTime" : "2024-08-27T12:00:00",
"rank" : 1.0
} ],
"numberOfPeople" : 2,
"isAnonymous" : false,
"meetingStartDate" : "2024-08-27",
"meetingEndDate" : "2024-08-29",
"requestTime" : "2024-10-18T17:43:25.692006"
},
"pageInfo" : {
"page" : 1,
"size" : 1,
"totalPages" : 1,
"totalElements" : 1
}
}
Path | Type | Description |
---|---|---|
|
|
총 인원 수 |
|
|
익명 여부 |
|
|
모임 시작 날짜 |
|
|
모임 종료 날짜 |
|
|
요청 시간 |
|
|
멤버 이름 리스트 |
|
|
시작 시간 |
|
|
종료 시간 |
|
|
우선순위 (오름차순) |
|
|
현재 페이지 |
|
|
페이지 크기 |
|
|
총 요소 수 |
|
|
총 페이지 수 |
2.6. 모임 참가자 목록 조회
GET /api/v1/meetings/123ABC/participants HTTP/1.1
Content-Type: application/json;charset=UTF-8
Accept: application/json
X-CSRF-TOKEN: 9GQyGNZMySTWC_cOElccXAGNpgxxlYrgu2jUMt6oZmBYc1MEkQAKLeUqrxz7PpE_JHooOmPrizUV9OnNg1vgA73JAFdvEDI9
Host: localhost:8080
Parameter | Description |
---|---|
|
모임 UUID |
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 244
{
"numberOfPeople" : 2,
"isAnonymous" : false,
"participantInfoList" : [ {
"nickname" : "고래",
"isAssigned" : true,
"isLeader" : true
}, {
"nickname" : "상어",
"isAssigned" : true,
"isLeader" : false
} ]
}
Path | Type | Description |
---|---|---|
|
|
참석자 수 |
|
|
익명 여부 |
|
|
참석자 닉네임 |
|
|
일정 할당 여부 |
|
|
참석자 리더 여부 |
3. 회원
3.1. 회원이 속한 모임 조회
GET /api/v1/members/meetings HTTP/1.1
Accept: application/json
X-CSRF-TOKEN: 0VZFop5Eo8WKpa5sYsToKfEVwWcYZ-IStkEARdRBPTYxvjH8tDJ1wPpwmqenkJdbAencH5ct7AUuAtY_gyVkdbEjD1dUjwjN
Host: localhost:8080
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 309
[ {
"categoryNames" : [ "팀플", "스터디", "회의" ],
"meetingId" : 1,
"meetingUuid" : "123ABC",
"meetingName" : "세븐일레븐",
"meetingStartDate" : "2024-08-27",
"meetingEndDate" : "2024-08-29",
"dueDateTime" : "2024-08-26T23:59:59",
"numberOfPeople" : 6,
"isAnonymous" : false
} ]
Path | Type | Description |
---|---|---|
|
|
카테고리 이름 리스트 |
|
|
모임 ID |
|
|
모임 UUID |
|
|
모임 이름 |
|
|
모임 시작일 |
|
|
모임 종료일 |
|
|
투표 종료일 |
|
|
모임 인원 |
|
|
익명 여부 |
3.2. 회원 닉네임 수정
PATCH /api/v1/members/nickname HTTP/1.1
Content-Type: application/json;charset=UTF-8
Accept: application/json
Content-Length: 34
X-CSRF-TOKEN: lFaYpgiZ77jemuZ7UbHBzSn4j8Y4MhAPf9bbOXhs4ZF5JpSC8mOqkW76ionzrdUYY5z1qxzNoqcLBnUiSu_jCh4IhKJNFa3k
Host: localhost:8080
{
"memberNickname" : "newName"
}
Path | Type | Description | Optional | Constraint |
---|---|---|---|---|
memberNickname |
String |
변경할 닉네임 |
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
3.3. 회원 탈퇴
DELETE /api/v1/members HTTP/1.1
Accept: application/json
X-CSRF-TOKEN: cGRCvX9bfGHk8bczB1Ru1Z1vrX9z5HjtcwShraFgFvN9Vox6E1wg20tqGFDJwdNXNXla4aVWgEZA0RvASjaZzMBVLsVPZuhI
Host: localhost:8080
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
4. 일정 (모임 일정)
일정은 모임의 하위 개념으로, 모든 요청은
/api/v1/meetings/{meetingUuid}/schedule
로 시작합니다.
4.1. 회원의 일정 할당 - 성공
POST /api/v1/meetings/met123/schedules/members HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 263
X-CSRF-TOKEN: zkeHr_mWLlAViGP8fiM7q9ruLJtXRAQqLs5J_UWpPN1QErYxr3O1mc_0HGQ47gHFHw4PneKMAfo2fDcHGvYryXHIWe9odNUD
Host: localhost:8080
{
"dateOfScheduleList" : [ {
"startTime" : "2024-09-06T09:00:00",
"endTime" : "2024-09-06T12:00:00",
"rank" : 1
}, {
"startTime" : "2024-09-06T18:00:00",
"endTime" : "2024-09-06T21:00:00",
"rank" : 2
} ],
"nickname" : "정승조"
}
Parameter | Description |
---|---|
|
모임 UUID |
Path | Type | Description | Optional | Constraint |
---|---|---|---|---|
dateOfScheduleList |
Array |
일정 목록 |
||
dateOfScheduleList[].startTime |
String |
일정 시작 시간 |
||
dateOfScheduleList[].endTime |
String |
일정 종료 시간 |
||
dateOfScheduleList[].rank |
Number |
일정 우선순위 |
||
nickname |
String |
닉네임 |
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
4.2. 회원의 일정 할당 - 실패 (일정을 입력하지 않은 경우)
POST /api/v1/meetings/met123/schedules/members HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 53
X-CSRF-TOKEN: -nTxJTr4PF4dj0hYeLgQP5VZ-OxS_ibrKv7BYbvIk2rquJ6myk2QQF7NCTgw6yw6TZUkWadp1Y1nzETGHZulVI2q91nT2fuR
Host: localhost:8080
{
"dateOfScheduleList" : [ ],
"nickname" : null
}
Parameter | Description |
---|---|
|
모임 UUID |
HTTP/1.1 400 Bad Request
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 173
{
"code" : "400",
"message" : "잘못된 요청입니다.",
"validation" : {
"dateOfScheduleList" : "일정 날짜를 최소 1개 이상 입력해주세요."
}
}
Path | Type | Description |
---|---|---|
|
|
에러 코드 |
|
|
에러 메시지 |
|
|
유효성 검사 |
|
|
일정 날짜 에러 메시지 |
4.3. 비회원 일정 할당 - 성공
POST /api/v1/meetings/met123/schedules/guests HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 263
X-CSRF-TOKEN: 01o42K_MOcjPEDQ0uj8coGO8zOg7odzYTwZHYUT35h_SHpsk6mJcvMn-DvHidlYD2RIowVSM4Yldkb71fT9_V3GV13mzeP8Q
Host: localhost:8080
{
"dateOfScheduleList" : [ {
"startTime" : "2024-09-06T09:00:00",
"endTime" : "2024-09-06T12:00:00",
"rank" : 1
}, {
"startTime" : "2024-09-06T18:00:00",
"endTime" : "2024-09-06T21:00:00",
"rank" : 2
} ],
"nickname" : "정승조"
}
Path | Type | Description | Optional | Constraint |
---|---|---|---|---|
dateOfScheduleList |
Array |
일정 목록 |
||
dateOfScheduleList[].startTime |
String |
일정 시작 시간 |
||
dateOfScheduleList[].endTime |
String |
일정 종료 시간 |
||
dateOfScheduleList[].rank |
Number |
일정 우선순위 |
||
nickname |
String |
닉네임 |
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
4.4. 비회원 일정 할당 - 실패 (일정을 입력하지 않은 경우)
POST /api/v1/meetings/met123/schedules/guests HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 53
X-CSRF-TOKEN: UDFuvEthIU5UPOCwzYha1mC1tOu3RxVpMqLzvCYzkFS2RMxUMVBbjn1WR3Z5X4aE9aVut1bUmdPVfidEVsDEhUdRozCDdfpt
Host: localhost:8080
{
"dateOfScheduleList" : [ ],
"nickname" : null
}
HTTP/1.1 400 Bad Request
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 173
{
"code" : "400",
"message" : "잘못된 요청입니다.",
"validation" : {
"dateOfScheduleList" : "일정 날짜를 최소 1개 이상 입력해주세요."
}
}
Path | Type | Description |
---|---|---|
|
|
에러 코드 |
|
|
에러 메시지 |
|
|
유효성 검사 |
|
|
일정 날짜 에러 메시지 |
4.5. 회원 일정 조회 - 성공
GET /api/v1/meetings/met123/schedules/members HTTP/1.1
X-CSRF-TOKEN: gYY-EDQBkFD0FmAejXIn8USkhEAPWP5QLGXjUwZiofBTyFILtOdaIFVioTLZI1l_tV8TxCbHqXg8O8Z9HV3UZ2JVw5Iw_mU8
Host: localhost:8080
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 337
{
"scheduleNickname" : "유저",
"scheduleUuid" : "sch123",
"meetingStartDate" : "2024-09-06",
"meetingEndDate" : "2024-09-07",
"dateOfScheduleList" : [ {
"startTime" : "2024-09-06T09:00:00",
"endTime" : "2024-09-06T12:00:00"
}, {
"startTime" : "2024-09-07T12:00:00",
"endTime" : "2024-09-07T15:00:00"
} ]
}
Path | Type | Description |
---|---|---|
|
|
일정을 등록한 유저 닉네임 |
|
|
일정 UUID |
|
|
모임 시작 날짜 |
|
|
모임 종료 날짜 |
|
|
일정 목록 |
|
|
일정 시작 시간 |
|
|
일정 종료 시간 |
4.6. 회원 일정 조회 - 실패 (모임이 존재하지 않는 경우)
GET /api/v1/meetings/met123/schedules/members HTTP/1.1
X-CSRF-TOKEN: IxaKvpOAQJCNo3gJgSYpOduuIKNEd5Zx1R4UR1zGKCgCIlovEC662qPiI6igwkltsgsdALicDcF0EqBcsHp3fmuiHhk0Fm5L
Host: localhost:8080
HTTP/1.1 404 Not Found
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 94
{
"code" : "404",
"message" : "모임을 찾을 수 없습니다.",
"validation" : { }
}
4.7. 비회원 일정 조회 - 성공
GET /api/v1/meetings/met123/schedules/guests/sch123 HTTP/1.1
X-CSRF-TOKEN: rjA2yp9GWM26dHgUVP80j3AzU8sR0qnUp1n1Yiu0QtWqdq5hzwRSrv1-aKmXTR5wN9IA7kgBfqkl45_5xT3AVhzQILCbRMhU
Host: localhost:8080
Parameter | Description |
---|---|
|
모임 UUID |
|
일정 UUID |
Unresolved directive in api/schedule.adoc - include::/Users/seungjo/development/dnd-11th-7-backend/build/generated-snippets/schedule-controller-test/guest_schedule_get_success/query-parameters.adoc[]
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 337
{
"scheduleNickname" : "유저",
"scheduleUuid" : "sch123",
"meetingStartDate" : "2024-09-06",
"meetingEndDate" : "2024-09-07",
"dateOfScheduleList" : [ {
"startTime" : "2024-09-06T09:00:00",
"endTime" : "2024-09-06T12:00:00"
}, {
"startTime" : "2024-09-07T12:00:00",
"endTime" : "2024-09-07T15:00:00"
} ]
}
4.8. 비회원 일정 조회 - 실패 (모임이 존재하지 않는 경우)
GET /api/v1/meetings/met123/schedules/guests/sch123 HTTP/1.1
X-CSRF-TOKEN: rRUEzAnDHeGh6e7eGalEld9-mb6t8V-_Y08rLECjEJdcDOutmSVi-2v3LNKM2Njpf4Rw8-cftIaUk2qSU3keT3CWcadpOo2U
Host: localhost:8080
Parameter | Description |
---|---|
|
모임 UUID |
|
일정 UUID |
Unresolved directive in api/schedule.adoc - include::/Users/seungjo/development/dnd-11th-7-backend/build/generated-snippets/schedule-controller-test/guest_schedule_get_fail/query-parameters.adoc[]
HTTP/1.1 404 Not Found
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 94
{
"code" : "404",
"message" : "모임을 찾을 수 없습니다.",
"validation" : { }
}
4.9. 회원 일정 수정 - 성공
PATCH /api/v1/meetings/met123/schedules/members HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 235
X-CSRF-TOKEN: jcGGKDjFd_uvI-81DbfzNoHS04a1z0oDiB9S-I6dZON4wHggvKDjHFv8QZmCFt4APprHDuDk_uSN_SwusCwxme2rBYcZpUsQ
Host: localhost:8080
{
"dateOfScheduleList" : [ {
"startTime" : "2024-09-06T09:00:00",
"endTime" : "2024-09-06T12:00:00",
"rank" : 1
}, {
"startTime" : "2024-09-06T18:00:00",
"endTime" : "2024-09-06T21:00:00",
"rank" : 2
} ]
}
Parameter | Description |
---|---|
|
모임 UUID |
Path | Type | Description | Optional | Constraint |
---|---|---|---|---|
dateOfScheduleList |
Array |
일정 목록 |
||
dateOfScheduleList[].startTime |
String |
일정 시작 시간 |
||
dateOfScheduleList[].endTime |
String |
일정 종료 시간 |
||
dateOfScheduleList[].rank |
Number |
일정 우선순위 |
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
4.10. 회원 일정 수정 - 실패 (일정을 입력하지 않은 경우)
PATCH /api/v1/meetings/met123/schedules/members HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 32
X-CSRF-TOKEN: RQ3bx4KWUfDW0IJ3riP9Xfg3VZqx93j5rBtH-lfKnJVONX56JjvpoeOhMMX7tLASng7JbcsGePvXxx3Uzyl0mWSppa0vBk4Y
Host: localhost:8080
{
"dateOfScheduleList" : [ ]
}
Parameter | Description |
---|---|
|
모임 UUID |
HTTP/1.1 400 Bad Request
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 173
{
"code" : "400",
"message" : "잘못된 요청입니다.",
"validation" : {
"dateOfScheduleList" : "일정 날짜를 최소 1개 이상 입력해주세요."
}
}
Path | Type | Description |
---|---|---|
|
|
에러 코드 |
|
|
에러 메시지 |
|
|
유효성 검사 |
|
|
일정 날짜 에러 메시지 |
4.11. 비회원 일정 수정 - 성공
PATCH /api/v1/meetings/met123/schedules/guests/sch123 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 235
X-CSRF-TOKEN: vn0_d3v-jLd4cuKwRk_bGQZpVzfp7FVM4zQedYmU21MeKbMXiB4NQ06c7oRVQ9rWf2LvKTFcelWI22JhhVJ_QbDw6zAvEdUm
Host: localhost:8080
{
"dateOfScheduleList" : [ {
"startTime" : "2024-09-06T09:00:00",
"endTime" : "2024-09-06T12:00:00",
"rank" : 1
}, {
"startTime" : "2024-09-06T18:00:00",
"endTime" : "2024-09-06T21:00:00",
"rank" : 2
} ]
}
Parameter | Description |
---|---|
|
모임 UUID |
|
일정 UUID |
Path | Type | Description | Optional | Constraint |
---|---|---|---|---|
dateOfScheduleList |
Array |
일정 목록 |
||
dateOfScheduleList[].startTime |
String |
일정 시작 시간 |
||
dateOfScheduleList[].endTime |
String |
일정 종료 시간 |
||
dateOfScheduleList[].rank |
Number |
일정 우선순위 |
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
4.12. 비회원 일정 수정 - 실패 (일정을 입력하지 않은 경우)
PATCH /api/v1/meetings/met123/schedules/guests/sch123 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 32
X-CSRF-TOKEN: MeBQrXeZgL0DuaAtZHCXVMgis7q-NxgZiN4FvJKmNDJllOrICdNoy0OqtYQuj5AZXF2jMf0XntjcDiw0vrpnjaGTDFNRoIn7
Host: localhost:8080
{
"dateOfScheduleList" : [ ]
}
Parameter | Description |
---|---|
|
모임 UUID |
|
일정 UUID |
HTTP/1.1 400 Bad Request
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json;charset=UTF-8
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 173
{
"code" : "400",
"message" : "잘못된 요청입니다.",
"validation" : {
"dateOfScheduleList" : "일정 날짜를 최소 1개 이상 입력해주세요."
}
}
Path | Type | Description |
---|---|---|
|
|
에러 코드 |
|
|
에러 메시지 |
|
|
유효성 검사 |
|
|
일정 날짜 에러 메시지 |