4. API - LikeLionTeam/BootHouse GitHub Wiki
1. ์ฌ์ฉ์ (Users)
1.1 ํ์ ๊ด๋ฆฌ
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /users/create | ํ์๊ฐ์ ํผ ์กฐํ |
| POST | /users | ์ ์ฌ์ฉ์ ์์ฑ |
| POST | /users/verify | ์ด๋ฉ์ผ ์ธ์ฆ ์ฝ๋ ๋ฐ์ก |
| GET | /users/{id} | ์ฌ์ฉ์ ์ ๋ณด ์กฐํ |
| PUT | /users/{id} | ์ฌ์ฉ์ ์ ๋ณด ์์ |
| DELETE | /users/{id} | ์ฌ์ฉ์ ์ญ์ |
1.2 ์ธ์ฆ
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /login | ๋ก๊ทธ์ธ ํผ ์กฐํ |
| POST | /login | ๋ก๊ทธ์ธ |
| POST | /logout | ๋ก๊ทธ์์ |
1.3 ์ฌ์ฉ์ ์ธ์ฆ ์ํ
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /users/{id}/auth | ์ฌ์ฉ์ ์ธ์ฆ ์ํ ์กฐํ |
| POST | /users/{id}/auth | ์ฌ์ฉ์ ์ธ์ฆ ์ํ ์ ๋ฐ์ดํธ |
2. ๊ด๋ฆฌ์ (Admin)
2.1 ์ฌ์ฉ์ ์ธ์ฆ ๊ด๋ฆฌ
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /admin/user-auth | ์ฌ์ฉ์ ์ธ์ฆ ๋ชฉ๋ก ์กฐํ |
| POST | /admin/user-auth/{id}/approve | ์ฌ์ฉ์ ์ธ์ฆ ์น์ธ |
| POST | /admin/user-auth/{id}/deny | ์ฌ์ฉ์ ์ธ์ฆ ๊ฑฐ์ |
| DELETE | /admin/user-auth/{id} | ์ฌ์ฉ์ ์ธ์ฆ ์ญ์ |
3. ๋ถํธ์บ ํ (Bootcamps)
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /bootcamps | ๋ชจ๋ ๋ถํธ์บ ํ ์กฐํ |
| POST | /bootcamps | ์ ๋ถํธ์บ ํ ์์ฑ |
| GET | /bootcamps/{id} | ํน์ ๋ถํธ์บ ํ ์กฐํ |
| PUT | /bootcamps/{id} | ๋ถํธ์บ ํ ์ ๋ณด ์์ |
| DELETE | /bootcamps/{id} | ๋ถํธ์บ ํ ์ญ์ |
| GET | /bootcamps/{id}/courses | ํน์ ๋ถํธ์บ ํ์ ์ฝ์ค ๋ชฉ๋ก ์กฐํ |
4. ์ฝ์ค (Courses)
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /courses | ๋ชจ๋ ์ฝ์ค ์กฐํ |
| POST | /courses | ์ ์ฝ์ค ์์ฑ |
| GET | /courses/{id} | ํน์ ์ฝ์ค ์์ธ ์กฐํ |
| PUT | /courses/{id} | ์ฝ์ค ์ ๋ณด ์์ |
| DELETE | /courses/{id} | ์ฝ์ค ์ญ์ |
| GET | /courses/active | ๋ชจ์ง ์ค์ธ ์ฝ์ค ์กฐํ |
5. ๋ฆฌ๋ทฐ (Reviews)
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /reviews | ๋ชจ๋ ๋ฆฌ๋ทฐ ์กฐํ |
| POST | /reviews | ์ ๋ฆฌ๋ทฐ ์์ฑ |
| GET | /reviews/{id} | ํน์ ๋ฆฌ๋ทฐ ์์ธ ์กฐํ |
| PUT | /reviews/{id} | ๋ฆฌ๋ทฐ ์์ |
| DELETE | /reviews/{id} | ๋ฆฌ๋ทฐ ์ญ์ |
| GET | /reviews/search | ๋ฆฌ๋ทฐ ๊ฒ์ |
| GET | /reviews/sort | ๋ฆฌ๋ทฐ ์ ๋ ฌ |
6. ์ฐํ๊ธฐ (Likes)
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| POST | /likes/courses/{courseId} | ์ฝ์ค ์ฐํ๊ธฐ |
| DELETE | /likes/courses/{courseId} | ์ฝ์ค ์ฐํ๊ธฐ ์ทจ์ |
| POST | /likes/reviews/{reviewId} | ๋ฆฌ๋ทฐ ์ฐํ๊ธฐ |
| DELETE | /likes/reviews/{reviewId} | ๋ฆฌ๋ทฐ ์ฐํ๊ธฐ ์ทจ์ |
| GET | /users/{id}/likes/courses | ์ฌ์ฉ์๊ฐ ์ฐํ ์ฝ์ค ๋ชฉ๋ก |
| GET | /users/{id}/likes/reviews | ์ฌ์ฉ์๊ฐ ์ฐํ ๋ฆฌ๋ทฐ ๋ชฉ๋ก |
7. ๊ณต์ง์ฌํญ (Notices)
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /notices | ๋ชจ๋ ๊ณต์ง์ฌํญ ์กฐํ |
| POST | /notices | ์ ๊ณต์ง์ฌํญ ์์ฑ |
| GET | /notices/{id} | ํน์ ๊ณต์ง์ฌํญ ์์ธ ์กฐํ |
| PUT | /notices/{id} | ๊ณต์ง์ฌํญ ์์ |
| DELETE | /notices/{id} | ๊ณต์ง์ฌํญ ์ญ์ |
| POST | /notices/{id}/images | ๊ณต์ง์ฌํญ ์ด๋ฏธ์ง ์ ๋ก๋ |
8. ์ฑํ (Chat)
8.1 ์ฑํ ๋ชฉ๋ก ๋ฐ ์ฑํ ๋ฐฉ
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /messages | ์ฌ์ฉ์์ ์ฑํ ๋ชฉ๋ก ์กฐํ |
| GET | /messages/{id} | ํน์ ์ฑํ ๋ฐฉ ์กฐํ |
| POST | /messages/new | ์๋ก์ด ์ฑํ ๋ฐฉ ์์ฑ |
| POST | /messages/startChat | ์ฑํ ์์ ๋๋ ๊ธฐ์กด ์ฑํ ๋ฐฉ ์กฐํ |
8.2 ์ฑํ ๊ธฐ๋ฅ ๊ด๋ฆฌ
| HTTP ๋ฉ์๋ | URI | ์ค๋ช |
|---|---|---|
| GET | /api/chat/users | ๋ชจ๋ ์ฌ์ฉ์ ๋ชฉ๋ก ์กฐํ |
| POST | /api/chat/invite | ์ฑํ ๋ฐฉ์ ์๋ก์ด ์ฌ์ฉ์ ์ด๋ |
| GET | /api/chat/{chatroomId}/messages | ํน์ ์ฑํ ๋ฐฉ์ ๋ฉ์์ง ๋ชฉ๋ก ์กฐํ |
| POST | /api/chat/{chatroomId}/leave | ์ฑํ ๋ฐฉ ๋๊ฐ๊ธฐ |
| GET | /api/chat/{chatroomId}/last-message | ์ฑํ ๋ฐฉ์ ๋ง์ง๋ง ๋ฉ์์ง ์ ๋ณด ์กฐํ |