REST Resource: courses.courseWork

資源:CourseWork

老師為課程學生建立的課程作業。

JSON 表示法
{
  "courseId": string,
  "id": string,
  "title": string,
  "description": string,
  "materials": [
    {
      object (Material)
    }
  ],
  "state": enum (CourseWorkState),
  "alternateLink": string,
  "creationTime": string,
  "updateTime": string,
  "dueDate": {
    object (Date)
  },
  "dueTime": {
    object (TimeOfDay)
  },
  "scheduledTime": string,
  "maxPoints": number,
  "workType": enum (CourseWorkType),
  "associatedWithDeveloper": boolean,
  "assigneeMode": enum (AssigneeMode),
  "individualStudentsOptions": {
    object (IndividualStudentsOptions)
  },
  "submissionModificationMode": enum (SubmissionModificationMode),
  "creatorUserId": string,
  "topicId": string,
  "gradeCategory": {
    object (GradeCategory)
  },
  "previewVersion": enum (PreviewVersion),
  "learningGoals": [
    {
      object (LearningGoal)
    }
  ],

  "assignment": {
    object (Assignment)
  },
  "multipleChoiceQuestion": {
    object (MultipleChoiceQuestion)
  }
  "gradingPeriodId": string
}
欄位
courseId

string

課程 ID。

唯讀。

id

string

Classroom 指派給這項課程作業的 ID,每門課程不重複。

唯讀。

title

string

這項課程作業的名稱。標題必須是有效的 UTF-8 字串,長度介於 1 至 3000 個半形字元之間。

description

string

這項課程作業的說明 (選填)。如要設定,說明必須是有效的 UTF-8 字串,且長度不得超過 30,000 個字元。

materials[]

object (Material)

其他教材。

課程作業的教材項目不得超過 20 個。

state

enum (CourseWorkState)

這項課程作業的狀態。如未指定,預設狀態為 DRAFT。

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"。

dueDate

object (Date)

這項課程作業的繳交截止日期 (選填,世界標準時間)。如果指定 dueTime,則必須指定這個值。

dueTime

object (TimeOfDay)

這項課程作業的繳交截止時間 (選用),以世界標準時間表示。如果指定 dueDate,則必須指定這個值。

scheduledTime

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"。

maxPoints

number

這項課程作業的最高分數。如果設為零或未指定,系統會將這項作業視為未評分。這個值必須是非負整數。

workType

enum (CourseWorkType)

這項課程作業的類型。

類型是在建立課程作業時設定,無法變更。

associatedWithDeveloper

boolean

這項課程作業項目是否與提出要求的 Developer Console 專案相關聯。

詳情請參閱 courseWork.create。

唯讀。

assigneeMode

enum (AssigneeMode)

課程作業的指派對象模式。如未指定,預設值為 ALL_STUDENTS。

individualStudentsOptions

object (IndividualStudentsOptions)

可存取課程作業的學生 ID。只有在 assigneeMode 為 INDIVIDUAL_STUDENTS 時,系統才會設定這個欄位。如果 assigneeMode 為 INDIVIDUAL_STUDENTS,則只有這個欄位中指定的學生會獲派課程作業。

submissionModificationMode

enum (SubmissionModificationMode)

這項設定可決定學生何時能修改提交內容。如未指定,則預設值為 MODIFIABLE_UNTIL_TURNED_IN。

creatorUserId

string

建立課程作業的使用者 ID。

唯讀。

topicId

string

與這項課程作業相關聯的主題 ID。必須與課程中的現有主題相符。

gradeCategory

object (GradeCategory)

這項課程作業的成績所屬類別。只有在為課程作業選擇類別時,才會顯示。可能用於計算總成績。

唯讀。

previewVersion

enum (PreviewVersion)

僅供輸出。用於擷取這項資源的 API 預先發布版。

learningGoals[]

object (LearningGoal)

(選用步驟)

這項課程作業附加的所有學習目標參照。課程作業最多可有 10 個學習目標。只有在設定適當的 previewVersion 時,系統才會填入這個欄位。

特定類型課程作業的其他詳細資料。以下是互斥欄位清單。回應中最多會設定下列其中一個欄位:
assignment

object (Assignment)

作業詳細資料。只有在 workType 為 ASSIGNMENT 時,系統才會填入這個欄位。

唯讀。

multipleChoiceQuestion

object (MultipleChoiceQuestion)

選擇題詳細資料。如果是讀取作業,只有在 workType 為 MULTIPLE_CHOICE_QUESTION 時,系統才會填入這個欄位。如果是寫入作業,建立 workType 為 MULTIPLE_CHOICE_QUESTION 的課程作業時,必須指定這個欄位,否則不得設定。

互斥欄位結束。
gradingPeriodId

string

與課程作業相關聯的評分週期 ID。

  • 建立時,如未指定,系統會根據 dueDate 設定評分週期 ID (如未設定 dueDate,則為 scheduledTime)。
  • 如要表示不與任何評分週期建立關聯,請將這個欄位設為空白字串 ("")。
  • 如果指定,則必須與課程中現有的評分週期 ID 相符。

CourseWorkState

課程作業的可能狀態。

列舉
COURSE_WORK_STATE_UNSPECIFIED 未指定狀態。這項資訊不會傳回。
PUBLISHED 已發布工作的狀態。這是預設狀態。
DRAFT 尚未發布的作業狀態。只有課程老師和網域管理員可以查看這個狀態的作業。
DELETED 已發布但現已刪除的作業狀態。只有課程老師和網域管理員可以查看處於這個狀態的作業。處於這個狀態的工作會在一段時間後刪除。

SubmissionModificationMode

學生提交內容的可能修改模式。

列舉
SUBMISSION_MODIFICATION_MODE_UNSPECIFIED 未指定修改模式。這項資訊不會傳回。
MODIFIABLE_UNTIL_TURNED_IN 提交前可以修改。
MODIFIABLE 你隨時可以修改提交內容。

指派項目

作業的其他詳細資料。

JSON 表示法
{
  "studentWorkFolder": {
    object (DriveFolder)
  }
}
欄位
studentWorkFolder

object (DriveFolder)

學生提交的附件會存放在這個雲端硬碟資料夾。只有課程老師和管理員會看到這項資訊。

MultipleChoiceQuestion

選擇題的其他詳細資料。

JSON 表示法
{
  "choices": [
    string
  ]
}
欄位
choices[]

string

可能選項。

方法

create

建立課程作業。

delete

刪除課程作業。

get

傳回課程作業。

getAddOnContext

取得特定貼文中的 Classroom 外掛程式中繼資料。

list

傳回要求者有權查看的課程作業清單。

modifyAssignees

修改課程作業的指派對象模式和選項。

patch

更新課程作業的一或多個欄位。