Skip to content

시간표 API

홍유석(YU SEOK HONG) edited this page Jun 18, 2022 · 29 revisions

시간표 생성

REQUEST

  • request url
POST /api/v1/timetables
  • request body
{
  "name": "시간표1",
  "semester": "SECOND",
  "year": 2022,
}

semester: 학기(FIRST, SECOND, SUMMER, WINNER)

RESPONSE

SUCCESS 201
{
  "message": "시간표 생성 완료"
}

시간표 목록 조회

REQUEST

  • request url
GET /api/v1/timetables?year={year}&semester={semester}

year: 연도
semester: 학기(FIRST, SECOND, SUMMER, WINNER)

RESPONSE

SUCCESS 200
{
  "message": "시간표 목록 조회 완료",
  "data": {
      "timetables": [
        {
            "timeTableId": "11",
            "name": "시간표1",
            "year": 2022,
            "semester": "SECOND"
        },
        ...
      ]
  }
}

시간표 조회

REQUEST

  • request url
GET /api/v1/timetables/{timeTableId}

RESPONSE

{
  "message": "시간표 목록 조회 완료",
  "data": {
    {
      "timeTableId": "11",
      "name": "시간표1",
      "year": 2022,
      "semester": "SECOND",
      "lectures": [
         {
           "lectureId":"22",
           "name":"객체지향프로그래밍2",
           "professor": "조세형",
           "classRoom": "Y5411",
           "lectureDetails": [
             {
               "day": "MON"
               "startTime": "09:00",
               "endTime": "10:50"
             },
             {
               "day": "WED"
               "startTime": "09:00",
               "endTime": "09:50"
             }
           ]
        },
        {
          "lectureId":"22",
          "name":"프로젝트 회의",
          "lectureDetails": [
            {
              "day": "TUE"
              "startTime": "15:00",
              "endTime": "16:50"
            },
            {
              "day": "THU"
              "startTime": "15:00",
              "endTime": "15:50"
            }
          ]
        },
        ...
      ]
    }
  }
}

day: MON, TUE, WED, THU, FRI, SAT, SUN

official 강의 검색

official 강의 시간표에 추가

custom 강의 시간표에 추가

시간표에 추가된 custom 강의 수정

시간표에서 강의 삭제

시간표 삭제

REQUEST

  • request url
DELETE /api/v1/timetables/{timeTableId}

RESPONSE

  • 성공
SUCCESS 200
{
  "message": "시간표 삭제 완료"
}
  • 실패
    • 삭제를 요청한 시간표가 존재하지 않은 경우
{
  "errorCode": "",
  "message":""
}

official 강의 관리

일반 사용자가 쓸 수 없는 API

official 강의 추가

REQUEST

  • request url
POST /api/v1/lectures/officials
  • request body
{
  "lectures": [
    {
      "name": "객체지향프로그래밍2",
      "professor": "조세형"
      "classRoom": "Y5411",
      "semester": "SECOND",
      "openYear": 2022,
      "grade": "FRESHMAN",
      "credit": 3.0,
      "code": "0917",
      "lectureType": "MAJOR",
      "lectureDetails": [
             {
               "day": "MON"
               "startTime": "09:00",
               "endTime": "10:50"
             },
             {
               "day": "WED"
               "startTime": "09:00",
               "endTime": "09:50"
             }
       ]
    },
    ...
  ]
}

semester: 학기(FIRST, SECOND, SUMMER, WINTER)
grade: 학년(FRESHMAN, SOPHOMORE, JUNIOR, SENIOR)
lectureType: 강의 종류(MAJOR, ELECTIVE)

RESPONSE

SUCCESS 201
{
  "message": "official 강의 추가 완료"
}

official 강의 수정

official 강의 삭제

Clone this wiki locally