REST Resource: courses.courseWork.studentSubmissions

资源:StudentSubmission

学生提交的课程作业。

创建 CourseWork 项时会生成 StudentSubmission 项。

从未被访问过的学生提交内容(即 state = NEW)可能没有创建时间或更新时间。

JSON 表示法
{
  "courseId": string,
  "courseWorkId": string,
  "id": string,
  "userId": string,
  "creationTime": string,
  "updateTime": string,
  "state": enum (SubmissionState),
  "late": boolean,
  "draftGrade": number,
  "assignedGrade": number,
  "rubricId": string,
  "draftRubricGrades": {
    string: {
      object (RubricGrade)
    },
    ...
  },
  "assignedRubricGrades": {
    string: {
      object (RubricGrade)
    },
    ...
  },
  "alternateLink": string,
  "courseWorkType": enum (CourseWorkType),
  "associatedWithDeveloper": boolean,
  "submissionHistory": [
    {
      object (SubmissionHistory)
    }
  ],
  "previewVersion": enum (PreviewVersion),

  // Union field content can be only one of the following:
  "assignmentSubmission": {
    object (AssignmentSubmission)
  },
  "shortAnswerSubmission": {
    object (ShortAnswerSubmission)
  },
  "multipleChoiceSubmission": {
    object (MultipleChoiceSubmission)
  }
  // End of list of possible types for union field content.
}
字段
courseId

string

课程的标识符。

只读。

courseWorkId

string

相应课程作业的标识符。

只读。

id

string

Google 课堂为学生提交的内容分配的标识符。此 ID 在相关课程作业的提交内容中是唯一的。

只读。

userId

string

拥有相应提交内容的学生的标识符。

只读。

creationTime

string (Timestamp format)

相应提交的创建时间。如果学生尚未访问相应内容,则此字段可能未设置。

只读。

采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

相应提交的上次更新时间。如果学生尚未访问相应内容,则此字段可能未设置。

只读。

采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

state

enum (SubmissionState)

相应提交的状态。

只读。

late

boolean

相应提交是否迟交。

只读。

draftGrade

number

可选的待定成绩。如果未设置,则表示未设置成绩。此值必须为非负值。允许使用小数(即非整数)值,但会四舍五入为两位小数。

只有课程教师才能看到和修改此信息。

assignedGrade

number

可选的年级。如果未设置,则表示未设置成绩。此值必须为非负值。允许使用小数(即非整数)值,但会四舍五入为两位小数。

只有课程教师可以修改此设置。

rubricId

string

仅限输出。当前附加到相应课程作业并用于评定相应学生提交的作业的评分标准的标识符。

如果没有评分标准,则此 ID 为空。此 ID 反映的是当前有效的评分标准;如果教师删除并重新创建评分标准,此 ID 会发生变化。

只读。

draftRubricGrades

map (key: string, value: object (RubricGrade))

根据评分准则的标准,待评的评分准则分数。

如果此课程作业未附加任何评分准则,或者附加了评分准则,但未针对任何评分标准设置分数,则此映射为空。只有在设置了成绩的情况下,才会填充相应条目。键:评分标准的条件 ID。

只读。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

assignedRubricGrades

map (key: string, value: object (RubricGrade))

根据评分准则的标准分配评分准则等级。

如果此课程作业未附加任何评分准则,或者附加了评分准则,但未对任何评分标准设置分数,则此映射为空。只有在设置了成绩的情况下,才会填充相应条目。键:评分标准的条件 ID。

只读。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

courseWorkType

enum (CourseWorkType)

相应提交内容所针对的课程作业类型。

只读。

associatedWithDeveloper

boolean

相应学生提交内容是否与发出请求的开发者控制台项目相关联。

如需了解详情,请参阅 courseWork.create

只读。

submissionHistory[]

object (SubmissionHistory)

提交的历史记录(包括状态和成绩历史记录)。

只读。

previewVersion

enum (PreviewVersion)

仅限输出。API 的预览版。必须设置此标志,才能访问预览版计划中向开发者提供的新 API 功能。

联合字段 content。提交的内容。具体类型取决于 course_work_type 的值。content 只能是下列其中一项:
assignmentSubmission

object (AssignmentSubmission)

当 courseWorkType 为 ASSIGNMENT 时,提交的内容。

学生可以使用 studentSubmissions.modifyAttachments 修改此内容。

shortAnswerSubmission

object (ShortAnswerSubmission)

当 courseWorkType 为 SHORT_ANSWER_QUESTION 时的提交内容。

multipleChoiceSubmission

object (MultipleChoiceSubmission)

当 courseWorkType 为 MULTIPLE_CHOICE_QUESTION 时的提交内容。

RubricGrade

为学生提交的内容设置的细则评分。每个评分标准最多只能有一个条目。

JSON 表示法
{
  "criterionId": string,
  "levelId": string,
  "points": number
}
字段
criterionId

string

可选。条件 ID。

levelId

string

可选。所选级别的可选级别 ID。如果为空,则表示未选择任何级别。

points

number

可选。为此标准分配的可选分数,通常基于等级。级别可能包含积分,也可能不包含。如果未设置,则表示未为此条件设置任何分数。

AssignmentSubmission

作业的学生作品。

JSON 表示法
{
  "attachments": [
    {
      object (Attachment)
    }
  ]
}
字段
attachments[]

object (Attachment)

学生添加的附件。如果学生尚未在 Google 课堂中访问作业,则与共享模式为 STUDENT_COPY 的资料对应的云端硬盘文件可能尚不存在。

仅当请求用户有权访问某些附件元数据时,系统才会填充这些元数据。标识符和 alternateLink 字段始终可用,但其他字段(例如 title)可能不可用。

附件

已添加到学生作业中的附件。

创建附件时,不支持设置 form 字段。

JSON 表示法
{

  // Union field attachment 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 attachment.
}
字段
联合字段 attachment。附件数据。attachment 只能是下列其中一项:
driveFile

object (DriveFile)

Google 云端硬盘文件附件。

youTubeVideo

object (YouTubeVideo)

YouTube 视频附件。

form

object (Form)

Google 表单附件。

ShortAnswerSubmission

学生针对简答题提交的作业。

JSON 表示法
{
  "answer": string
}
字段
answer

string

学生对简答题的回答。

MultipleChoiceSubmission

学生针对选择题提交的作业。

JSON 表示法
{
  "answer": string
}
字段
answer

string

学生自行选择。

SubmissionHistory

提交历史记录。目前包括状态和年级历史记录。

JSON 表示法
{

  // Union field type can be only one of the following:
  "stateHistory": {
    object (StateHistory)
  },
  "gradeHistory": {
    object (GradeHistory)
  }
  // End of list of possible types for union field type.
}
字段
联合字段 type。提交历史记录的类型,可以是 StateHistory 或 GradeHistory。type 只能是下列其中一项:
stateHistory

object (StateHistory)

提交的状态历史记录信息(如果有)。

gradeHistory

object (GradeHistory)

提交内容的成绩历史记录信息(如果有)。

StateHistory

相应提交内容所经历的每种状态的历史记录。

JSON 表示法
{
  "state": enum (State),
  "stateTimestamp": string,
  "actorUserId": string
}
字段
state

enum (State)

工作流流水线阶段。

stateTimestamp

string (Timestamp format)

提交进入此状态的时间。

采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

actorUserId

string

做出更改的教师或学生。

提交内容可能处于的状态。

枚举
STATE_UNSPECIFIED 未指定状态。此值不应返回。
CREATED 提交已创建。
TURNED_IN 学生已上交分配的文档,该文档可能是模板,也可能不是。
RETURNED 教师已将布置的文档发回给学生。
RECLAIMED_BY_STUDENT 学生提交了布置的文档,然后选择“取消提交”作业,从而重新获得所有者身份的控制权。
STUDENT_EDITED_AFTER_TURN_IN 学生在上交作业后对其进行了修改。目前,仅在学生修改回答时由“问题”功能使用。

GradeHistory

相应提交内容的每次成绩的历史记录。

JSON 表示法
{
  "pointsEarned": number,
  "maxPoints": number,
  "gradeTimestamp": string,
  "actorUserId": string,
  "gradeChangeType": enum (GradeChangeType)
}
字段
pointsEarned

number

提交作业的成绩历史记录中,相应时间点的成绩的分子。

maxPoints

number

提交成绩历史记录中相应时间点的成绩分母。

gradeTimestamp

string (Timestamp format)

提交的成绩发生更改时。

采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

actorUserId

string

做出成绩更改的教师。

gradeChangeType

enum (GradeChangeType)

提交作业成绩历史记录中相应时间的成绩更改类型。

GradeChangeType

可能的成绩更改类型。

枚举
UNKNOWN_GRADE_CHANGE_TYPE 未指定成绩更改类型。此值不应返回。
DRAFT_GRADE_POINTS_EARNED_CHANGE 草稿成绩的分子发生变化。
ASSIGNED_GRADE_POINTS_EARNED_CHANGE 分配的成绩的分子发生变化。
MAX_POINTS_CHANGE 成绩分母发生变化。

方法

get

返回学生提交的内容。

list

返回请求者有权查看的学生提交内容列表,并考虑了请求的 OAuth 范围。

modifyAttachments

修改学生提交内容的附件。

patch

更新学生提交内容的一个或多个字段。

reclaim

代表学生收回学生提交的作业。

return

返回学生提交的内容。

turnIn

提交学生提交的内容。