postman
https://documenter.getpostman.com/view/15264844/TzRNEpcQ
API 설계
1. 메인 페이지 팀 조회 API
구분 |
요청 메서드 |
URL |
메인 페이지 |
GET |
/api/intro |
Response 포맷
{
"teams": [
{
"name": "SSG 랜더스"
},
{
"name": "기아 타이거즈"
},
{
"name": "두산 베어스"
},
{
"name": "롯데 자이언츠"
},
{
"name": "키움 히어로즈"
},
{
"name": "한화 이글스"
}
]
}
2 팀 선택 API
구분 |
요청 메서드 |
URL |
home 팀 선택 |
POST |
/api/games/type-home |
away 팀 선택 |
POST |
/api/games/type-away |
Request 포맷
{
"user" : "기아 타이거즈",
"opponent" : "롯데 자이언츠"
}
Response 포맷
{
"game_id": 2,
"user": {
"team_name": "기아 타이거즈",
"players": [
{
"id": 19,
"name": "나지완",
"type": "투수",
"at_bat": 2,
"hits": 1,
"out": 1,
"average": 0.5
},
{
"id": 20,
"name": "최형우",
"type": "타자",
"at_bat": 2,
"hits": 0,
"out": 2,
"average": 0.0
},
...
]
},
"opponent": {
"team_name": "롯데 자이언츠",
"players": [
{
"id": 46,
"name": "정훈",
"type": "투수",
"at_bat": 2,
"hits": 2,
"out": 2,
"average": 1.0
},
{
"id": 47,
"name": "손아섭",
"type": "타자",
"at_bat": 2,
"hits": 0,
"out": 2,
"average": 0.0
},
...
]
}
}
3. 선수 아웃,안타 시 API
구분 |
요청 메서드 |
URL |
선수 아웃,안타 이벤트 |
PUT |
/api/players/:player_id/record |
Request 포맷
{
"record" : "HITS" // HITS,OUT
}
Response 포맷
- 성공시 200 상태코드로 응답이 온다.
- 실패시 200 외의 상태코드로 응답이 온다. (ex 400, 403, ...)
4. 팀 득점 시 API
구분 |
요청 메서드 |
URL |
팀 득점 시 |
POST |
/api/games/:game_id/points |
Request 포맷
{
"team_name" : "롯데 자이언츠",
"round" : 3,
"point" : 5
}
Response 포맷
- 성공시 200 상태코드로 응답이 온다.
- 실패시 200 외의 상태코드로 응답이 온다. (ex 400, 403, ...)
5. 상세 점수 팝업 API
구분 |
요청 메서드 |
URL |
상세 점수 팝업 |
GET |
/api/games/:game_id/points |
Response 포맷
{
"user": {
"team_name": "기아 타이거즈",
"point": [
30,
503
]
},
"opponent": {
"team_name": "롯데 자이언츠",
"point": [
3,
2,
5
]
}
}
6. 선수 명단 팝업 API
구분 |
요청 메서드 |
URL |
선수 명단 팝업 |
GET |
/api/games/:game_id/players |
Response 포맷
{
"game_id": 2,
"user": {
"team_name": "기아 타이거즈",
"players": [
{
"id": 19,
"name": "나지완",
"type": "투수",
"at_bat": 2,
"hits": 1,
"out": 1,
"average": 0.5
},
{
"id": 20,
"name": "최형우",
"type": "타자",
"at_bat": 2,
"hits": 0,
"out": 2,
"average": 0.0
},
...
]
},
"opponent": {
"team_name": "롯데 자이언츠",
"players": [
{
"id": 46,
"name": "정훈",
"type": "투수",
"at_bat": 2,
"hits": 2,
"out": 2,
"average": 1.0
},
{
"id": 47,
"name": "손아섭",
"type": "타자",
"at_bat": 2,
"hits": 0,
"out": 2,
"average": 0.0
},
...
]
}
}