开发者可以使用 Google 课堂 API 与 Google 课堂中的课程作业进行互动。以这种方式使用 API 的应用称为 CourseWork 集成 。
此集成路径通常用于创建和评分作业,并提供指向 Google 课堂外部资源的链接。与 Google 课堂分享按钮相比,此路径为开发者提供了更多 课程作业管理权限。
运作方式
CourseWork 集成的核心功能是使用 Google 课堂 API 创建和管理作业、公告和课程资料。
以下是 CourseWork 集成支持的常见用户流程示例:允许教师在您的网站或应用中发现、布置和评分内容:
- 教师用户登录您的网站。
- 教师找到或创建想要与班级分享的内容。教师点击您网站上的按钮,将此内容发送到 Google 课堂。
- 您的应用向
courses.courseWork.create发出请求。该请求的正文中包含一个CourseWork对象,其中包含:- 目标课程 ID。
- 作业的标题。
- 作业的文字说明。
- 一个
linkMaterial,其中包含教师选择的内容的网址。 - (可选)所选内容可获得的分数上限。
- Google 课堂中会显示一个新作业,其中包含链接附件。
该链接指向
create请求中指定的网址。如需查看示例,请参阅图 1。 - Google 课堂成绩册中也会显示一个新作业列,其中包含分数上限(如果已提供)。
- 学生收到作业后,点击
link Material以在新标签页中打开提供的网址,并在您的网站上查看或完成内容。 (可选)提供控件,供学生上交作业。 - (可选)向
courses.courseWork.studentSubmissions.modifyAttachments发出请求,以向学生提交的内容添加 附件,例如 Google 云端硬盘文件或link Material,该文件指向学生在您网站上完成的作业。 - (可选)向
courses.courseWork.studentSubmissions.patch发出请求,以设置学生的成绩 作业。

图 1. 教师在编辑由 CourseWork 集成创建的 link Material 作业时的视图。
或者,您可以调用 courses.announcements.create 或
courses.courseWorkMaterials.create 来创建公告或课程
资料,而不是作业。如需详细了解相关的
Google 课堂 API 操作,请参阅创建和管理课程作业以及设置
和更新成绩页面。
注意事项
在决定 CourseWork 集成是否适合您的产品需求之前,请注意以下事项。
- 您需要授权用户并提示用户同意。您是 代表用户发出 API 请求。这意味着,例如,您无法在 任何 Google 课堂课程中创建课程作业;您只能在已获授权的用户教授的课程中创建课程作业。
- 您需要提供一种方式,让用户选择接收内容的课程。
考虑使用
courses.list获取用户教授的课程列表,然后允许用户从列表中选择一门或多门课程。 - 当用户点击 Google 课堂中的
link Material时,链接会在新标签页中打开。当网址打开时,您的服务器不会收到来自 Google 课堂的任何信息。 - 教师可以独立于开发者修改或删除课程作业。这意味着,开发者对课程作业的了解可能会过时。如果您需要了解课程作业的更改, 请考虑为课程作业更改设置推送通知。
- 教师可以在 Google 课堂界面中创建课程作业,并粘贴指向您网站上网址的链接。以这种方式创建的课程作业完全归教师所有,因此您无法使用 Google 课堂 API 查看、修改或设置提交成绩。