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),

  "assignmentSubmission": {
    object (AssignmentSubmission)
  },
  "shortAnswerSubmission": {
    object (ShortAnswerSubmission)
  },
  "multipleChoiceSubmission": {
    object (MultipleChoiceSubmission)
  }
}
欄位
courseId

string

課程 ID。

唯讀。

courseWorkId

string

對應的課程作業 ID。

唯讀。

id

string

Classroom 指派的學生作業 ID。在相關課程作業的提交內容中,這個 ID 不得重複。

唯讀。

userId

string

擁有這份作業的學生 ID。

唯讀。

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 代表目前有效的評分量表,如果老師刪除並重新建立評分量表,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

這份學生作業是否與提出要求的 Play 管理中心專案相關聯。

詳情請參閱 courseWork.create。

唯讀。

submissionHistory[]

object (SubmissionHistory)

作業提交記錄 (包括狀態和成績記錄)。

唯讀。

previewVersion

enum (PreviewVersion)

僅供輸出。API 的預先發布版。您必須設定這個值,才能存取預先發布版計畫中提供給開發人員的新 API 功能。

提交內容。具體類型取決於 course_work_type 的值。以下是互斥欄位清單。回應中最多會設定下列其中一個欄位:
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)

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

只有在要求者有權存取時,系統才會填入部分附件中繼資料。系統一律會提供 ID 和 alternateLink 欄位,但可能不會提供其他欄位 (例如標題)。

附件

附件已新增至學生指派的作業。

建立附件時,不支援設定 form 欄位。

JSON 表示法
{

  "driveFile": {
    object (DriveFile)
  },
  "youTubeVideo": {
    object (YouTubeVideo)
  },
  "link": {
    object (Link)
  },
  "form": {
    object (Form)
  }
}
欄位
附件資料。以下是互斥欄位清單。回應中最多會設定下列其中一個欄位:
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 表示法
{

  "stateHistory": {
    object (StateHistory)
  },
  "gradeHistory": {
    object (GradeHistory)
  }
}
欄位
SubmissionHistory 的類型,可以是 StateHistory 或 GradeHistory。以下是互斥欄位清單。回應中最多會設定下列其中一個欄位:
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

繳交學生提交的內容。