개요

Classroom API는 Google 클래스룸에서 강의 및 출석부를 관리할 수 있는 RESTful 인터페이스를 제공합니다. 또한 클래스룸 공유 버튼을 사용하면 개발자와 콘텐츠 소유자가 클래스룸에 콘텐츠를 공유할 수 있습니다.

누가 API를 사용할 수 있나요?

Google Workspace for Education 도메인 관리자는 API를 사용하여 교사 대신 과정을 프로그래매틱 방식으로 프로비저닝하고, 학생 정보 시스템을 클래스룸과 동기화하며, 도메인에서 강의되는 수업에 대한 기본적인 가시성을 확보할 수 있습니다.

애플리케이션 개발자는 Classroom API를 사용하여 클래스룸과 앱을 통합할 수 있습니다. 이러한 앱에서는 OAuth 2.0을 사용하여 교사에게 수업 및 출석부를 볼 수 있는 권한을 요청해야 합니다. 도메인의 교사와 학생이 앱에서 Google 클래스룸 데이터에 액세스하도록 승인할 수 있는지 여부를 관리자는 제한할 수 있습니다.

웹사이트 소유자 및 콘텐츠 개발자는 클래스룸 공유 버튼을 사용하여 학생과 교사가 클래스룸에 콘텐츠를 다시 공유할 수 있습니다.

모든 API 및 클래스룸 공유 버튼 통합은 클래스룸 브랜드 가이드라인을 준수해야 합니다.

API 개요

Classroom API는 클래스룸 인터페이스에서 수업, 교사, 학생에 해당하는 여러 항목 유형으로 구성됩니다. 이러한 항목 중 일부에는 클래스룸에 있는 속성 외에도 API와 관련된 추가 속성이 있습니다. 기본 항목 유형은 다음과 같습니다.

API 리소스 및 메서드에 대한 자세한 내용은 Classroom API 참조를 확인하세요.

과정 메타데이터 및 별칭

Courses는 'M. Smith의 4학년 수학'과 할당된 교사, 학생 출석부, 메타데이터를 볼 수 있습니다. 각 과정은 서버가 할당한 고유 ID로 식별됩니다 과정 리소스는 특히 이름, 설명, 위치, 시간과 같은 과정에 대한 모든 메타데이터를 캡슐화합니다. 과정 출석부는 학생, 교사, 초대 리소스와 해당 리소스를 통해 관리됩니다.

별칭은 강의와 연결되어 고유 ID 대신 사용될 수 있는 수업의 대체 식별자입니다. 각 별칭은 이를 만들고 볼 수 있는 사용자를 제한하는 네임스페이스에 있습니다. 두 가지 네임스페이스가 지원됩니다.

  • 도메인: 도메인 네임스페이스는 모든 사용자가 액세스해야 하지만 특정 프로그램에 국한되지 않는 별칭을 만드는 데 유용합니다. 예를 들어 MATH 127 및 COMSCI 127과 같은 과정의 대체 목록은 도메인 네임스페이스에 만들어야 합니다. 도메인 네임스페이스의 별칭은 도메인 관리자만 만들 수 있지만 도메인의 모든 사용자에게 표시됩니다.
  • 개발자 프로젝트: 개발자 프로젝트 네임스페이스는 애플리케이션별 별칭을 관리할 때 유용합니다. 예를 들어 강의에 대체 식별자를 사용하는 애플리케이션은 별칭을 만들어 해당 식별자를 클래스룸 교육 과정에 매핑할 수 있습니다. 이 네임스페이스에서 생성된 별칭은 특정 Google API 콘솔과 연결됩니다. 애플리케이션의 모든 사용자는 해당 애플리케이션의 개발자 프로젝트의 네임스페이스에서 별칭을 만들고 볼 수 있습니다.

과정 메타데이터 및 별칭 관리에 대한 자세한 내용은 과정 관리를 참조하세요.

강의 출석부 및 사용자

학생교사는 사용자 프로필과 강의 간의 특정 매핑으로, 강의에서 해당 사용자의 역할을 나타냅니다. 학생과 교사의 지정은 전역이 아닙니다. 즉, 사용자를 한 수업에서는 교사로, 다른 과정에서 학생으로 지정할 수 있습니다. '학생' 또는 '교사' 지정은 특정 과정의 특정 사용자에 대한 권한 집합을 나타냅니다.

학생

학생 리소스는

특정 과정과 관련이 있습니다 학생은 강의 세부정보와 해당 강의의 교사를 볼 수 있습니다.

교사

교사 리소스는 특정 과정을 가르치는 사용자를 나타냅니다.

교사는 과정 세부정보를 확인 및 변경하고, 교사와 학생을 보고, 추가 교사와 학생을 관리할 수 있습니다.

초대 및 관련 메서드를 사용하면 수업에 학생과 교사를 편리하게 추가할 수 있습니다. 초대를 만들면 교사가 교사와 학생 리소스를 통해 직접 추가하는 대신 강의 참여 여부를 선택할 수 있습니다.

UserProfilesDirectory API에서 반환된 사용자의 고유 ID 또는 이메일 주소로 식별된 사용자의 도메인 프로필에 대한 매핑을 나타냅니다. 현재 사용자는 "me" 약칭을 사용하여 자신의 ID를 참조할 수도 있습니다.

출석부 관리에 대한 자세한 내용은 교사 및 학생 관리를 참조하세요.

수업 과제 및 학생 제출물

CourseWork 항목은 과정의 학생 그룹에 할당된 단일 작업을 나타냅니다. 여기에는 설명, 마감일, 자료와 같은 세부정보와 생성 시간과 같은 메타데이터가 포함됩니다. 자료에는 제목, 미리보기 이미지, URL은 물론 적절한 API (예: Drive, YouTube)와 함께 사용할 수 있는 식별자가 포함됩니다.

CourseWork 항목은 다음 작업 유형 중 하나를 설명합니다.

  • 학생이 워크시트 또는 기타 첨부파일을 제출하여 완료하는 과제입니다.
  • 단답형 질문 또는 객관식 질문입니다.

CourseWork 항목의 학생 과제물은 StudentSubmission로 표현됩니다. 응답과 추가 메타데이터(예: 상태 및 할당된 성적)로 구성됩니다.

StudentSubmission의 콘텐츠는 해당 CourseWork 항목의 유형에 따라 달라집니다.

  • 과제에 제출된 워크시트 및 첨부파일(제목, 썸네일, URL 포함), Drive 또는 YouTube와 같은 적절한 API와 함께 사용할 수 있는 식별자
  • 단답형 질문 또는 객관식 질문에 대한 답변입니다.

수업 과제 및 학생 제출물 관리에 대한 자세한 내용은 수업 과제 관리를 참조하세요.

클래스룸 부가기능

부가기능은 일반적으로 iframe에 표시되는 파트너가 제공하는 UI 및 백엔드입니다. 부가기능은 게시물에 첨부파일로 표시되며 Announcements, CourseWork, CourseWorkMaterials일 수 있습니다.

부가기능 첨부파일은 활동 또는 콘텐츠일 수 있습니다.

  • 활동 첨부파일을 사용하려면 학생이 개별 제출을 완료하여 제출해야 합니다. 퀴즈, 그림, 게임 등을 예로 들 수 있습니다. 활동 제출은 선택적으로 채점할 수 있습니다.
  • 콘텐츠 첨부파일은 학생이 제출하지 않아도 됩니다. 학생은 첨부파일을 제출할 필요가 없으며 채점되지 않습니다. 사진, 기사, 동영상을 예로 들 수 있습니다.

자세한 내용은 부가기능 개발 가이드를 참고하세요.

빠른 시작

환경을 설정하고 API를 바로 시작하려면 빠른 시작 중 하나를 사용해 보세요.

Google API 탐색기로 실험

실시간 데이터에서 메서드 호출을 실험하려면 Google API 탐색기를 사용해 보세요. 코드를 작성하지 않아도 시작할 수 있지만, API 탐색기를 사용하여 실행하는 작업은 기존 데이터를 수정할 수 있다는 점에 유의하세요.

메서드 호출을 시작하는 한 가지 방법은 courses.list() 메서드를 호출하는 것입니다. 이 메서드에는 요청 매개변수가 필요하지 않으며, 반환된 과정 목록에서 id를 검색하여 다른 API 호출의 요청 매개변수로 사용할 수 있습니다. 과정이 없는 경우 courses.create() 메서드를 사용하여 과정을 만들 수 있습니다.

API 참조도 살펴볼 수 있습니다.