REST Resource: courses

资源:课程

Google 课堂中的课程。

JSON 表示法
{
  "id": string,
  "name": string,
  "section": string,
  "descriptionHeading": string,
  "description": string,
  "room": string,
  "ownerId": string,
  "creationTime": string,
  "updateTime": string,
  "enrollmentCode": string,
  "courseState": enum (CourseState),
  "alternateLink": string,
  "teacherGroupEmail": string,
  "courseGroupEmail": string,
  "teacherFolder": {
    object (DriveFolder)
  },
  "courseMaterialSets": [
    {
      object (CourseMaterialSet)
    }
  ],
  "guardiansEnabled": boolean,
  "calendarId": string,
  "gradebookSettings": {
    object (GradebookSettings)
  }
}
字段
id

string

Google 课堂分配给此课程的标识符。

creating a course 时,您可以选择在请求中将此标识符设置为 alias string,以创建相应的别名。id 仍由 Google 课堂分配,在课程创建后无法更新。

在课程更新掩码中指定此字段会导致错误。

name

string

课程的名称。例如,“10 年级生物学”。名称为必填字段。长度必须介于 1 到 750 个字符之间,并且是一个有效的 UTF-8 字符串。

section

string

课程的部分。例如“第 2 学期”。如果设置,此字段必须是有效的 UTF-8 字符串,且不得超过 2800 个字符。

descriptionHeading

string

说明的可选标题。例如,“欢迎学习 10 年级生物学”。如果设置,此字段必须是有效的 UTF-8 字符串,且不得超过 3600 个字符。

description

string

可选说明。例如,“我们将通过教科书、客座讲座和实验课程综合学习生物的结构。期待您满意!”如果设置,此字段必须是有效的 UTF-8 字符串,且不得超过 3 万个字符。

room

string

可选的房间位置。例如“301”。如果设置,此字段必须是有效的 UTF-8 字符串,且长度不得超过 650 个字符。

ownerId

string

课程所有者的标识符。

将此字段指定为 create course request 的参数时,此字段为必填字段。标识符可以是以下各项之一:

  • 用户的数字标识符
  • 用户的电子邮件地址
  • 字符串字面量 "me",表示请求用户

此值必须在创建请求中设置。管理员还可以在 patch course request 中指定此字段以转让所有权。在其他上下文中,它是只读的。

creationTime

string (Timestamp format)

课程的创建时间。在课程更新掩码中指定此字段会导致错误。

只读。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

此课程的最新更新时间。在课程更新掩码中指定此字段会导致错误。

只读。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

enrollmentCode

string

加入此课程时使用的注册代码。在课程更新掩码中指定此字段会导致错误。

只读。

courseState

enum (CourseState)

课程的状态。如果未指定,则默认状态为 PROVISIONED

teacherGroupEmail

string

包含该课程所有教师的 Google 群组的电子邮件地址。此群组不接受电子邮件,只能用于权限。

只读。

courseGroupEmail

string

包含课程所有成员的 Google 群组的电子邮件地址。此群组不接受电子邮件,只能用于权限。

只读。

teacherFolder

object (DriveFolder)

与课程的所有教师共享的云端硬盘文件夹的相关信息。

只有课程教师和网域管理员才能设置此字段。

只读。

courseMaterialSets[]
(deprecated)

object (CourseMaterialSet)

此课程“简介”页面上显示的材料集。

只读。

guardiansEnabled

boolean

是否已为此课程启用家长通知。

只读。

calendarId

string

一个日历的 Google 日历 ID。所有课程成员都可以看到该日历,Google 课堂会向其中添加课业和课程通知活动。

当课程首次设为 CourseState.ACTIVE(在创建时或通过界面或 API 将其更新为 ACTIVE 时)时,系统会异步创建课程的日历。在创建流程完成之前,系统不会填充日历 ID。

只读。

gradebookSettings

object (GradebookSettings)

成绩册设置,用于指定如何计算学生的课程总体成绩以及向哪些人显示该成绩。

只读

CourseState

课程可能处于的状态。

枚举
COURSE_STATE_UNSPECIFIED 无课程状态。返回的任何课程消息都不会使用此值。
ACTIVE 课程处于有效状态。
ARCHIVED 此课程已归档。您无法对其进行修改,只能将其更改为其他状态。
PROVISIONED 课程已创建,但尚未激活。主讲教师和网域管理员可以访问此状态,他们可以修改此状态或将其更改为 ACTIVEDECLINED 状态。只有当课程处于 DECLINED 状态时,才能将其更改为 PROVISIONED
DECLINED 课程已创建,但遭拒。课程所有者和网域管理员可以访问该报告,但该报告不会显示在 Web 界面中。您无法修改课程,只能将其更改为 PROVISIONED 状态。只有当课程处于 PROVISIONED 状态时,才能将其更改为 DECLINED
SUSPENDED 该课程已暂停。您无法修改课程,并且只有 ownerId 标识的用户可以查看课程。如果课程可能违反了《服务条款》,可能会被置于此状态。

CourseMaterialSet

课程“简介”页面上显示的一组材料。这些材料可能包括课程大纲、时间表或与整个课程相关的其他背景信息。

JSON 表示法
{
  "title": string,
  "materials": [
    {
      object (CourseMaterial)
    }
  ]
}
字段
title

string

此套装的标题。

materials[]

object (CourseMaterial)

与此套装关联的资料。

CourseMaterial

作为材料集的一部分附加到课程的材料。

JSON 表示法
{

  // Union field material can be only one of the following:
  "driveFile": {
    object (DriveFile)
  },
  "youTubeVideo": {
    object (YouTubeVideo)
  },
  "link": {
    object (Link)
  },
  "form": {
    object (Form)
  }
  // End of list of possible types for union field material.
}
字段
联合字段 material。材料数据。material 只能是下列其中一项:
driveFile

object (DriveFile)

Google 云端硬盘文件附件。

youTubeVideo

object (YouTubeVideo)

YouTube 视频附件。

form

object (Form)

Google 表单附件。

GradebookSettings

课程的成绩册设置。如需了解详情,请参阅帮助中心文章

JSON 表示法
{
  "calculationType": enum (CalculationType),
  "displaySetting": enum (DisplaySetting),
  "gradeCategories": [
    {
      object (GradeCategory)
    }
  ]
}
字段
calculationType

enum (CalculationType)

指明总体成绩的计算方式。

displaySetting

enum (DisplaySetting)

指明哪些人可以查看总体成绩。

gradeCategories[]

object (GradeCategory)

课程中可用的课业成绩类别。

CalculationType

可能的总体成绩计算方法。

枚举
CALCULATION_TYPE_UNSPECIFIED 未指定方法。系统永远不会返回此值。
TOTAL_POINTS 总体成绩是成绩总和除以总分总和,不考虑类别。
WEIGHTED_CATEGORIES 总体成绩是按类别计算的加权平均值。

DisplaySetting

显示总体成绩的可能设置。

枚举
DISPLAY_SETTING_UNSPECIFIED 未指定任何设置。系统永远不会返回此值。
SHOW_OVERALL_GRADE 在成绩册和学生个人资料中向教师和学生显示总体成绩。
HIDE_OVERALL_GRADE 在成绩册或学生个人资料中不显示总体成绩。
SHOW_TEACHERS_ONLY 在成绩册和学生个人资料中向教师显示总体成绩。在学生个人资料中向学生隐藏。

方法

checkAddOnCreationEligibility
(deprecated)

返回用户是否有权在指定课程中创建插件附件。

checkGradingPeriodsSetupEligibility
(deprecated)

返回用户是否有权更新给定课程中的 GradingPeriodSettings。

create

创建课程。

delete

删除课程。

get

返回课程。

getGradingPeriodSettings

返回课程中的评分周期设置。

list

返回请求用户有权查看的课程列表,仅限与请求匹配的课程。

patch

更新课程中的一个或多个字段。

update

更新课程。

updateGradingPeriodSettings

更新课程的评分周期设置。