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

課程的 ID。

唯讀。

courseWorkId

string

對應課程作業的 ID。

唯讀。

id

string

Classroom 針對學生繳交的作業指派的 ID。這與相關課程作業的提交內容不得重複。

唯讀。

userId

string

擁有這項繳交作業的學生 ID。

唯讀。

creationTime

string (Timestamp format)

此提交內容的建立時間。如果學生尚未存取這個項目,可以取消設定。

唯讀。

RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

此提交內容的上次更新時間。如果學生尚未存取這個項目,可以取消設定。

唯讀。

RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

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)

classWorkType 為 ASSIGNMENT 時提交內容。

學生可以使用 studentSubmissions.modifyAttachments修改這項內容。

shortAnswerSubmission

object (ShortAnswerSubmission)

classWorkType 為 SHORT_ANSWER_QUESTION 時提交內容。

multipleChoiceSubmission

object (MultipleChoiceSubmission)

classWorkType 為 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)

學生新增的附件。如果學生還未在 Classroom 中存取作業,則可能目前沒有與共用模式為 STUDENT_COPY 的雲端硬碟檔案。

部分附件中繼資料只有在提出要求的使用者俱備存取權時,系統才會填入資料。「ID」和「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。SubmissionHistory 類型可以是 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)

提交內容進入這個狀態時。

RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

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)

繳交的作業成績發生變更時。

RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

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

學生繳交作業。