Google Classroom API

Google Classroom でクラス、名簿、招待状を管理します。

サービス: classroom.googleapis.com

このサービスを呼び出すには、Google が提供するクライアント ライブラリを使用することをおすすめします。アプリケーションで独自のライブラリを使用してこのサービスを呼び出す必要がある場合は、API リクエストの際に次の情報を使用してください。

ディスカバリ ドキュメント

ディスカバリ ドキュメントは、REST API を記述して使用するための機械可読仕様です。クライアント ライブラリ、IDE プラグイン、Google API と連携するその他のツールのビルドに使用されます。1 つのサービスで複数のディスカバリ ドキュメントを提供できます。このサービスには、次のディスカバリ ドキュメントが用意されています。

サービス エンドポイント

サービス エンドポイントは、API サービスのネットワーク アドレスを指定するベース URL です。1 つのサービスに複数のサービス エンドポイントが存在することもあります。このサービスには次のサービス エンドポイントがあり、以下のすべての URI がこのサービス エンドポイントに関連しています。

  • https://classroom.googleapis.com

REST リソース: v1.courses

メソッド
checkAddOnCreationEligibility
(deprecated)
GET /v1/courses/{courseId}:checkAddOnCreationEligibility
ユーザーが特定のコースでアドオンの添付ファイルを作成できるかどうかを返します。
checkGradingPeriodsSetupEligibility
(deprecated)
GET /v1/courses/{courseId}:checkGradingPeriodsSetupEligibility
ユーザーが特定のコースで GradingPeriodSettings を更新できるかどうかを返します。
create POST /v1/courses
コースを作成します。
delete DELETE /v1/courses/{id}
コースを削除します。
get GET /v1/courses/{id}
コースを返します。
getGradingPeriodSettings GET /v1/courses/{courseId}/gradingPeriodSettings
コースの採点期間の設定を返します。
list GET /v1/courses
リクエスト ユーザーが閲覧できるコースのリストを返します。リクエストに一致するコースに限定されます。
patch PATCH /v1/courses/{id}
コースの 1 つ以上のフィールドを更新します。
update PUT /v1/courses/{id}
コースを更新します。
updateGradingPeriodSettings PATCH /v1/courses/{courseId}/gradingPeriodSettings
コースの採点期間の設定を更新します。

REST リソース: v1.courses.aliases

メソッド
create POST /v1/courses/{courseId}/aliases
コースのエイリアスを作成します。
delete DELETE /v1/courses/{courseId}/aliases/{alias}
コースのエイリアスを削除します。
list GET /v1/courses/{courseId}/aliases
コースのエイリアスのリストを返します。

REST リソース: v1.courses.announcements

メソッド
create POST /v1/courses/{courseId}/announcements
お知らせを作成します。
delete DELETE /v1/courses/{courseId}/announcements/{id}
お知らせを削除します。
get GET /v1/courses/{courseId}/announcements/{id}
お知らせを返します。
getAddOnContext GET /v1/courses/{courseId}/announcements/{itemId}/addOnContext
特定の投稿のコンテキストで Classroom アドオンのメタデータを取得します。
list GET /v1/courses/{courseId}/announcements
リクエスト元が閲覧できるお知らせのリストを返します。
modifyAssignees POST /v1/courses/{courseId}/announcements/{id}:modifyAssignees
お知らせの割り当てモードとオプションを変更します。
patch PATCH /v1/courses/{courseId}/announcements/{id}
お知らせの 1 つ以上のフィールドを更新します。

REST リソース: v1.courses.announcements.addOnAttachments

メソッド
create POST /v1/courses/{courseId}/announcements/{itemId}/addOnAttachments
投稿の下にアドオンの添付ファイルを作成します。
delete DELETE /v1/courses/{courseId}/announcements/{itemId}/addOnAttachments/{attachmentId}
アドオンの添付ファイルを削除します。
get GET /v1/courses/{courseId}/announcements/{itemId}/addOnAttachments/{attachmentId}
アドオン添付ファイルを返します。
list GET /v1/courses/{courseId}/announcements/{itemId}/addOnAttachments
投稿の下にあるアドオンによって作成されたすべての添付ファイルを返します。
patch PATCH /v1/courses/{courseId}/announcements/{itemId}/addOnAttachments/{attachmentId}
アドオンのアタッチメントを更新します。

REST リソース: v1.courses.courseWork

メソッド
create POST /v1/courses/{courseId}/courseWork
コースの課題を作成します。
delete DELETE /v1/courses/{courseId}/courseWork/{id}
コースワークを削除します。
get GET /v1/courses/{courseId}/courseWork/{id}
コースの課題を返します。
getAddOnContext GET /v1/courses/{courseId}/courseWork/{itemId}/addOnContext
特定の投稿のコンテキストで Classroom アドオンのメタデータを取得します。
list GET /v1/courses/{courseId}/courseWork
リクエスト元が閲覧できる課題のリストを返します。
modifyAssignees POST /v1/courses/{courseId}/courseWork/{id}:modifyAssignees
コースワークの割り当てモードとオプションを変更します。
patch PATCH /v1/courses/{courseId}/courseWork/{id}
コースワークの 1 つ以上のフィールドを更新します。

REST リソース: v1.courses.courseWork.addOnAttachments

メソッド
create POST /v1/courses/{courseId}/courseWork/{itemId}/addOnAttachments
投稿の下にアドオンの添付ファイルを作成します。
delete DELETE /v1/courses/{courseId}/courseWork/{itemId}/addOnAttachments/{attachmentId}
アドオンの添付ファイルを削除します。
get GET /v1/courses/{courseId}/courseWork/{itemId}/addOnAttachments/{attachmentId}
アドオン添付ファイルを返します。
list GET /v1/courses/{courseId}/courseWork/{itemId}/addOnAttachments
投稿の下にあるアドオンによって作成されたすべての添付ファイルを返します。
patch PATCH /v1/courses/{courseId}/courseWork/{itemId}/addOnAttachments/{attachmentId}
アドオンのアタッチメントを更新します。

REST リソース: v1.courses.courseWork.addOnAttachments.studentSubmissions

メソッド
get GET /v1/courses/{courseId}/courseWork/{itemId}/addOnAttachments/{attachmentId}/studentSubmissions/{submissionId}
アドオンの添付ファイルの生徒の提出物を返します。
patch PATCH /v1/courses/{courseId}/courseWork/{itemId}/addOnAttachments/{attachmentId}/studentSubmissions/{submissionId}
アドオン添付ファイル提出物に関連付けられたデータを更新します。

REST リソース: v1.courses.courseWork.rubrics

メソッド
create POST /v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics
ルーブリックを作成します。
delete DELETE /v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}
ルーブリックを削除します。
get GET /v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}
ルーブリックを返します。
list GET /v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics
リクエスト元が閲覧できるルーブリックのリストを返します。
patch PATCH /v1/courses/{courseId}/courseWork/{courseWorkId}/rubrics/{id}
ルーブリックを更新します。

REST リソース: v1.courses.courseWork.studentSubmissions

メソッド
get GET /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}
生徒の提出物を返します。
list GET /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions
リクエストの OAuth スコープを考慮して、リクエスト元が閲覧できる生徒の提出物のリストを返します。
modifyAttachments POST /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments
生徒の提出物の添付ファイルを変更します。
patch PATCH /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}
生徒の提出物の 1 つ以上のフィールドを更新します。
reclaim POST /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim
所有している生徒に代わって生徒の提出物を取り戻します。
return POST /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return
生徒の提出物を返します。
turnIn POST /v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn
生徒の提出物を提出します。

REST リソース: v1.courses.courseWorkMaterials

メソッド
create POST /v1/courses/{courseId}/courseWorkMaterials
コースの教材を作成します。
delete DELETE /v1/courses/{courseId}/courseWorkMaterials/{id}
コースの教材を削除します。
get GET /v1/courses/{courseId}/courseWorkMaterials/{id}
コースの教材を返します。
getAddOnContext GET /v1/courses/{courseId}/courseWorkMaterials/{itemId}/addOnContext
特定の投稿のコンテキストで Classroom アドオンのメタデータを取得します。
list GET /v1/courses/{courseId}/courseWorkMaterials
リクエスト元が閲覧できる課題教材のリストを返します。
patch PATCH /v1/courses/{courseId}/courseWorkMaterials/{id}
コース教材の 1 つ以上のフィールドを更新します。

REST リソース: v1.courses.courseWorkMaterials.addOnAttachments

メソッド
create POST /v1/courses/{courseId}/courseWorkMaterials/{itemId}/addOnAttachments
投稿の下にアドオンの添付ファイルを作成します。
delete DELETE /v1/courses/{courseId}/courseWorkMaterials/{itemId}/addOnAttachments/{attachmentId}
アドオンの添付ファイルを削除します。
get GET /v1/courses/{courseId}/courseWorkMaterials/{itemId}/addOnAttachments/{attachmentId}
アドオン添付ファイルを返します。
list GET /v1/courses/{courseId}/courseWorkMaterials/{itemId}/addOnAttachments
投稿の下にあるアドオンによって作成されたすべての添付ファイルを返します。
patch PATCH /v1/courses/{courseId}/courseWorkMaterials/{itemId}/addOnAttachments/{attachmentId}
アドオンのアタッチメントを更新します。

REST リソース: v1.courses.posts

メソッド
getAddOnContext GET /v1/courses/{courseId}/posts/{postId}/addOnContext
特定の投稿のコンテキストで Classroom アドオンのメタデータを取得します。

REST リソース: v1.courses.posts.addOnAttachments

メソッド
create POST /v1/courses/{courseId}/posts/{postId}/addOnAttachments
投稿の下にアドオンの添付ファイルを作成します。
delete DELETE /v1/courses/{courseId}/posts/{postId}/addOnAttachments/{attachmentId}
アドオンの添付ファイルを削除します。
get GET /v1/courses/{courseId}/posts/{postId}/addOnAttachments/{attachmentId}
アドオン添付ファイルを返します。
list GET /v1/courses/{courseId}/posts/{postId}/addOnAttachments
投稿の下にあるアドオンによって作成されたすべての添付ファイルを返します。
patch PATCH /v1/courses/{courseId}/posts/{postId}/addOnAttachments/{attachmentId}
アドオンのアタッチメントを更新します。

REST リソース: v1.courses.posts.addOnAttachments.studentSubmissions

メソッド
get GET /v1/courses/{courseId}/posts/{postId}/addOnAttachments/{attachmentId}/studentSubmissions/{submissionId}
アドオンの添付ファイルの生徒の提出物を返します。
patch PATCH /v1/courses/{courseId}/posts/{postId}/addOnAttachments/{attachmentId}/studentSubmissions/{submissionId}
アドオン添付ファイル提出物に関連付けられたデータを更新します。

REST リソース: v1.courses.studentGroups

メソッド
create POST /v1/courses/{courseId}/studentGroups
コースの生徒グループを作成します。
delete DELETE /v1/courses/{courseId}/studentGroups/{id}
生徒グループを削除します。
list GET /v1/courses/{courseId}/studentGroups
コース内のグループのリストを返します。
patch PATCH /v1/courses/{courseId}/studentGroups/{id}
生徒グループの 1 つ以上のフィールドを更新します。

REST リソース: v1.courses.studentGroups.studentGroupMembers

メソッド
create POST /v1/courses/{courseId}/studentGroups/{studentGroupId}/studentGroupMembers
生徒グループの生徒グループ メンバーを作成します。
delete DELETE /v1/courses/{courseId}/studentGroups/{studentGroupId}/studentGroupMembers/{userId}
生徒グループのメンバーを削除します。
list GET /v1/courses/{courseId}/studentGroups/{studentGroupId}/studentGroupMembers
グループ内の生徒のリストを返します。

REST リソース: v1.courses.students

メソッド
create POST /v1/courses/{courseId}/students
ユーザーをコースの生徒として追加します。
delete DELETE /v1/courses/{courseId}/students/{userId}
コースの生徒を削除します。
get GET /v1/courses/{courseId}/students/{userId}
コースの生徒を返します。
list GET /v1/courses/{courseId}/students
リクエスト元が閲覧を許可されているこのコースの生徒のリストを返します。

REST リソース: v1.courses.teachers

メソッド
create POST /v1/courses/{courseId}/teachers
コースの教師を作成します。
delete DELETE /v1/courses/{courseId}/teachers/{userId}
指定されたコースから指定された教師を削除します。
get GET /v1/courses/{courseId}/teachers/{userId}
コースの教師を返します。
list GET /v1/courses/{courseId}/teachers
リクエスト元が閲覧を許可されているこのコースの教師のリストを返します。

REST リソース: v1.courses.topics

メソッド
create POST /v1/courses/{courseId}/topics
トピックを作成します。
delete DELETE /v1/courses/{courseId}/topics/{id}
トピックを削除します。
get GET /v1/courses/{courseId}/topics/{id}
トピックを返します。
list GET /v1/courses/{courseId}/topics
リクエスト元が閲覧できるトピックのリストを返します。
patch PATCH /v1/courses/{courseId}/topics/{id}
トピックの 1 つ以上のフィールドを更新します。

REST リソース: v1.invitations

メソッド
accept POST /v1/invitations/{id}:accept
招待を承諾し、招待を削除して、招待されたユーザーを指定されたコースの教師または生徒(該当する場合)に追加します。
create POST /v1/invitations
招待状を作成します。
delete DELETE /v1/invitations/{id}
招待を削除します。
get GET /v1/invitations/{id}
招待状を返します。
list GET /v1/invitations
リクエスト ユーザーが閲覧できる招待状のリストを返します。このリストは、リスト リクエストに一致する招待状に限定されます。

REST リソース: v1.registrations

メソッド
create POST /v1/registrations
Registration を作成します。これにより、Classroom は指定された feed から cloudPubSubTopic で指定された宛先への通知の送信を開始します。
delete DELETE /v1/registrations/{registrationId}
Registration を削除します。これにより、Classroom はその Registration の通知の送信を停止します。

REST リソース: v1.userProfiles

メソッド
checkUserCapability GET /v1/userProfiles/{userId}:checkUserCapability
ユーザーが指定された Classroom の機能を使用できるかどうかを返します。
get GET /v1/userProfiles/{userId}
ユーザー プロフィールを返します。

REST リソース: v1.userProfiles.guardianInvitations

メソッド
create POST /v1/userProfiles/{guardianInvitation.studentId}/guardianInvitations
保護者への招待状を作成し、生徒の保護者であることを確認するよう求めるメールを保護者に送信します。
get GET /v1/userProfiles/{studentId}/guardianInvitations/{invitationId}
特定の保護者の招待を返します。
list GET /v1/userProfiles/{studentId}/guardianInvitations
リクエスト元のユーザーが閲覧できる保護者招待状のリストを返します。このリストは、指定されたパラメータでフィルタされます。
patch PATCH /v1/userProfiles/{studentId}/guardianInvitations/{invitationId}
保護者の招待状を変更します。

REST リソース: v1.userProfiles.guardians

メソッド
delete DELETE /v1/userProfiles/{studentId}/guardians/{guardianId}
保護者を削除します。
get GET /v1/userProfiles/{studentId}/guardians/{guardianId}
特定の保護者を返します。
list GET /v1/userProfiles/{studentId}/guardians
リクエスト ユーザーが閲覧できる保護者のリストを返します。リクエストに一致する保護者に限定されます。