definitions: learnsteam_cslms-api_internal_models.Center: properties: center_name: example: learnsteam_kd type: string center_title: example: 강동런스팀로봇코딩학원 type: string company_info: example: 사업자정보-json 기타 정보 추가 가능 type: string content_page: example: 학원상세페이지, html/마크다운/text type: string guid_id: example: 2036023a-fb56-4b6c-b3bb-c787c681ada6 type: string id: example: 100001 type: integer memo: example: 메모 type: string owner_id: example: 100001 type: integer status: example: "on" type: string type: object learnsteam_cslms-api_internal_models.CenterListResponse: properties: data: items: $ref: '#/definitions/learnsteam_cslms-api_internal_models.Center' 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_cslms-api_internal_models.CenterRequest: properties: center_name: example: learnsteam_kd type: string center_title: example: 강동런스팀로봇코딩학원 type: string company_info: example: 사업자정보-json 기타 정보 추가 가능 type: string content_page: example: 학원상세페이지, html/마크다운/text type: string memo: example: 메모 type: string owner_id: example: 100001 type: integer status: example: "on" type: string type: object learnsteam_cslms-api_internal_models.LoginRequest: properties: password: example: testme type: string user_name: example: admin0 type: string type: object learnsteam_cslms-api_internal_models.LoginResponse: properties: refresh_token: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDc4OTcwMjcs type: string token: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDI3MTMwMjcsInN1 type: string user: $ref: '#/definitions/learnsteam_cslms-api_internal_models.User' type: object learnsteam_cslms-api_internal_models.Quiz: properties: answer: items: type: integer type: array center_id: example: 100001 type: integer content: items: type: integer type: array guid_id: example: 2036023a-fb56-4b6c-b3bb-c787c681ada6 type: string id: example: 1000001 type: integer question: example: 퀴즈 질문입니다. type: string question_type: example: choice type: string quiz_paper_id: example: 100001 type: integer vol_no: example: 5 type: integer type: object learnsteam_cslms-api_internal_models.QuizContent: properties: hint: example: markdown문서로 작성됨 type: string option1: example: markdown 문서로 작성됨 type: string option2: example: markdown 문서로 작성됨 type: string option3: example: markdown 문서로 작성됨 type: string option4: example: markdown 문서로 작성됨 type: string type: object learnsteam_cslms-api_internal_models.QuizListResponse: properties: data: items: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizResponse' 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_cslms-api_internal_models.QuizPaper: properties: category: example: 파이썬기본 type: string center_id: example: 100001 type: integer content: example: 퀴즈 시트 설명 type: string created_at: example: "2023-11-10T13:10:00+09:00" type: string guid_id: example: ef74c59a-c707-4162-a52b-455906c81ec1 type: string id: example: 100001 type: integer manager_id: example: 100001 type: integer status: example: "on" type: string tag: items: type: integer type: array title: example: 퀴즈 시트 제목 type: string type: object learnsteam_cslms-api_internal_models.QuizPaperCopyRequest: properties: center_id: example: 100002 type: integer title: example: 퀴즈 시트 제목 type: string type: object learnsteam_cslms-api_internal_models.QuizPaperCopyResponse: properties: quiz: items: $ref: '#/definitions/learnsteam_cslms-api_internal_models.Quiz' type: array quiz_paper: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizPaper' type: object learnsteam_cslms-api_internal_models.QuizPaperListResponse: properties: data: items: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizPaper' 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_cslms-api_internal_models.QuizPaperRequest: properties: category: example: 파이썬기본 type: string center_id: example: 100001 type: integer content: example: 퀴즈 시트 설명 type: string status: example: "on" type: string tag: example: - Python - AI - Robot - 파이썬 items: type: string type: array title: example: 퀴즈 시트 제목 type: string type: object learnsteam_cslms-api_internal_models.QuizPaperResponse: properties: category: example: 파이썬기본 type: string center_id: example: 100001 type: integer content: example: 퀴즈 시트 설명 type: string created_at: example: "2023-11-10T13:10:00+09:00" type: string id: example: 100001 type: integer manager_id: example: 100001 type: integer status: example: "on" type: string tag: example: - Python - AI - Robot - 파이썬 items: type: string type: array title: example: 퀴즈 시트 제목 type: string type: object learnsteam_cslms-api_internal_models.QuizRequest: properties: answer: example: - option1 - option2 items: type: string type: array center_id: example: 1000001 type: integer content: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizContent' question: example: 질문입니다. type: string question_type: example: choice type: string quiz_paper_id: example: 1000001 type: integer vol_no: example: 1 type: integer type: object learnsteam_cslms-api_internal_models.QuizResponse: properties: answer: example: - option1 - option2 items: type: string type: array content: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizContent' id: example: 1000001 type: integer question: example: 퀴즈 질문입니다. type: string question_type: example: check type: string quiz_paper_id: example: 1000001 type: integer vol_no: example: 5 type: integer type: object learnsteam_cslms-api_internal_models.RegisterRequest: properties: first_name: example: 길순 type: string gender: example: F type: string last_name: example: 홍 type: string password: example: StrongPass!@#$ type: string phone_cs: example: "01012345678" type: string upload_image: example: "" type: string user_name: example: gilsoon type: string user_role: example: member type: string type: object learnsteam_cslms-api_internal_models.RegisterResponse: properties: refresh_token: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDc4OTcwMjcs type: string token: example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDI3MTMwMjcsInN1 type: string user: $ref: '#/definitions/learnsteam_cslms-api_internal_models.User' type: object learnsteam_cslms-api_internal_models.Token: properties: ending_at: type: string refresh_token: type: string register_at: type: string status: type: string token: type: string user_id: type: integer type: object learnsteam_cslms-api_internal_models.User: properties: first_name: example: 길순 type: string gender: example: F type: string guid_id: example: 137c1683-2ad6-4201-b256-253828b61c49 type: string id: example: 100001 type: integer last_name: example: 홍 type: string memo_cs: example: 사용자 메모 type: string phone_cs: example: 010-1234-5678 type: string register_at: type: string upload_image: example: image_url type: string user_name: example: user0 type: string user_role: example: member type: string type: object learnsteam_cslms-api_internal_models.UserListResponse: properties: data: items: $ref: '#/definitions/learnsteam_cslms-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 learnsteam_cslms-api_internal_models.UserQuizListResponse: properties: data: items: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizResponse' 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_cslms-api_internal_models.UserQuizPaper: properties: center_id: example: 1000015 type: integer done_at: type: string guid_id: example: 7f9329f5-2e36-4638-92d2-73064b7291a4 type: string id: example: 1000015 type: integer quiz_paper_id: example: 1000001 type: integer start_at: type: string status: example: wating type: string total_score: example: 100 type: number user_id: example: 1000002 type: integer user_score: example: 5 type: number type: object learnsteam_cslms-api_internal_models.UserQuizPaperListResponse: properties: data: items: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizPaper' 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_cslms-api_internal_models.UserQuizPaperPatchRequest: properties: done_at: example: "2023-11-10T13:25:00+09:00" type: string start_at: example: "2023-11-10T13:10:00+09:00" type: string status: example: ready type: string total_score: example: 80 type: number user_score: example: 4 type: number type: object learnsteam_cslms-api_internal_models.UserQuizPaperRequest: properties: quiz_paper_id: example: 1000002 type: integer users: example: - 1000001 - 1000002 - 1000003 - 1000004 items: type: integer type: array type: object learnsteam_cslms-api_internal_models.UserQuizPaperResponse: properties: center_id: example: 1000015 type: integer done_at: type: string guid_id: example: 7f9329f5-2e36-4638-92d2-73064b7291a4 type: string id: example: 1000015 type: integer quiz_paper_id: example: 1000001 type: integer start_at: type: string status: example: wating type: string total_score: example: 100 type: number user_id: example: 1000002 type: integer user_score: example: 5 type: number type: object learnsteam_cslms-api_internal_models.UserQuizPaperUpdateRequest: properties: done_at: example: "2023-11-10T13:25:00+09:00" type: string quiz_paper_id: example: 1000002 type: integer start_at: example: "2023-11-10T13:10:00+09:00" type: string status: example: ready type: string total_score: example: 100 type: number user_id: example: 1000003 type: integer user_score: example: 5 type: number type: object learnsteam_cslms-api_internal_models.UserQuizRequest: properties: answer: example: - option1 - option2 items: type: string type: array center_id: example: 1000001 type: integer content: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizContent' question: example: 질문입니다. type: string question_type: example: choice type: string quiz_id: example: 1000001 type: integer quiz_paper_id: example: 1000001 type: integer result: example: success type: string score: example: 10 type: number status: example: waiting type: string user_id: example: 1000001 type: integer vol_no: example: 1 type: integer type: object learnsteam_cslms-api_internal_models.UserQuizResponse: properties: answer: example: - option1 - option2 items: type: string type: array center_id: example: 2036023a-fb56-4b6c-b3bb-c787c681ada6 type: string content: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizContent' guid_id: example: 2036023a-fb56-4b6c-b3bb-c787c681ada6 type: string id: example: 1000001 type: integer question: example: 퀴즈 질문입니다. type: string question_type: example: check type: string quiz_id: example: 1000001 type: integer result: example: success type: string score: example: 10 type: number status: example: waiting type: string user_id: example: 1000001 type: integer user_quiz_paper_id: example: 1000001 type: integer vol_no: example: 5 type: integer type: object info: contact: email: sheen@jongyeob.com name: Jay Sheen description: Learnsteam CodingSchool API title: Learnsteam CodingSchool 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_cslms-api_internal_models.LoginRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.LoginResponse' summary: 사용자 로그인 로그인 tags: - 로그인 /auth/logout: post: consumes: - application/json description: 로그아웃하고 Token, Cookie 삭제 produces: - application/json responses: {} security: - Bearer: [] summary: 로그아웃 tags: - 로그아웃 /auth/register: post: consumes: - application/json description: 회원가입 parameters: - description: Register Body in: body name: registerBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.RegisterRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.RegisterResponse' summary: 회원가입 tags: - 회원가입 /center: 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_cslms-api_internal_models.CenterListResponse' security: - Bearer: [] summary: 센터 목록 가져오기 tags: - 센터 /center/{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_cslms-api_internal_models.Center' security: - Bearer: [] summary: 센터 정보 가져오기 tags: - 센터 put: consumes: - application/json description: 센터를 수정합니다. parameters: - description: Center ID in: path name: id required: true type: integer - description: Center Body in: body name: centerBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.CenterRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.Center' security: - Bearer: [] summary: 센터 수정 tags: - 센터 /quiz: get: consumes: - application/json description: 퀴즈 목록을 가져옵니다. parameters: - description: 퀴즈페이퍼 ID in: query name: quiz_paper_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_cslms-api_internal_models.QuizListResponse' security: - Bearer: [] summary: 퀴즈 목록 가져오기 tags: - 퀴즈 post: consumes: - application/json description: 퀴즈를 만듭니다. parameters: - description: Quiz Body in: body name: quizBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizResponse' security: - Bearer: [] summary: 퀴즈 생성 tags: - 퀴즈 /quiz/{id}: delete: consumes: - application/json description: 퀴즈를 삭제합니다. parameters: - description: Quiz ID in: path name: id required: true type: integer produces: - application/json responses: {} security: - Bearer: [] summary: 퀴즈 삭제 tags: - 퀴즈 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_cslms-api_internal_models.QuizResponse' security: - Bearer: [] summary: 퀴즈 가져오기 tags: - 퀴즈 put: consumes: - application/json description: 퀴즈를 수정합니다. parameters: - description: Quiz ID in: path name: id required: true type: integer - description: Quiz Body in: body name: quizBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizResponse' security: - Bearer: [] summary: 퀴즈 수정 tags: - 퀴즈 /quizpaper: 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_cslms-api_internal_models.QuizPaperListResponse' security: - Bearer: [] summary: 퀴즈페이퍼 목록 가져오기 tags: - 퀴즈페이퍼 post: consumes: - application/json description: 퀴즈 퀴즈페이퍼을 만듭니다. parameters: - description: QuizPaper Body in: body name: quizPaperBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizPaperRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizPaperResponse' security: - Bearer: [] summary: 퀴즈 퀴즈페이퍼 생성 tags: - 퀴즈페이퍼 /quizpaper/{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_cslms-api_internal_models.QuizPaperResponse' security: - Bearer: [] summary: 퀴즈 퀴즈페이퍼 가져오기 tags: - 퀴즈페이퍼 put: consumes: - application/json description: 퀴즈 퀴즈페이퍼을 수정합니다. parameters: - description: 퀴즈 퀴즈페이퍼 ID in: path name: id required: true type: string - description: QuizPaper Body in: body name: quizPaperUpdateBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizPaperRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizPaperResponse' security: - Bearer: [] summary: 퀴즈 퀴즈페이퍼 수정 tags: - 퀴즈페이퍼 /quizpaper/{id}/copy: post: consumes: - application/json description: 퀴즈 퀴즈페이퍼와 퀴즈를 복사합니다. parameters: - description: 퀴즈페이퍼 ID in: path name: id required: true type: string - description: QuizPaper Copy Body in: body name: quizPaperCopyBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizPaperCopyRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.QuizPaperCopyResponse' security: - Bearer: [] summary: 퀴즈 퀴즈페이퍼 복사 tags: - 퀴즈페이퍼 /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_cslms-api_internal_models.Token' 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_cslms-api_internal_models.UserListResponse' security: - Bearer: [] summary: 사용자 목록 가져오기 tags: - 사용자 /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_cslms-api_internal_models.User' security: - Bearer: [] summary: 사용자 정보 가져오기 tags: - 사용자 /userquiz: get: consumes: - application/json description: 사용자퀴즈 목록을 가져옵니다. parameters: - description: 사용자퀴즈페이퍼 ID in: query name: user_quiz_paper_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_cslms-api_internal_models.UserQuizListResponse' security: - Bearer: [] summary: 사용자퀴즈 목록 가져오기 tags: - 사용자퀴즈 post: consumes: - application/json description: 사용자퀴즈를 만듭니다. parameters: - description: UserQuiz Body in: body name: quizBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizResponse' security: - Bearer: [] summary: 사용자퀴즈 생성 tags: - 사용자퀴즈 /userquiz/{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_cslms-api_internal_models.UserQuizResponse' security: - Bearer: [] summary: 사용자퀴즈 가져오기 tags: - 사용자퀴즈 put: consumes: - application/json description: 사용자퀴즈를 수정합니다. parameters: - description: Quiz ID in: path name: id required: true type: integer - description: Quiz Body in: body name: quizBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizResponse' security: - Bearer: [] summary: 사용자퀴즈 수정 tags: - 사용자퀴즈 /userquizpaper: 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_cslms-api_internal_models.UserQuizPaperListResponse' security: - Bearer: [] summary: 응시 목록 가져오기 tags: - 사용자퀴즈페이퍼 post: consumes: - application/json description: 응시 매칭을 만듭니다. parameters: - description: UserQuizPaper Body in: body name: userQuizPaperBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizPaperRequest' produces: - application/json responses: "200": description: OK schema: items: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizPaper' type: array security: - Bearer: [] summary: 응시 매칭 생성 tags: - 사용자퀴즈페이퍼 /userquizpaper/{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_cslms-api_internal_models.UserQuizPaperResponse' security: - Bearer: [] summary: 응시 정보 가져오기 tags: - 사용자퀴즈페이퍼 patch: consumes: - application/json description: 응시 정보를 변경합니다. parameters: - description: UserQuizPaper ID in: path name: id required: true type: integer - description: UserQuizPaper Patch Body (변경할 필드만 입력) in: body name: userQuizPaperPatchBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizPaperPatchRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizPaperResponse' security: - Bearer: [] summary: 응시 정보 변경 tags: - 사용자퀴즈페이퍼 put: consumes: - application/json description: 응시를 수정합니다. parameters: - description: UserQuizPaper ID in: path name: id required: true type: integer - description: UserQuizPaper Update Body in: body name: userQuizPaperUpdateBody required: true schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizPaperUpdateRequest' produces: - application/json responses: "200": description: OK schema: $ref: '#/definitions/learnsteam_cslms-api_internal_models.UserQuizPaperResponse' security: - Bearer: [] summary: 응시 수정 tags: - 사용자퀴즈페이퍼 securityDefinitions: Bearer: in: header name: Authorization type: apiKey swagger: "2.0"