definitions: learnsteam_learsteam-quiz-api_internal_models.LoginResponse: properties: refresh_token: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDc4OTcwMjcs type: string token: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDI3MTMwMjcsInN1 type: string user: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.User' type: object learnsteam_learsteam-quiz-api_internal_models.Program: properties: content: example: 코스 설명 type: string course: example: 코스 이름 type: string id: example: ef74c59a-c707-4162-a52b-455906c81ec1 type: string publish_at: example: "2023-11-10T00:00:00+09:00" type: string status: example: "on" type: string subject: example: 프로그램 제목 type: string tag: items: type: integer type: array type: object learnsteam_learsteam-quiz-api_internal_models.ProgramListResponse: properties: data: items: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.Program' type: array page: example: 1 type: integer pageSize: example: 10 type: integer total: example: 999 type: integer totalPage: example: 99 type: integer type: object learnsteam_learsteam-quiz-api_internal_models.ProgramResponse: properties: content: example: 코스 설명 type: string course: example: 코스 이름 type: string id: example: ef74c59a-c707-4162-a52b-455906c81ec1 type: string publish_at: example: "2023-11-10T00:00:00+09:00" type: string status: example: "on" type: string subject: example: 프로그램 제목 type: string tag: example: - tag1 - tag2 items: type: string type: array type: object learnsteam_learsteam-quiz-api_internal_models.Quiz: properties: answer: items: type: integer type: array choice: items: type: integer type: array comment: example: 퀴즈 해설 type: string hint: example: 퀴즈 힌트 type: string id: example: 1b066168-68c4-4b50-bc9a-b6c4fceaf378 type: string program_id: example: 2036023a-fb56-4b6c-b3bb-c787c681ada6 type: string question: example: 퀴즈 질문입니다. type: string quiz_type: example: choice type: string sequence: example: 5 type: integer type: object learnsteam_learsteam-quiz-api_internal_models.QuizListResponse: properties: data: items: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.Quiz' type: array page: example: 1 type: integer pageSize: example: 10 type: integer total: example: 5 type: integer totalPage: example: 1 type: integer type: object learnsteam_learsteam-quiz-api_internal_models.QuizResponse: properties: answer: items: type: integer type: array choice: items: type: integer type: array comment: example: 퀴즈 해설 type: string hint: example: 퀴즈 힌트 type: string id: example: 1b066168-68c4-4b50-bc9a-b6c4fceaf378 type: string program_id: example: 2036023a-fb56-4b6c-b3bb-c787c681ada6 type: string question: example: 퀴즈 질문입니다. type: string quiz_type: example: check type: string sequence: example: 5 type: integer type: object learnsteam_learsteam-quiz-api_internal_models.RegisterResponse: properties: refresh_token: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDc4OTcwMjcs type: string token: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDI3MTMwMjcsInN1 type: string user: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.User' type: object learnsteam_learsteam-quiz-api_internal_models.User: properties: id: example: 137c1683-2ad6-4201-b256-253828b61c49 type: string name: example: 홍길동 type: string score: example: 9999 type: integer username: example: user0 type: string type: object learnsteam_learsteam-quiz-api_internal_models.UserListResponse: properties: data: items: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.User' type: array page: example: 1 type: integer pageSize: example: 10 type: integer total: example: 90 type: integer totalPage: example: 9 type: integer type: object info: contact: email: sheen@jongyeob.com name: Jay Sheen description: Learnsteam Quiz 서비스 API title: Learsteam Quiz API version: "1.0" paths: /auth/login: post: consumes: - application/json description: username, password 를 입력하여 로그인 parameters: - description: username in: body name: username required: true schema: type: string - description: 비밀번호 in: body name: password required: true schema: type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.LoginResponse' summary: 로그인 /auth/register: post: consumes: - application/json description: username, name, password 를 입력하여 회원가입 parameters: - description: username in: body name: username required: true schema: type: string - description: 이름 in: body name: name required: true schema: type: string - description: 비밀번호 in: body name: password required: true schema: type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.RegisterResponse' summary: 회원가입 /program: get: consumes: - application/json description: 퀴즈 프로그램 목록을 가져옵니다. parameters: - description: 태그 in: query name: tag type: string - description: 검색어 in: query name: q type: string - description: 페이지 in: query name: page type: integer - description: 페이지 사이즈 in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramListResponse' security: - ApiKeyAuth: [] summary: 프로그램 목록 가져오기 post: consumes: - application/json description: 퀴즈 프로그램을 만듭니다. parameters: - description: 프로그램 제목 in: body name: subject required: true schema: type: string - description: 프로그램 코스 in: body name: course required: true schema: type: string - description: 프로그램 내용 in: body name: content required: true schema: type: string - description: 프로그램 태그 in: body name: tag required: true schema: items: type: string type: array - description: 프로그램 상태 on 또는 off in: body name: status required: true schema: type: string - description: 프로그램 발행 날짜 in: body name: publish_at required: true schema: type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse' summary: 퀴즈 프로그램 생성 put: consumes: - application/json description: 퀴즈 프로그램을 수정합니다. parameters: - description: 프로그램 제목 in: body name: subject required: true schema: type: string - description: 프로그램 코스 in: body name: course required: true schema: type: string - description: 프로그램 내용 in: body name: content required: true schema: type: string - description: 프로그램 태그 in: body name: tag required: true schema: items: type: string type: array - description: 프로그램 상태 on 또는 off in: body name: status required: true schema: type: string - description: 프로그램 발행 날짜 in: body name: publish_at required: true schema: type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse' summary: 퀴즈 프로그램 수정 /program/{id}: get: consumes: - application/json description: ID로 퀴즈 프로그램을 가져옵니다. parameters: - description: 퀴즈 프로그램 ID in: path name: id required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse' "400": description: Bad Request summary: 퀴즈 프로그램 가져오기 /quiz: get: consumes: - application/json description: 퀴즈 목록을 가져옵니다. parameters: - description: 프로그램 ID in: query name: program_id required: true type: string - description: 검색어 in: query name: q type: string - description: 페이지 in: query name: page type: integer - description: 페이지 사이즈 in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizListResponse' summary: 퀴즈 목록 가져오기 post: consumes: - application/json description: 퀴즈를 만듭니다. parameters: - description: 프로그램 ID in: body name: program_id required: true schema: type: string - description: 퀴즈 순서 in: body name: sequence required: true schema: type: integer - description: '퀴즈 타입 : choice, check, ox, input' in: body name: quiz_type required: true schema: type: string - description: 퀴즈 문제 in: body name: question required: true schema: type: string - description: '퀴즈 선택지 : [''선택1'',''선택2'',''선택3'', ''선택4'']' in: body name: choice required: true schema: items: type: string type: array - description: '퀴즈 정답 : [1,3]' in: body name: answer required: true schema: items: type: string type: array - description: 퀴즈 힌트 in: body name: hint required: true schema: type: string - description: 퀴즈 해설 in: body name: comment required: true schema: type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizResponse' summary: 퀴즈 생성 put: consumes: - application/json description: 퀴즈를 수정합니다. parameters: - description: 퀴즈 ID in: path name: id required: true type: string - description: 프로그램 ID in: body name: program_id required: true schema: type: string - description: 퀴즈 순서 in: body name: sequence required: true schema: type: integer - description: '퀴즈 타입 : choice, check, ox, input' in: body name: quiz_type required: true schema: type: string - description: 퀴즈 문제 in: body name: question required: true schema: type: string - description: '퀴즈 선택지 : [''선택1'',''선택2'',''선택3'', ''선택4'']' in: body name: choice required: true schema: items: type: string type: array - description: '퀴즈 정답 : [1,3]' in: body name: answer required: true schema: items: type: string type: array - description: 퀴즈 힌트 in: body name: hint required: true schema: type: string - description: 퀴즈 해설 in: body name: comment required: true schema: type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizResponse' summary: 퀴즈 수정 /quiz/{id}: get: consumes: - application/json description: ID로 퀴즈를 가져옵니다. parameters: - description: 퀴즈 ID in: path name: id required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizResponse' "400": description: Bad Request summary: 퀴즈 가져오기 /token/refresh: post: consumes: - application/json description: AccessToken을 RefreshToken으로 갱신합니다. parameters: - description: RefreshToken in: body name: refresh_token required: true schema: type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse' summary: AccessToken Refresh /user: get: consumes: - application/json description: 사용자 목록을 가져옵니다. parameters: - description: 검색어 in: query name: q type: string - description: 페이지 in: query name: page type: integer - description: 페이지 사이즈 in: query name: limit type: integer produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.UserListResponse' summary: 사용자 목록 가져오기 /user/{id}: get: consumes: - application/json description: ID로 사용자 정보를 가져옵니다. parameters: - description: 사용자 ID in: path name: id required: true type: string produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.User' "400": description: Bad Request summary: 사용자 정보 가져오기 swagger: "2.0"