{
    "swagger": "2.0",
    "info": {
        "description": "Learnsteam Quiz 서비스 API",
        "title": "Learsteam Quiz API",
        "contact": {
            "name": "Jay Sheen",
            "email": "sheen@jongyeob.com"
        },
        "version": "1.0"
    },
    "paths": {
        "/auth/login": {
            "post": {
                "description": "사용자가 로그인합니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "로그인"
                ],
                "summary": "사용자 로그인 로그인",
                "parameters": [
                    {
                        "description": "Login Body",
                        "name": "loginBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.LoginRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.LoginResponse"
                        }
                    }
                }
            }
        },
        "/auth/register": {
            "post": {
                "description": "username, name, password 를 입력하여 회원가입",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "회원가입"
                ],
                "summary": "회원가입",
                "parameters": [
                    {
                        "description": "Register Body",
                        "name": "registerBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.RegisterRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.RegisterResponse"
                        }
                    }
                }
            }
        },
        "/exam": {
            "get": {
                "description": "응시 목록을 가져옵니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Exam"
                ],
                "summary": "응시 목록 가져오기",
                "parameters": [
                    {
                        "type": "string",
                        "description": "검색어",
                        "name": "q",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "페이지",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "페이지 사이즈",
                        "name": "limit",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamListResponse"
                        }
                    }
                }
            },
            "put": {
                "description": "응시를 수정합니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Exam"
                ],
                "summary": "응시 수정",
                "parameters": [
                    {
                        "description": "Exam Update Body",
                        "name": "examUpdateBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamUpdateRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamResponse"
                        }
                    }
                }
            },
            "post": {
                "description": "응시 매칭을 만듭니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Exam"
                ],
                "summary": "응시 매칭 생성",
                "parameters": [
                    {
                        "description": "Exam Body",
                        "name": "examBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.Exam"
                            }
                        }
                    }
                }
            },
            "patch": {
                "description": "응시 정보를 변경합니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Exam"
                ],
                "summary": "응시 정보 변경",
                "parameters": [
                    {
                        "description": "Exam Patch Body (변경할 필드만 입력)",
                        "name": "examPatchBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamPatchRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamResponse"
                        }
                    }
                }
            }
        },
        "/exam/{id}": {
            "get": {
                "description": "ID로 응시 정보를 가져옵니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Exam"
                ],
                "summary": "응시 정보 가져오기",
                "parameters": [
                    {
                        "type": "string",
                        "description": "응시 ID",
                        "name": "id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ExamResponse"
                        }
                    }
                }
            }
        },
        "/program": {
            "get": {
                "description": "퀴즈 프로그램 목록을 가져옵니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Program"
                ],
                "summary": "프로그램 목록 가져오기",
                "parameters": [
                    {
                        "type": "string",
                        "description": "태그",
                        "name": "tag",
                        "in": "query"
                    },
                    {
                        "type": "string",
                        "description": "검색어",
                        "name": "q",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "페이지",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "페이지 사이즈",
                        "name": "limit",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramListResponse"
                        }
                    }
                }
            },
            "put": {
                "description": "퀴즈 프로그램을 수정합니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Program"
                ],
                "summary": "퀴즈 프로그램 수정",
                "parameters": [
                    {
                        "description": "Program Body",
                        "name": "programUpdateBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse"
                        }
                    }
                }
            },
            "post": {
                "description": "퀴즈 프로그램을 만듭니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Program"
                ],
                "summary": "퀴즈 프로그램 생성",
                "parameters": [
                    {
                        "description": "Program Body",
                        "name": "programBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse"
                        }
                    }
                }
            }
        },
        "/program/{id}": {
            "get": {
                "description": "ID로 퀴즈 프로그램을 가져옵니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Program"
                ],
                "summary": "퀴즈 프로그램 가져오기",
                "parameters": [
                    {
                        "type": "string",
                        "description": "퀴즈 프로그램 ID",
                        "name": "id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse"
                        }
                    }
                }
            }
        },
        "/quiz": {
            "get": {
                "description": "퀴즈 목록을 가져옵니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Quiz"
                ],
                "summary": "퀴즈 목록 가져오기",
                "parameters": [
                    {
                        "type": "string",
                        "description": "프로그램 ID",
                        "name": "program_id",
                        "in": "query",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "검색어",
                        "name": "q",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "페이지",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "페이지 사이즈",
                        "name": "limit",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizListResponse"
                        }
                    }
                }
            },
            "put": {
                "description": "퀴즈를 수정합니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Quiz"
                ],
                "summary": "퀴즈 수정",
                "parameters": [
                    {
                        "description": "Quiz Body",
                        "name": "quizBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizResponse"
                        }
                    }
                }
            },
            "post": {
                "description": "퀴즈를 만듭니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Quiz"
                ],
                "summary": "퀴즈 생성",
                "parameters": [
                    {
                        "description": "Quiz Body",
                        "name": "quizBody",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizRequest"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizResponse"
                        }
                    }
                }
            }
        },
        "/quiz/{id}": {
            "get": {
                "description": "ID로 퀴즈를 가져옵니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Quiz"
                ],
                "summary": "퀴즈 가져오기",
                "parameters": [
                    {
                        "type": "string",
                        "description": "퀴즈 ID",
                        "name": "id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.QuizResponse"
                        }
                    }
                }
            }
        },
        "/token/refresh": {
            "post": {
                "description": "AccessToken을 RefreshToken으로 갱신합니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "Token"
                ],
                "summary": "AccessToken Refresh",
                "parameters": [
                    {
                        "description": "RefreshToken",
                        "name": "refresh_token",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.ProgramResponse"
                        }
                    }
                }
            }
        },
        "/user": {
            "get": {
                "description": "사용자 목록을 가져옵니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "User"
                ],
                "summary": "사용자 목록 가져오기",
                "parameters": [
                    {
                        "type": "string",
                        "description": "검색어",
                        "name": "q",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "페이지",
                        "name": "page",
                        "in": "query"
                    },
                    {
                        "type": "integer",
                        "description": "페이지 사이즈",
                        "name": "limit",
                        "in": "query"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.UserListResponse"
                        }
                    }
                }
            }
        },
        "/user/{id}": {
            "get": {
                "description": "ID로 사용자 정보를 가져옵니다.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "User"
                ],
                "summary": "사용자 정보 가져오기",
                "parameters": [
                    {
                        "type": "string",
                        "description": "사용자 ID",
                        "name": "id",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.User"
                        }
                    }
                }
            }
        }
    },
    "definitions": {
        "learnsteam_learsteam-quiz-api_internal_models.Exam": {
            "type": "object",
            "properties": {
                "end_at": {
                    "type": "string"
                },
                "id": {
                    "type": "string",
                    "example": "ef74c59a-c707-4162-a52b-455906c81ec1"
                },
                "name": {
                    "type": "string",
                    "example": "홍길순"
                },
                "program": {
                    "type": "string",
                    "example": "파이썬 초급 과정"
                },
                "program_id": {
                    "type": "string",
                    "example": "7f9329f5-2e36-4638-92d2-73064b7291a4"
                },
                "score": {
                    "type": "integer",
                    "example": 5
                },
                "start_at": {
                    "type": "string"
                },
                "status": {
                    "type": "string",
                    "example": "ready"
                },
                "subject": {
                    "type": "string",
                    "example": "출력 Print"
                },
                "total": {
                    "type": "integer",
                    "example": 5
                },
                "user_id": {
                    "type": "string",
                    "example": "f95159dd-c42c-490d-ac6b-ca5d88a266bb"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.ExamListResponse": {
            "type": "object",
            "properties": {
                "data": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.Exam"
                    }
                },
                "page": {
                    "type": "integer",
                    "example": 1
                },
                "pageSize": {
                    "type": "integer",
                    "example": 10
                },
                "total": {
                    "type": "integer",
                    "example": 999
                },
                "totalPage": {
                    "type": "integer",
                    "example": 99
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.ExamPatchRequest": {
            "type": "object",
            "properties": {
                "end_at": {
                    "type": "string",
                    "example": "2023-11-10T13:25:00+09:00"
                },
                "score": {
                    "type": "integer",
                    "example": 4
                },
                "start_at": {
                    "type": "string",
                    "example": "2023-11-10T13:10:00+09:00"
                },
                "status": {
                    "type": "string",
                    "example": "rating"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.ExamRequest": {
            "type": "object",
            "properties": {
                "program_id": {
                    "type": "string",
                    "example": "7f9329f5-2e36-4638-92d2-73064b7291a4"
                },
                "users": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.ExamResponse": {
            "type": "object",
            "properties": {
                "end_at": {
                    "type": "string",
                    "example": "2023-11-10T13:25:00+09:00"
                },
                "id": {
                    "type": "string",
                    "example": "ef74c59a-c707-4162-a52b-455906c81ec1"
                },
                "name": {
                    "type": "string",
                    "example": "홍길순"
                },
                "program": {
                    "type": "string",
                    "example": "파이썬 초급 과정"
                },
                "program_id": {
                    "type": "string",
                    "example": "7f9329f5-2e36-4638-92d2-73064b7291a4"
                },
                "score": {
                    "type": "integer",
                    "example": 5
                },
                "start_at": {
                    "type": "string",
                    "example": "2023-11-10T13:10:00+09:00"
                },
                "status": {
                    "type": "string",
                    "example": "ready"
                },
                "subject": {
                    "type": "string",
                    "example": "출력 Print"
                },
                "total": {
                    "type": "integer",
                    "example": 5
                },
                "user_id": {
                    "type": "string",
                    "example": "f95159dd-c42c-490d-ac6b-ca5d88a266bb"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.ExamUpdateRequest": {
            "type": "object",
            "properties": {
                "end_at": {
                    "type": "string",
                    "example": "2023-11-10T13:25:00+09:00"
                },
                "name": {
                    "type": "string",
                    "example": "홍길순"
                },
                "program": {
                    "type": "string",
                    "example": "파이썬 초급 과정"
                },
                "program_id": {
                    "type": "string",
                    "example": "7f9329f5-2e36-4638-92d2-73064b7291a4"
                },
                "score": {
                    "type": "integer",
                    "example": 5
                },
                "start_at": {
                    "type": "string",
                    "example": "2023-11-10T13:10:00+09:00"
                },
                "status": {
                    "type": "string",
                    "example": "ready"
                },
                "subject": {
                    "type": "string",
                    "example": "출력 Print"
                },
                "total": {
                    "type": "integer",
                    "example": 5
                },
                "user_id": {
                    "type": "string",
                    "example": "f95159dd-c42c-490d-ac6b-ca5d88a266bb"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.LoginRequest": {
            "type": "object",
            "properties": {
                "password": {
                    "type": "string"
                },
                "username": {
                    "type": "string"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.LoginResponse": {
            "type": "object",
            "properties": {
                "refresh_token": {
                    "type": "string",
                    "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDc4OTcwMjcs"
                },
                "token": {
                    "type": "string",
                    "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDI3MTMwMjcsInN1"
                },
                "user": {
                    "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.User"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.Program": {
            "type": "object",
            "properties": {
                "content": {
                    "type": "string",
                    "example": "코스 설명"
                },
                "course": {
                    "type": "string",
                    "example": "코스 이름"
                },
                "id": {
                    "type": "string",
                    "example": "ef74c59a-c707-4162-a52b-455906c81ec1"
                },
                "publish_at": {
                    "type": "string",
                    "example": "2023-11-10T00:00:00+09:00"
                },
                "status": {
                    "type": "string",
                    "example": "on"
                },
                "subject": {
                    "type": "string",
                    "example": "프로그램 제목"
                },
                "tag": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.ProgramListResponse": {
            "type": "object",
            "properties": {
                "data": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.Program"
                    }
                },
                "page": {
                    "type": "integer",
                    "example": 1
                },
                "pageSize": {
                    "type": "integer",
                    "example": 10
                },
                "total": {
                    "type": "integer",
                    "example": 999
                },
                "totalPage": {
                    "type": "integer",
                    "example": 99
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.ProgramRequest": {
            "type": "object",
            "properties": {
                "content": {
                    "type": "string",
                    "example": "코스 설명"
                },
                "course": {
                    "type": "string",
                    "example": "코스 이름"
                },
                "publish_at": {
                    "type": "string",
                    "example": "2023-11-10T00:00:00+09:00"
                },
                "status": {
                    "type": "string",
                    "example": "on"
                },
                "subject": {
                    "type": "string",
                    "example": "프로그램 제목"
                },
                "tag": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.ProgramResponse": {
            "type": "object",
            "properties": {
                "content": {
                    "type": "string",
                    "example": "코스 설명"
                },
                "course": {
                    "type": "string",
                    "example": "코스 이름"
                },
                "id": {
                    "type": "string",
                    "example": "ef74c59a-c707-4162-a52b-455906c81ec1"
                },
                "publish_at": {
                    "type": "string",
                    "example": "2023-11-10T00:00:00+09:00"
                },
                "status": {
                    "type": "string",
                    "example": "on"
                },
                "subject": {
                    "type": "string",
                    "example": "프로그램 제목"
                },
                "tag": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    },
                    "example": [
                        "tag1",
                        "tag2"
                    ]
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.Quiz": {
            "type": "object",
            "properties": {
                "answer": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "choice": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "comment": {
                    "type": "string",
                    "example": "퀴즈 해설"
                },
                "hint": {
                    "type": "string",
                    "example": "퀴즈 힌트"
                },
                "id": {
                    "type": "string",
                    "example": "1b066168-68c4-4b50-bc9a-b6c4fceaf378"
                },
                "program_id": {
                    "type": "string",
                    "example": "2036023a-fb56-4b6c-b3bb-c787c681ada6"
                },
                "question": {
                    "type": "string",
                    "example": "퀴즈 질문입니다."
                },
                "quiz_type": {
                    "type": "string",
                    "example": "choice"
                },
                "sequence": {
                    "type": "integer",
                    "example": 5
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.QuizListResponse": {
            "type": "object",
            "properties": {
                "data": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.Quiz"
                    }
                },
                "page": {
                    "type": "integer",
                    "example": 1
                },
                "pageSize": {
                    "type": "integer",
                    "example": 10
                },
                "total": {
                    "type": "integer",
                    "example": 5
                },
                "totalPage": {
                    "type": "integer",
                    "example": 1
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.QuizRequest": {
            "type": "object",
            "properties": {
                "answer": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "choice": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "comment": {
                    "type": "string"
                },
                "hint": {
                    "type": "string"
                },
                "program_id": {
                    "type": "string"
                },
                "question": {
                    "type": "string"
                },
                "quiz_type": {
                    "type": "string"
                },
                "sequence": {
                    "type": "integer"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.QuizResponse": {
            "type": "object",
            "properties": {
                "answer": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "choice": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "comment": {
                    "type": "string",
                    "example": "퀴즈 해설"
                },
                "hint": {
                    "type": "string",
                    "example": "퀴즈 힌트"
                },
                "id": {
                    "type": "string",
                    "example": "1b066168-68c4-4b50-bc9a-b6c4fceaf378"
                },
                "program_id": {
                    "type": "string",
                    "example": "2036023a-fb56-4b6c-b3bb-c787c681ada6"
                },
                "question": {
                    "type": "string",
                    "example": "퀴즈 질문입니다."
                },
                "quiz_type": {
                    "type": "string",
                    "example": "check"
                },
                "sequence": {
                    "type": "integer",
                    "example": 5
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.RegisterRequest": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                },
                "password": {
                    "type": "string"
                },
                "username": {
                    "type": "string"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.RegisterResponse": {
            "type": "object",
            "properties": {
                "refresh_token": {
                    "type": "string",
                    "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDc4OTcwMjcs"
                },
                "token": {
                    "type": "string",
                    "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdXRob3JpemVkIjp0cnVlLCJleHAiOjE3MDI3MTMwMjcsInN1"
                },
                "user": {
                    "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.User"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.User": {
            "type": "object",
            "properties": {
                "id": {
                    "type": "string",
                    "example": "137c1683-2ad6-4201-b256-253828b61c49"
                },
                "name": {
                    "type": "string",
                    "example": "홍길동"
                },
                "score": {
                    "type": "integer",
                    "example": 9999
                },
                "username": {
                    "type": "string",
                    "example": "user0"
                }
            }
        },
        "learnsteam_learsteam-quiz-api_internal_models.UserListResponse": {
            "type": "object",
            "properties": {
                "data": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/learnsteam_learsteam-quiz-api_internal_models.User"
                    }
                },
                "page": {
                    "type": "integer",
                    "example": 1
                },
                "pageSize": {
                    "type": "integer",
                    "example": 10
                },
                "total": {
                    "type": "integer",
                    "example": 90
                },
                "totalPage": {
                    "type": "integer",
                    "example": 9
                }
            }
        }
    }
}