์ฌ์ฉ์
/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
}
/v1/users/(userId)/password
Authorization: Bearer token
{
"currentPassword" :"123456789",
"newPassword" :"123456987",
"passwordCheck" :"123456987"
}
status code: 204
1. ํ์ฌ ๋น๋ฐ๋ฒํธ๊ฐ ์ผ์นํ์ง ์๋ ๊ฒฝ์ฐ
{
"msg": "๋น๋ฐ๋ฒํธ๊ฐ ์ผ์นํ์ง ์์ต๋๋ค.
}
2. ์๋ก์ด ๋น๋ฐ๋ฒํธ์ ๋น๋ฐ๋ฒํธ ํ์ธ์ด ์ผ์นํ์ง ์๋ ๊ฒฝ์ฐ
{
"msg": "๋น๋ฐ๋ฒํธ๊ฐ ์ผ์นํ์ง ์์ต๋๋ค.
}
/v1/users/(userId)/profile
Authorization: Bearer token
{
โidโ : โid๊ฐโ
"username":"์์ ๋ ์ด๋ฆ",
"email":"์์ ๋ ์ด๋ฉ์ผ",
"introduction":"์์ ๋ ์๊ฐ"
} {
โidโ : โid๊ฐโ
"username":"์์ ๋ ์ด๋ฆ",
"email":"์์ ๋ ์ด๋ฉ์ผ",
"introduction":"์์ ๋ ์๊ฐ"
} 1. DB์ ์ ์ฅ๋์ด ์๋ ์ด๋ฆ๊ณผ ์ค๋ณต๋ ๊ฒฝ์ฐ
{
"msg": "์ค๋ณต๋ ์ด๋ฆ์
๋๋ค.",
}
2. DB์ ์ ์ฅ๋์ด ์๋ ์ด๋ฉ์ผ๊ณผ ์ค๋ณต๋ ๊ฒฝ์ฐ
{
"msg": "์ค๋ณต๋ ์ด๋ฉ์ผ์
๋๋ค.",
}
/v1/users/{userId}
Authorization: Bearer token
{
"userId" : "park",
"email" : โpark@email.com",
โintroduction" : "ํ์ ์
๋๋ค.โ
}
/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
},
/v1/users/login
{
"name" : "park",
"password" : "1234"
}
status code: 204
{
msg; โ๋ก๊ทธ์ธ ์ฑ๊ณตํ์ด์! ์ถํ๋๋ ค์!โ
}
1. username ๋ฏธ์ผ์น
{
"msg": "๋ฑ๋ก๋ ์ ์ ๊ฐ ์์ต๋๋ค.",
"status": 400
}
2. ๋น๋ฐ๋ฒํธ ๋ฏธ์ผ์น
{
"msg": "๋น๋ฐ๋ฒํธ๊ฐ ์ผ์นํ์ง ์์ต๋๋ค.",
"status": 400
},
3. ์ค๋ณต ๋ก๊ทธ์ธ ์๋
{
"msg": "์ด๋ฏธ ๋ก๊ทธ์ธ ๋์ด ์์ต๋๋ค.",
"status": 400
}
๋ณด๋
/v1/boards
Authorization: Bearer token
{ โtitleโ:โtitleโ, โcontentโ:โcontentโ }
โredirect: /api/boards/{boardsId}โ
/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"
}
]
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/v1/boards/{boardId}
Authorization: Bearer token
{
"msg" : "์ญ์ ์ฑ๊ณต",
"status" : "200"
}
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/v1/boards/{boardId}
Authorization: Bearer token
{ โtitleโ:โtitle ์์ โ, โcontentโ:โcontent ์์ โ }
โredirect: /api/posts/{postId}โ
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
(v1/boards/{boardId}?users={userId}")
Authorization: Bearer token
/v1/boards
Authorization: Bearer token
/v1/boards/emailCheck
Authorization: Bearer token
204 (No Content)
/v1/boards/{boardId}/boardColor
Authorization: Bearer token
{โbackgroundColorโ : โGREENโ
}
๋ฆฌ์คํธ
/v1/boards/{boardsId}/columns
Authorization: Bearer token
{ โcommentโ:โcommentโ }
โredirect: /api/posts/{postId}โ
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/v1/boards/{boardsId}/columns/{columnsId}
Authorization: Bearer token
{
"msg" : "๋๊ธ์ด ์ญ์ ๋์์ต๋๋ค.",
"status" : "200"
}
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
๋ฆฌ์คํธ๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/v1/boards/{boardsId}/columns/{columnsId}
Authorization: Bearer token
{ โcommentโ:โcommentโ }
โredirect: /api/posts/{postId}โ
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
๋ฆฌ์คํธ๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/v1/boards/{boardsId}/columns/{columnsId}/order/{newOrder}
Authorization: Bearer token
{
โtargetBoardโ: โboardIdโ
}
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
๋ฆฌ์คํธ๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/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"
}]
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
๋ฆฌ์คํธ๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
์นด๋
/v1/columns/{columnsId}/cards
Authorization: Bearer token
{
"title" : "title1"
}
โredirect: /v1/users/boards/lists/{postId}/cards
/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"
}
]
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
๋ฆฌ์คํธ๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
์นด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/v1/columns/{columnsId}/cards/{cardsId}
Authorization: Bearer token
204 (No Content)
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
๋ฆฌ์คํธ๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
์นด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/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)
๋ณด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
๋ฆฌ์คํธ๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
์นด๋๊ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
/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)
/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)