definitions: learnsteam_learsteam-quiz-api_internal_models.Exam: properties: end_at: type: string id: example: ef74c59a-c707-4162-a52b-455906c81ec1 type: string name: example: 홍길순 type: string program: example: 파이썬 초급 과정 type: string program_id: example: 7f9329f5-2e36-4638-92d2-73064b7291a4 type: string score: example: 5 type: integer start_at: type: string status: example: ready type: string subject: example: 출력 Print type: string total: example: 5 type: integer user_id: example: f95159dd-c42c-490d-ac6b-ca5d88a266bb type: string type: object learnsteam_learsteam-quiz-api_internal_models.ExamListResponse: properties: data: items: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.Exam' 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.ExamPatchRequest: properties: end_at: example: "2023-11-10T13:25:00+09:00" type: string score: example: 4 type: integer start_at: example: "2023-11-10T13:10:00+09:00" type: string status: example: rating type: string type: object learnsteam_learsteam-quiz-api_internal_models.ExamRequest: properties: program_id: example: 7f9329f5-2e36-4638-92d2-73064b7291a4 type: string users: items: type: integer type: array type: object learnsteam_learsteam-quiz-api_internal_models.ExamResponse: properties: end_at: example: "2023-11-10T13:25:00+09:00" type: string id: example: ef74c59a-c707-4162-a52b-455906c81ec1 type: string name: example: 홍길순 type: string program: example: 파이썬 초급 과정 type: string program_id: example: 7f9329f5-2e36-4638-92d2-73064b7291a4 type: string score: example: 5 type: integer start_at: example: "2023-11-10T13:10:00+09:00" type: string status: example: ready type: string subject: example: 출력 Print type: string total: example: 5 type: integer user_id: example: f95159dd-c42c-490d-ac6b-ca5d88a266bb type: string type: object learnsteam_learsteam-quiz-api_internal_models.ExamUpdateRequest: properties: end_at: example: "2023-11-10T13:25:00+09:00" type: string name: example: 홍길순 type: string program: example: 파이썬 초급 과정 type: string program_id: example: 7f9329f5-2e36-4638-92d2-73064b7291a4 type: string score: example: 5 type: integer start_at: example: "2023-11-10T13:10:00+09:00" type: string status: example: ready type: string subject: example: 출력 Print type: string total: example: 5 type: integer user_id: example: f95159dd-c42c-490d-ac6b-ca5d88a266bb type: string type: object learnsteam_learsteam-quiz-api_internal_models.LoginRequest: properties: password: type: string username: type: string type: object 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.ProgramRequest: properties: content: example: 코스 설명 type: string course: example: 코스 이름 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.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.QuizRequest: properties: answer: items: type: integer type: array choice: items: type: integer type: array comment: type: string hint: type: string program_id: type: string question: type: string quiz_type: type: string sequence: 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.RegisterRequest: properties: name: type: string password: type: string username: type: string 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: 사용자가 로그인합니다. parameters: - description: Login Body in: body name: loginBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.LoginRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.LoginResponse' summary: 사용자 로그인 로그인 tags: - 로그인 /auth/register: post: consumes: - application/json description: username, name, password 를 입력하여 회원가입 parameters: - description: Register Body in: body name: registerBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.RegisterRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.RegisterResponse' summary: 회원가입 tags: - 회원가입 /exam: 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.ExamListResponse' summary: 응시 목록 가져오기 tags: - Exam patch: consumes: - application/json description: 응시 정보를 변경합니다. parameters: - description: Exam Patch Body (변경할 필드만 입력) in: body name: examPatchBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamPatchRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamResponse' summary: 응시 정보 변경 tags: - Exam post: consumes: - application/json description: 응시 매칭을 만듭니다. parameters: - description: Exam Body in: body name: examBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamRequest' produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.Exam' type: array summary: 응시 매칭 생성 tags: - Exam put: consumes: - application/json description: 응시를 수정합니다. parameters: - description: Exam Update Body in: body name: examUpdateBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamUpdateRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamResponse' summary: 응시 수정 tags: - Exam /exam/{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.ExamResponse' summary: 응시 정보 가져오기 tags: - Exam /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' summary: 프로그램 목록 가져오기 tags: - Program post: consumes: - application/json description: 퀴즈 프로그램을 만듭니다. parameters: - description: Program Body in: body name: programBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse' summary: 퀴즈 프로그램 생성 tags: - Program put: consumes: - application/json description: 퀴즈 프로그램을 수정합니다. parameters: - description: Program Body in: body name: programUpdateBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse' summary: 퀴즈 프로그램 수정 tags: - Program /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' summary: 퀴즈 프로그램 가져오기 tags: - Program /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: 퀴즈 목록 가져오기 tags: - Quiz post: consumes: - application/json description: 퀴즈를 만듭니다. parameters: - description: Quiz Body in: body name: quizBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizResponse' summary: 퀴즈 생성 tags: - Quiz put: consumes: - application/json description: 퀴즈를 수정합니다. parameters: - description: Quiz Body in: body name: quizBody required: true schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizResponse' summary: 퀴즈 수정 tags: - Quiz /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' summary: 퀴즈 가져오기 tags: - Quiz /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 tags: - Token /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: 사용자 목록 가져오기 tags: - User /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' summary: 사용자 정보 가져오기 tags: - User swagger: "2.0"