REST Resource: courses.courseWork.studentSubmissions

資源:學生提交內容

學生繳交課程作業。

建立 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

此學生提交的內容是否與提出要求的 Developer Console 專案相關聯。

詳情請參閱 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

選用設定。條件編號。

levelId

string

選用設定。所選層級的選填等級 ID。如果空白,表示未選取任何等級。

points

number

選用設定。這項工作的選用分數,通常根據等級。等級不一定會獲得點數。如未設定,則尚未針對此條件設定任何分數。

AssignmentSubmission

學生完成作業的作業。

JSON 表示法
{
  "attachments": [
    {
      object (Attachment)
    }
  ]
}
欄位
attachments[]

object (Attachment)

學生新增的附件。如果學生尚未在 Classroom 中存取作業,那麼與共用模式為 STUDENT_COPY 的教材對應的雲端硬碟檔案可能還不存在。

只有在要求的使用者俱備相關存取權時,系統才會填入某些附件中繼資料。「ID」和「AlternativeLink」欄位均可供使用,但填寫其他欄位 (例如標題) 則不行。

附件

已將附件新增至學生的作業中。

建立附件時,不支援設定 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

學生繳交的作業。