간단한 ERD와 API - boostcampwm2023/web07-GBS GitHub Wiki
인증
OAuth 로그인 - POST /api/oauth/login/github
OAuth 로그아웃 - DELETE /api/oauth/logout/github
방송 CRUD
방송 목록 조회 - GET /api/v1/streams
{
"data": [
[
"userId": "kkg",
"title": "방송 제목",
"category": "게임",
"viewer": 100,
"thumbnail": "http://thumbnail-url"
],
// ...
],
"pageInfo": {
"page": 1,
"size": 5
}
}
방송 상세 조회 - GET /api/v1/streams/:user-id
category: 게임, 요리, 공부, 토크, 먹방, 여행, 개발, 100명 페어프로그래밍, 기타
- 현재 방송 중인 방송 상세 조회
{
"userId": "kkg",
"title": "방송 제목",
"desc": "방송 설명",
"category": "게임",
"viewer": 100,
"startedAt": "2023-11-16T08:57:18.769Z",
"resolution": "1920x1080", // 해상도
"quality": "3000K" // 화질
}
방송 정보 수정 - PUT or PATCH /api/v1/streams/:user-id
{
"title": "방송 제목",
"desc": "방송 설명",
"category": "요리"
}
유저 CRUD
유저 정보 수정 - PUT or PATCH /api/v1/users/:user-id
{
"nickname": "닉네임"
}
ADMIN 권한
Stream Key 목록 조회 - GET /api/v1/streams/keys
{
"streamKeys": ["ZcasdAsD", "AWEesQe", "CXsDSaq"]
}
userId 조회 - GET /api/v1/users?stream-key={key}
{
"userId": "kkg",
"nickname": "김경근"
}