}, '403': { 'description': '권한 없음' } } } MUSIC_POST = { 'tags': ['Apply'], 'description': '''기상음악 신청 초기화 시간: 금요일 12:00 ''', 'parameters': [ JWT_ACCESS_TOKEN, parameter('day', '요일', type_='int'), parameter('singer', '가수 이름'), parameter('musicName', '노래 이름') ], 'responses': { '201': { 'description': '기상음악 신청 성공' }, '202': { 'description': '기상음악 신청 실패(이미 신청 됨)' }, '205': { 'description': '기상음악 신청이 모두 완료되어 신청할 수 없음' }, '403': { 'description': '권한 없음'
from app.doc import JWT_ACCESS_TOKEN, parameter CHANGE_PW_PATCH = { 'tags': ['Account'], 'description': '비밀번호 변경', 'parameters': [ JWT_ACCESS_TOKEN, parameter('currentPassword', '현재 비밀번호'), parameter('newPassword', '바꿀 비밀번호') ], 'responses': { '201': { 'description': '비밀번호 변경 성공' }, '205': { 'description': '현재 비밀번호와 새 비밀번호가 동일함' }, '403': { 'description': '비밀번호 변경 실패(틀린 비밀번호), 또는 권한 없음' } } } FIND_PW_POST = { 'tags': ['Account'], 'description': '''비밀번호 초기화 이메일발송 후 이메일 링크 클릭시 1234로 초기화''', 'parameters': [ parameter('id', '아이디'),
from app.doc import JWT_ACCESS_TOKEN, parameter FACILITY_REPORT_POST = { 'tags': ['Report'], 'description': '시설고장신고', 'parameters': [ JWT_ACCESS_TOKEN, parameter('room', '호실 번호', type_='int'), parameter('content', '시설 고장 신고 내용') ], 'responses': { '201': { 'description': '시설고장 신고에 성공했으며, 업로드된 시설고장 신고의 ID를 응답합니다.' }, '403': { 'description': '권한 없음' } } }
from app.doc import JWT_ACCESS_TOKEN, parameter QUESTION_POST = { 'tags': ['Survey'], 'description': '질문에 답변을 남깁니다. 이미 답변을 남겼을 경우, 덮어씌웁니다.', 'parameters': [ JWT_ACCESS_TOKEN, parameter('questionId', '질문 아이디', 'url'), parameter('answerContent', '답변') ], 'responses': { '201': { 'description': '답변 남기기 성공' }, '204': { 'description': '존재하지 않는 질문 ID' }, '403': { 'description': '권한 없음' } } }
'examples': { '': { 'noticeList': [{ 'title': '제목', 'postDate': '작성 일자', 'noticeId': '공지사항 아이디' }] } } } } } NOTICE_GET = { 'tags': ['Notice'], 'description': '공지사항 확인', 'parameters': [parameter('noticeId', '공지사항 아이디', 'url')], 'responses': { '200': { 'description': '공지사항 조회 성공', 'examples': { '': { 'title': '제목', 'postDate': '작성 일자', 'content': '공지사항 내용' } } } } }
from app.doc import parameter, JWT_REFRESH_TOKEN from app.doc.account import SAMPLE_ACCESS_TOKEN, SAMPLE_REFRESH_TOKEN AUTH_POST = { 'tags': ['Account'], 'description': '로그인', 'parameters': [ parameter('id', '아이디'), parameter('password', '비밀번호') ], 'responses': { '200': { 'description': '로그인 성공', 'examples': { '': { 'accessToken': SAMPLE_ACCESS_TOKEN, 'refreshToken': SAMPLE_REFRESH_TOKEN } } }, '401': { 'description': '로그인 실패' } } } REFRESH_POST = { 'tags': ['Account'], 'description': 'Token refreshing', 'parameters': [ JWT_REFRESH_TOKEN
from app.doc import parameter MEAL_GET = { 'tags': ['Meal'], 'description': '급식 조회', 'parameters': [parameter('day', '조회할 날짜(2019-04-20)', in_='url')], 'responses': { '200': { 'description': '급식 정보 조회 성공', 'examples': { '': { 'breakfast': ['밥', '국', '김치', '반찬1', '반찬2'], 'lunch': ['밥', '국', '김치', '반찬1', '반찬2'], 'dinner': ['밥', '국', '김치', '반찬1', '반찬2'] } } }, '205': { 'description': '잘못된 날짜' } } }
from app.doc import parameter SIGNUP_POST = { 'tags': ['Account'], 'description': '회원가입', 'parameters': [ parameter('uuid', 'UUID'), parameter('id', '사용자 아이디'), parameter('password', '사용자 비밀번호') ], 'responses': { '201': { 'description': '가입 완료' }, '204': { 'description': '가입 불가능(유효하지 않은 UUID)' }, '205': { 'description': '가입 불가능(중복된 ID)' } } }
} } } SURVEY_GET = { 'tags': ['Survey'], 'description': '''설문지를 불러옵니다. 아래의 조건 중 하나 이상에 맞는 설문조사는 response되지 않습니다. 1. 대상이 해당 학년이 아닌 설문조사 2. 설문 기간이 지난 설문조사 3. 질문이 없는 설문조사 ''', 'parameters': [ JWT_ACCESS_TOKEN, parameter('survey_id', '설문지 id', 'url', 'int') ], 'responses': { '200': { 'description': '설문지 불러오기 성공', 'examples': { '': { 'id': SAMPLE_OBJECT_IDS[0], 'title': '인상민 생일 선물 뭐 줄까?', 'description': '4월 20일은 인상민 생일인데 인상민한테 생일 선물 뭐 줄거예요?', 'startDate': '2018-04-15', 'endDate': '2018-04-20', 'answered': True, 'questions': [ { 'id': '질문 아이디1',
from app.doc import JWT_ACCESS_TOKEN, parameter BUG_REPORT_POST = { 'tags': ['Report'], 'description': '버그를 신고하며, Slackbot이 Slack의 #bug-report 채널로 메시지를 전송합니다.', 'parameters': [ JWT_ACCESS_TOKEN, parameter('platform', '버그 신고를 한 플랫폼 타입(1: Web, 2: Android, 3: iOS)', 'url', 'int'), parameter('content', '버그 신고 내용') ], 'responses': { '201': { 'description': '버그 신고 성공' }, '400': { 'description': 'platform 타입이 1, 2, 3 중 하나가 아님' }, '403': { 'description': '권한 없음' } } }
'description': '권한 없음' } } } GOINGOUT_POST = { 'tags': ['Apply'], 'description': '''외출신청 신청 가능 시간: 월요일 00:00 - 금요일 22:00 금요귀가, 토요귀가 시 외출 신청이 불가능합니다. ''', 'parameters': [ JWT_ACCESS_TOKEN, parameter('date', '외출 나가는 시각 ~ 귀사 시각 (MM-DD HH:MM ~ HH:MM'), parameter('reason', '외출 사유') ], 'responses': { '201': { 'description': '외출신청 성공' }, '403': { 'description': '권한 없음' }, '409': { 'description': '외출신청 실패(신청 가능 시간 아님)' } } }
'examples': { '': { 'qnaList': [{ 'title': '제목', 'postDate': '작성 일자', 'qnaId': '자주 하는 질문 아이디' }] } } } } } QNA_GET = { 'tags': ['Notice'], 'description': '자주 하는 질문 확인', 'parameters': [parameter('qnaId', '자주 하는 질문 아이디', 'url')], 'responses': { '200': { 'description': '자주 하는 질문 조회 성공', 'examples': { '': { 'title': '제목', 'postDate': '작성 일자', 'content': '자주 하는 질문 내용' } } } } }
from app.doc import JWT_ACCESS_TOKEN, parameter EXTENSION_GET = { 'tags': ['Apply'], 'description': '학생 자신의 연장신청 정보를 조회합니다.', 'parameters': [ JWT_ACCESS_TOKEN, parameter('time', '11시, 12시 연장 구분 (11, 12)', 'url', 'int') ], 'responses': { '200': { 'description': '연장신청 정보 조회 성공', 'examples': { '': { 'classNum': 1, 'seatNum': 16 } } }, '204': { 'description': '연장신청 정보 없음' }, '403': { 'description': '권한 없음' } } } EXTENSION_POST = { 'tags': ['Apply'], 'description': '''연장신청
'examples': { '': { 'ruleList': [{ 'title': '제목', 'postDate': '작성 일자', 'ruleId': '기숙사 규정 아이디' }] } } } } } RULE_GET = { 'tags': ['Notice'], 'description': '기숙사 규정 확인', 'parameters': [parameter('ruleId', '기숙사 규정 아이디', 'url')], 'responses': { '200': { 'description': '기숙사 규정 조회 성공', 'examples': { '': { 'title': '제목', 'postDate': '작성 일자', 'content': '기숙사 규정 내용' } } } } }