본문 바로가기
KLASSLAB API / V1

API 키

필요한 권한만 부여하고 안전하게 연결하세요.

키 발급과 권한

대표자 계정으로 키 관리에서 발급합니다. 개발용·운영용 키를 나누고 필요한 scope만 선택하세요. 일반 웹 구독과 API 구독은 별개입니다.

Authorization: Bearer <API_KEY>

키 보관

  • 키는 발급 직후 한 번만 표시되며 서버에는 해시만 보관합니다.
  • 서버 환경변수나 비밀 저장소에 보관하세요. 브라우저 코드·앱 소스·URL·로그에 넣지 마세요.
  • API Explorer에 입력한 키는 저장하지 않습니다. 공용 기기에서 입력하지 마세요.
  • 유출되면 기존 키를 폐기하고 새 키를 배포하세요. 만료·폐기된 키는 호출할 수 없습니다.

사용 가능한 권한

필요한 기능만 허용하세요. .read는 조회, .write는 등록·수정 등 관리 작업에 사용하는 별도 권한입니다. 두 작업이 모두 필요하면 두 권한을 함께 선택하세요. grading.omr는 크레딧 차감 동의가 필요한 OMR 채점 실행 권한입니다.

기능·권한 코드허용되는 작업상세 API
출결·입퇴실 조회
attendance.read
수업별 출석부, 학생별 출결 합계와 입퇴실 기록을 확인합니다.API 목록 →
입퇴실 기록 관리
attendance.write
학생 입퇴실 기록을 등록하거나 삭제합니다. 수업 출결 수정은 수업·과제장 관리 권한입니다.API 목록 →
교재·출고 조회
books.read
교재비 항목과 학생별 출고·반품·수납 현황을 확인합니다.API 목록 →
교재·출고 관리
books.write
교재비 항목과 출고 기록을 등록·수정·삭제하고 반품·수납 상태를 변경합니다.API 목록 →
상담 예약 조회
consultations.read
상담 예약 목록·상세와 담당자를 확인합니다.API 목록 →
상담 예약 관리
consultations.write
상담 예약을 등록·변경·완료·취소하거나 삭제합니다.API 목록 →
OMR 채점 실행
grading.omr
업로드한 답안을 OMR로 채점합니다. 장수에 따른 크레딧 차감 동의가 필요합니다.API 목록 →
시험·성적 조회
grading.read
시험·정답·학생별 답안과 점수, OMR 양식, 작업 상태와 사용량을 확인합니다.API 목록 →
시험·답안 관리
grading.write
시험·정답·성적을 관리하고 파일 업로드, XLSX 답안 가져오기와 재계산을 신청합니다. OMR 실행은 별도 권한입니다.API 목록 →
학생 생활기록 조회
life.read
생활기록 항목과 학생별 기록을 확인합니다.API 목록 →
학생 생활기록 관리
life.write
생활기록 항목을 설정하고 학생별 기록을 저장하거나 삭제합니다.API 목록 →
messages.read
messages.read
이 권한에 포함된 API는 레퍼런스에서 확인하세요.API 목록 →
messages.write
messages.write
이 권한에 포함된 API는 레퍼런스에서 확인하세요.API 목록 →
직원 기본정보 관리
staff.manage
출퇴근용 직원의 이름·직무·입퇴사일을 등록·수정하고 퇴사 처리합니다. 비밀번호·급여는 변경하지 않습니다.API 목록 →
직원 근무 조회
staff.read
직원 목록과 출퇴근·근무일지, 근무 시간 합계를 확인합니다.API 목록 →
직원 근무 관리
staff.write
직원의 출퇴근 기록과 근무일지를 등록·수정·삭제합니다.API 목록 →
statistics.read
statistics.read
이 권한에 포함된 API는 레퍼런스에서 확인하세요.API 목록 →
학생·수강 이력 조회
students.read
학생 기본정보와 수강 이력을 검색하고 확인합니다.API 목록 →
학생·수강 관리
students.write
학생 정보를 등록·수정·삭제하고 수강 등록과 퇴원을 처리합니다.API 목록 →
수업·과제장 조회
teaching.read
수업·과제장과 학생별 결과, 보강·재검사 일정, 클리닉 기록을 확인합니다.API 목록 →
수업·과제장 관리
teaching.write
수업·명단·출결·검사 결과를 관리하고 보강 연결, 재검사·클리닉 기록을 처리합니다.API 목록 →
수강반·시간표 조회
teams.read
수강반 정보와 반별 시간표를 확인합니다.API 목록 →
수강반·시간표 관리
teams.write
수강반·시간표를 등록·수정·삭제하고 종강·종강 취소를 처리합니다.API 목록 →

학원은 키에서 결정합니다. 요청에 다른 학원 번호를 넣어도 접근 범위가 바뀌지 않습니다. 직접 발급한 키의 유효기간은 1~365일 또는 만료 없음이며 MCP 연결·재연결이 이 키의 만료일을 변경하지 않습니다. MCP 연결은 별도로 최대 90일 유지됩니다.

페이지

API 구독 · 크레딧API 키 관리API 사용량 · 호출 로그문의 · 증액 신청

문서

MCP 연결KlassLab API · v1선생님 개발 가이드KlassLab API · v1KlassLab API 소개KlassLab API · v1빠른 시작KlassLab API · v1API 키KlassLab API · v1API 레퍼런스KlassLab API · v1제공 기능 · 요금KlassLab API · v1API ExplorerKlassLab API · v1

API 레퍼런스

등록된 온라인 과제·재시험 조회(온라인 번호·구분·진행 상태)온라인 과제·재시험 · GET /grading/online-exams온라인 시험 구분·응시대상 설정 현황온라인 과제·재시험 · GET /grading/online-exams/{onlineExamId}온라인 시험 구분 변경(연결된 재시험은 먼저 연결 해제)온라인 과제·재시험 · PATCH /grading/online-exams/{onlineExamId}/kind과제장 재시험 연결·해제할 등록 번호 조회과제장 재시험 연결 · GET /teaching/lessons/{lessonId}/retest재시험 연결·선택한 과제장 학생 응시 등록·재시험 대상 체크(원자적 저장)과제장 재시험 연결 · PUT /teaching/lessons/{lessonId}/retest조회한 연결 해제·개별 응시 등록 제거(공유 학생·반 등록·성적·출결 보존)과제장 재시험 연결 · DELETE /teaching/lessons/{lessonId}/retest미제출 명단 조회(재시험은 지정 응시대상, 통합은 두 시험 모두 성적 없음)미제출 명단 · GET /grading/exams/{examId}/missing-submissions직원 기본정보 상세(비밀번호·급여 제외)직원 출퇴근 · GET /attendance/staff/{staffId}직원 기본정보 등록(로그인 비밀번호 발급 없음)직원 출퇴근 · POST /attendance/staff직원 기본정보·입퇴사일 수정직원 출퇴근 · PUT /attendance/staff/{staffId}직원 퇴사 처리(근무 이력 보존)직원 출퇴근 · DELETE /attendance/staff/{staffId}전반 취소(새 반 수강번호 지정·이전 반 복원·취소 이력 보존)수강생관리 · POST /students/{id}/enrollments/{enrollmentId}/cancel-transfer수강 등록일 수정수강생관리 · PATCH /students/{id}/enrollments/{enrollmentId}수강 등록 삭제(출결·과제 기록이 있으면 거절)수강생관리 · DELETE /students/{id}/enrollments/{enrollmentId}학생 단일 필드 수정수강생관리 · PATCH /students/{id}퇴원 취소수강생관리 · POST /students/{id}/enrollments/{enrollmentId}/restore수강반 전반(원 수강 종료와 신규 등록을 함께 저장)수강생관리 · POST /students/{id}/enrollments/{enrollmentId}/moveTeaching teacher names and IDs, including teachers without classes; shared by classes, lessons and exams. Not employee time-clock staff.수강반관리 · GET /teams/teachers상담 담당자 선택 목록상담예약관리 · GET /consultations/staff생활기록 분류 목록학생생활기록 · GET /life-records/categories수강반·담당·시간표 목록. status=open 미종강(미래 개강·종강 포함), closed 종강, all 전체. 한국 오늘 기준. sort=id_desc 최신 등록번호순, begin_date_asc/desc 개강일순. appliedSort/appliedStatus 확인수강반관리 · GET /teams예정 수업·담당자·시각·고유 재원 인원. date의 하루 조회; lookAheadDays>0이면 그날부터 범위 안 첫 수업일 조회. 개강·종강·시간표 기간 적용, 저장 출석부 아님수강반관리 · GET /teams/daily-plan수강반 상세수강반관리 · GET /teams/{id}수강반 등록수강반관리 · POST /teams새 수강반과 시간표를 함께 등록(원자적 저장·하나라도 실패하면 전체 취소)수강반관리 · POST /teams/with-schedules수강반 수정 · 종강/종강 취소수강반관리 · PUT /teams/{id}수강반 삭제(재원생이 있으면 거절)수강반관리 · DELETE /teams/{id}수강반의 시간표 목록(id는 teamId이며 scheduleId 아님)수강반관리 · GET /teams/{id}/schedules시간표 등록수강반관리 · POST /teams/{id}/schedules시간표 수정수강반관리 · PUT /teams/{id}/schedules/{scheduleId}시간표 삭제(수업·재원생이 있으면 거절)수강반관리 · DELETE /teams/{id}/schedules/{scheduleId}학생 검색 · 목록(공백으로 구분한 이름·학생번호·연락처 중 하나라도 일치)수강생관리 · GET /students학생 기본정보수강생관리 · GET /students/{id}학생 기본정보 등록(수강 등록은 별도)수강생관리 · POST /students학생 기본정보 수정(전체 필드 교체)수강생관리 · PUT /students/{id}학생 삭제(재원 중이면 거절)수강생관리 · DELETE /students/{id}학생 수강 이력수강생관리 · GET /students/{id}/enrollments기존 학생 수강 등록수강생관리 · POST /enrollments퇴원 처리수강생관리 · PUT /students/{id}/enrollments/{enrollmentId}/end기간별 상담 예약상담예약관리 · GET /consultations상담 예약 상세상담예약관리 · GET /consultations/{id}상담 예약 등록상담예약관리 · POST /consultations상담 예약 변경 · 완료 · 취소상담예약관리 · PUT /consultations/{id}상담 예약 삭제상담예약관리 · DELETE /consultations/{id}생활기록 항목 정의학생생활기록 · GET /life-records/fields생활기록 항목 설정학생생활기록 · PUT /life-records/fields수강 시간표별 학생 생활기록학생생활기록 · GET /life-records학생 생활기록 저장(항목 값 병합)학생생활기록 · PUT /life-records학생 생활기록 삭제학생생활기록 · DELETE /life-records/{id}채점 과목 목록채점 과목 · GET /grading/subjects과목별 대분류 목록채점 과목 · GET /grading/subjects/{subject}/sections과목·대분류 등록채점 과목 · POST /grading/sections과목 내 대분류 수정채점 과목 · PUT /grading/sections/{sectionId}대분류 삭제(사용 중이면 거절)채점 과목 · DELETE /grading/sections/{sectionId}대분류의 소분류 목록채점 과목 · GET /grading/sections/{sectionId}/patterns소분류 등록채점 과목 · POST /grading/sections/{sectionId}/patterns소분류 수정채점 과목 · PUT /grading/sections/{sectionId}/patterns/{patternId}소분류 삭제(사용 중이면 거절)채점 과목 · DELETE /grading/sections/{sectionId}/patterns/{patternId}공식 OMR 양식별 총 칸 수·종류 목록·PDF/이미지 제공 정보. 개별 문항 번호·답안 종류·정답 입력 틀은 grading.answer-template.get에 있음. answerTypes는 필요한 종류 교집합 필터(0 객관식, 1 단답형 정답 비교, 2 서술형 획득점수). 미지정 필터는 생략. 양식 코드는 학원 시험 이름이 아님OMR 양식 정보 · GET /grading/omr-templates공식 빈 OMR PDF·이미지 원본 다운로드OMR 양식 정보 · GET /grading/omr-templates/{code}/files/{format}지정한 OMR 양식의 문항별 번호(number)·답안 종류(answerType)·정답·배점 입력 틀 배열. 특정 문항 범위의 종류 확인에도 사용. 0 객관식, 1 단답형 정답 비교, 2 서술형 획득점수. 실제 시험·채점 점수 조회가 아님정답지 등록 · GET /grading/omr-templates/{code}/answers시험·정답지 검색·목록(제목·회차·연도·학년으로 구별, 수강반 목록과 다름)정답지 등록 · GET /grading/exams시험과 전체 문항별 정답 상세정답지 등록 · GET /grading/exams/{examId}새 시험·정답지 등록(학생 답안 채점 아님)정답지 등록 · POST /grading/exams정답지 전체 교체(성적표 설정·문항 이미지 연결 보존)정답지 등록 · PUT /grading/exams/{examId}시험 삭제(채점 자료가 있으면 거절)정답지 등록 · DELETE /grading/exams/{examId}채점 점수·답안·코멘트 조회. 오답·보충·만점 대비 비율 분석은 includeAnalysis=true로 서버 판정을 사용. 빈 답안은 실제 무응답으로 단정하지 않고 미식별 학생은 추측하지 않음채점 자료 수정 · GET /grading/exams/{examId}/scores기존 시험에 학생 수기·엑셀 답안 채점·저장(결과는 학생별 번호 배열)채점 자료 수정 · POST /grading/exams/{examId}/scores개별·일괄 기존 채점 답안 수정 및 재채점. 기존 미식별 답안은 행 id와 빈 studentId로 학생 연결·인식 이름을 보존하며 수정. 정답지와 원본 marks 전체를 조회해 요청하지 않은 답안은 유지채점 자료 수정 · PUT /grading/exams/{examId}/scores채점 행 삭제채점 자료 수정 · DELETE /grading/exams/{examId}/scores/{scoreId}학생별 성적 개별 코멘트 저장채점 자료 수정 · PATCH /grading/exams/{examId}/scores/{scoreId}/commentOMR PDF 원본 업로드(최대 50MB·100쪽 / 페이지 자동 변환)작업 파일 · POST /grading/pdf-uploads채팅 첨부 OMR PDF 업로드(최대 50MB·100쪽 / 이미지·XLSX도 지원)작업 파일 · POST /grading/attachments보조 업로드: PNG·JPG 스캔 이미지·XLSX 답안 파일(파일당 5MB)작업 파일 · POST /grading/uploads단일·두 회차 OMR 채점 작업 등록(구독 OMR 장수 집계)OMR 채점 · POST /grading/omr-jobsXLSX 답안 등록 작업 생성엑셀 채점 등록 · POST /grading/exams/{examId}/excel-imports데이터 작업 진행 상태·인식 결과 조회작업 상태 · GET /grading/jobs/{jobId}정답 변경 후 점수·통계 재계산 작업 생성채점 자료 수정 · POST /grading/recalculation-jobs현재 API 호출·OMR 장수의 사용량과 구독 한도 확인OMR 채점 · GET /grading/usage날짜·반별 수업 기록·과제장 목록(수강반 목록 아님)수업·과제장 · GET /teaching/lessons과제장 수업과 항목 상세수업·과제장 · GET /teaching/lessons/{lessonId}수업·과제장 내용과 숙제 정의 등록(학생별 출석·과제완료는 학생별 결과 변경으로 별도 처리)수업·과제장 · POST /teaching/lessons수업·과제장 전체 수정수업·과제장 · PUT /teaching/lessons/{lessonId}수업·과제장 삭제와 연결 출석 정리수업·과제장 · DELETE /teaching/lessons/{lessonId}수업 목록의 lessonId로 저장된 출석·검사 조회(반·시간표 번호 아님, 빈 명단은 roster.add 후 기록)수업·과제장 · GET /teaching/lessons/{lessonId}/students수강 등록에서 선택한 일반 학생을 출석부에 추가수업·과제장 · POST /teaching/lessons/{lessonId}/students수업 학생 출석·결석·검사결과 부분 수정(입퇴실·수강등록 아님). 학생 코멘트는 rows[].values.comment에 전달하고 생략 항목은 보존수업·과제장 · PATCH /teaching/lessons/{lessonId}/results명단 학생 삭제(연결된 원래 결석 복원)수업·과제장 · DELETE /teaching/lessons/{lessonId}/students/{studentId}수업의 저장된 출석부 삭제수업·과제장 · DELETE /teaching/lessons/{lessonId}/attendance보강완료 연결 후보(같은 학생·타반·수업일 ±10일)수업·과제장 · GET /teaching/lessons/{lessonId}/students/{studentId}/makeup-candidates원래 수업의 현재 보강 연결·복원 출결 조회(해제 전 필수 확인)수업·과제장 · GET /teaching/lessons/{lessonId}/students/{studentId}/makeup-link조회한 보강 연결만 해제하고 보존된 원래 출결 복원. 보강생 행·과제·코멘트는 보존하며 확인값이 달라지면 거절수업·과제장 · PATCH /teaching/lessons/{lessonId}/students/{studentId}/makeup-link목적지 보강 수업 lessonId로 원래 결석 후보 조회(응답 originalLessonId에서 선택)수업·과제장 · GET /teaching/lessons/{lessonId}/absence-candidates목적지 lessonId에 선택한 원래 결석 originalLessonId를 연결해 보강생(8) 추가·원반 보강완료(7) 처리수업·과제장 · POST /teaching/lessons/{lessonId}/makeups연결된 OMR 점수를 과제장에 동기화수업·과제장 · POST /teaching/lessons/{lessonId}/score-sync선택 과제장의 학기·기간 일괄 변경수업·과제장 · PUT /teaching/seasons기간별 재검사 일정 목록재검사 일정 · GET /teaching/todos재검사 일정 상세재검사 일정 · GET /teaching/todos/{todoId}재검사 메모·날짜·처리 결과 저장재검사 일정 · PUT /teaching/todos/{todoId}기간별 누적 과제·시험·출결 결과. valueItems가 같은 수업의 제목·슬롯·표시 안내·결과를 연결. 값만으로 만점·단위를 추측하지 않음과제장 누적 성적표 · GET /teaching/cumulative-results반·날짜별 학생 이름·출결 상태·검사 조회. teamId와 from/to로 직접 조회하며 lessonId 불필요. 출결 단순 조회에 우선 사용수업일별 출석부 · GET /attendance/daily기간 내 전체 또는 선택 반의 학생별 출결 합계·결석 학생 명단 조회. 무결·유결 합계로 결석 구분, 타반 보강생 제외수강생별 출결현황 · GET /attendance/students학생 입퇴실 체크 내역입퇴실 체크 · GET /attendance/checks현재 시각 입실·퇴실 기록(수업 출석 아님·발송 없음)입퇴실 체크 · POST /attendance/checks학생 입퇴실 기록 삭제입퇴실 체크 · DELETE /attendance/checks/{checkId}기간별 클리닉 리뷰 목록클리닉 리뷰 · GET /teaching/clinic-reviews클리닉 리뷰 상세클리닉 리뷰 · GET /teaching/clinic-reviews/{reviewId}클리닉 리뷰 등록클리닉 리뷰 · POST /teaching/clinic-reviews클리닉 리뷰 전체 수정클리닉 리뷰 · PUT /teaching/clinic-reviews/{reviewId}클리닉 리뷰 삭제클리닉 리뷰 · DELETE /teaching/clinic-reviews/{reviewId}Time-clock employee identities, excluding passwords/payroll. Never use as the teaching teacher roster or teacher IDs.직원 출퇴근 · GET /attendance/staff기간별 직원 출퇴근·근무일지직원 출퇴근 · GET /attendance/staff/journals직원 출퇴근·근무일지 상세직원 출퇴근 · GET /attendance/staff/journals/{journalId}직원 출근·퇴근·근무일지 등록직원 출퇴근 · POST /attendance/staff/journals직원 출퇴근·근무일지 수정직원 출퇴근 · PUT /attendance/staff/journals/{journalId}직원 출퇴근 기록 삭제직원 출퇴근 · DELETE /attendance/staff/journals/{journalId}직원별 근무 일수·시간 합계직원 출퇴근 · GET /attendance/staff/summary교재비 항목 목록교재 출고 · GET /books교재비 항목 상세교재 출고 · GET /books/{bookId}교재비 항목 등록교재 출고 · POST /books교재비 항목 수정교재 출고 · PUT /books/{bookId}사용 이력이 없는 교재비 항목 삭제교재 출고 · DELETE /books/{bookId}기존 출고 부교재 이름 목록교재 출고 · GET /books/{bookId}/items원본 교재 번호(books.list/get id)별 출고·반품·수납 현황교재 출고 · GET /books/{bookId}/issues원본 교재·출고 번호의 학생별 현재 지급·반품·제외·금액·수납·메모 조회교재 출고 · GET /books/{bookId}/issues/{issueId}원본 교재 번호·학생·시간표로 학생별 교재 출고 등록교재 출고 · POST /books/{bookId}/issues원본 출고 조회 후 전체 값 수정(반품 해제·원복은 returned=false, 제외 해제·원복은 excluded=false, 다른 현재 값 보존)교재 출고 · PUT /books/{bookId}/issues/{issueId}청구에 사용하지 않은 출고 기록 삭제교재 출고 · DELETE /books/{bookId}/issues/{issueId}학생 이름 클릭 통합정보: 기본정보·수강 전체·최근 상담·시험성적·클리닉 요약학생 통합 정보 · GET /students/{id}/detail학생 통합정보 기본정보 조회(이름·번호·연락처·학교·학년·메모, 비밀번호 제외)학생 통합 정보 · GET /students/{id}/detail/profile학생 통합정보의 수강·퇴원·전반·종강·전반취소 이력과 이전 수강반 조회학생 통합 정보 · GET /students/{id}/detail/enrollments지정 학생 1명의 수업일별 출결·보강 이력(0=무결·4=유결은 결석, 5=출석·6=인강·7=보강완료·8=보강생과 구별)학생 통합 정보 · GET /students/{id}/detail/attendance학생 과제·시험 검사결과와 수업 회차·출결·코멘트. valueItems가 같은 수업의 실제 항목 제목·안내·결과를 연결, 빈 값은 미완료로 추측하지 않음학생 통합 정보 · GET /students/{id}/detail/homework학생 시험별 점수·평균·만점·등수 이력(오답 미제공, 공개 성적표 링크 발급 없음)학생 통합 정보 · GET /students/{id}/detail/scores학생의 원문 상담 내역·예약 유형·담당자·진행 상태 조회학생 통합 정보 · GET /students/{id}/detail/notes선택 학생의 특정 상담 원문·담당자·예약 일시·변경 검증 version 조회학생 통합 정보 · GET /students/{id}/detail/notes/{noteId}학생 통합정보에서 상담 기록 등록(선택한 담당자·유형·명시한 예약일만 사용)학생 통합 정보 · POST /students/{id}/detail/notes상담 원문·담당자·유형·예약 수정(생략한 값 보존·학원/학생/현재 version 원자적 검증)학생 통합 정보 · PATCH /students/{id}/detail/notes/{noteId}선택 학생의 상담 기록 삭제(현재 version 확인·소프트 삭제)학생 통합 정보 · DELETE /students/{id}/detail/notes/{noteId}학생 통합정보 상담 편집에서 실제 선택 가능한 담당자·예약 유형 목록학생 통합 정보 · GET /students/detail/note-options학생별 생활기록 이력과 실제 사용 설정된 항목 이름·값·도표 설정 조회학생 통합 정보 · GET /students/{id}/detail/life학생의 클리닉 예약·완료·취소·불참과 리뷰·메모 이력 조회학생 통합 정보 · GET /students/{id}/detail/clinics학생 통합정보의 할인율·형제 할인 연결 학생 이름과 번호 조회학생 통합 정보 · GET /students/{id}/detail/discounts학생별 문자·알림톡 발송 내용·수신번호·요청번호 이력 조회(발송 실행 없음)학생 통합 정보 · GET /students/{id}/detail/messages학생별 로그인 시각·접속 주소·구분 이력 조회학생 통합 정보 · GET /students/{id}/detail/logins반별 최근 학기·다음 회차와 실제 시간표에서 계산한 다음 수업일 후보(저장·자동 지정 없음)수업·과제장 · GET /teaching/teams/{id}/registration-defaults선택 과제장 제목과 현재 학생 공개 상태 조회수업·과제장 · GET /teaching/lessons/{lessonId}/publication학생에게 과제장 공개·비공개 변경(직전 공개 상태 일치 확인·수업 내용 보존)수업·과제장 · PATCH /teaching/lessons/{lessonId}/publication반별 전체 수강 이력(종료 포함·재원 인원 아님). 현재 학생 명단·인원은 students.list의 teamId 사용. 학생·수강번호·퇴원/전반/종강 사유수강반 관리 · GET /teams/{id}/detail/students과제장 등록에서 실제 선택 가능한 담당 선생님 이름과 번호수업·과제장 · GET /teaching/options/teachers실제 저장된 과제장 학기·기간 선택 목록수업·과제장 · GET /teaching/options/seasons담당 선생님의 복사 원본 과제장 선택 목록(조회만 하며 새 과제장을 만들지 않음)수업·과제장 · GET /teaching/options/copy-sources공유 템플릿 불러오기에서 실제 선택 가능한 과제장 목록수업·과제장 · GET /teaching/options/templates과제장의 시험 항목에 연결 가능한 담당 선생님의 채점지 이름과 번호수업·과제장 · GET /teaching/options/exams선택 수강반의 실제 시간표 목록(요일에 맞는 시간표를 임의 지정하지 않음)수업·과제장 · GET /teaching/teams/{id}/schedules반별 과제장 분류·교과·저장 양식과 실제 적용 양식 조회(시간표 자동 선택 없음)수업·과제장 · GET /teaching/teams/{id}/course반별 과제장 성적표 저장값·실제 적용 양식·이름·version 조회(미지정 0 등은 당일형 80, 82는 누적형)과제장 성적표 양식 설정 · GET /teaching/teams/{id}/report-settings반별 과제장 성적표를 당일형 80/누적형 82로 변경(현재 version 확인·다른 반 설정 보존)과제장 성적표 양식 설정 · PATCH /teaching/teams/{id}/report-settings클리닉 실제 예약·입실·퇴실·불참·취소 학생 명단 조회(상태 동기화나 메시지 발송 없음)클리닉 리뷰 · GET /teaching/clinic-appointments클리닉 리뷰 등록에서 저장된 리뷰 문구 목록 조회클리닉 리뷰 · GET /teaching/clinic-review-templates클리닉 문자 작성에서 저장된 문구 목록 조회(발송 없음)클리닉 리뷰 · GET /teaching/clinic-message-templates공유 문자 예제 분류 목록(학원 저장 문구와 분리)문자·알림톡 문구 · GET /messages/template-examples/categories공유 문자 예제 제목·분류·원문 조회(제목순·삭제 제외)문자·알림톡 문구 · GET /messages/template-examples현재 학원이 저장한 문자 문구 목록(공유 예제·AI 프롬프트 제외)문자·알림톡 문구 · GET /messages/templates저장된 문자 문구 원문·현재 변경 검증 version 조회문자·알림톡 문구 · GET /messages/templates/{templateId}학원 문자 문구 신규 저장(발송·AI 호출 없음)문자·알림톡 문구 · POST /messages/templates현재 학원의 문자 문구 제목·분류·내용 수정(현재 version 검증·공유 예제 수정 불가)문자·알림톡 문구 · PUT /messages/templates/{templateId}현재 학원 문자 문구 삭제(현재 version 검증·소프트 삭제)문자·알림톡 문구 · DELETE /messages/templates/{templateId}통계 조회 가능한 수강반·시간표 key 목록수강생 통계 조회 · GET /students/statistics/teams월별·연간 신규·재원·퇴원 고유 인원(명시 선택한 수강반 기준 전환)수강생 통계 조회 · GET /students/statistics/summary기간별 퇴원 명단. basis=academy는 학원 최종 퇴원, enrollment는 반별 퇴원 이력(다른 반 계속 수강도 포함). 반별 명단은 enrollment 사용. 원본 학생·반명·퇴원일, 전반·종강·전반취소 제외수강생 통계 조회 · GET /students/statistics/withdrawals통계 학생별 상세(학생 이름·번호 포함, month=0은 연간 월별 집합 합집합)수강생 통계 조회 · GET /students/statistics/students