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

  // Union field details can be only one of the following:
  "assignment": {
    object (Assignment)
  },
  "multipleChoiceQuestion": {
    object (MultipleChoiceQuestion)
  }
  // End of list of possible types for union field details.
  "gradingPeriodId": string
}
欄位
courseId

string

課程的 ID。

唯讀。

id

string

Classroom 指派給此課程作業的 ID,每門課程皆不相同。

唯讀。

title

string

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

description

string

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

materials[]

object (Material)

其他材料。

CourseWork 最多只能包含 20 個教材項目。

state

enum (CourseWorkState)

本課程作業的狀態。如果未指定,則預設狀態為 DRAFT

creationTime

string (Timestamp format)

建立此課程作業的時間戳記。

唯讀。

採用 RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位,最多九個小數位數。例如 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

此課程作業最近一次變更的時間戳記。

唯讀。

採用 RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位,最多九個小數位數。例如 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

dueDate

object (Date)

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

dueTime

object (TimeOfDay)

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

scheduledTime

string (Timestamp format)

這個課程作業的發布時間戳記 (選填)。

採用 RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位,最多九個小數位數。例如 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

maxPoints

number

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

workType

enum (CourseWorkType)

此課程作業的類型。

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

associatedWithDeveloper

boolean

這個課程作業項目是否與提出要求的開發人員工作台專案相關聯。

詳情請參閱 courseWork.create

唯讀。

assigneeMode

enum (AssigneeMode)

課程的指定者模式。如未指定,則預設值為 ALL_STUDENTS

individualStudentsOptions

object (IndividualStudentsOptions)

可存取課程的學生身分識別碼。只有在 assigneeModeINDIVIDUAL_STUDENTS 時,才會設定此欄位。如果 assigneeModeINDIVIDUAL_STUDENTS,則只有在這個欄位中指定的學生會獲得課程作業。

submissionModificationMode

enum (SubmissionModificationMode)

設定可決定學生何時可以修改繳交作業。如未指定,則預設值為 MODIFIABLE_UNTIL_TURNED_IN

creatorUserId

string

建立課程的使用者 ID。

唯讀。

topicId

string

與此課程相關的主題 ID。必須與課程中現有的主題相符。

gradeCategory

object (GradeCategory)

這個課程成績所屬的類別。只有在課程已選擇類別時才會顯示。可用於計算整體成績。

唯讀。

previewVersion

enum (PreviewVersion)

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

聯集欄位 details。特定課程作業類型的其他詳細資料。details 只能是下列其中一項:
assignment

object (Assignment)

作業詳細資料。只有在 workTypeASSIGNMENT 時,才會填入這個值。

唯讀。

multipleChoiceQuestion

object (MultipleChoiceQuestion)

選擇題詳細資料。對於讀取作業,只有在 workTypeMULTIPLE_CHOICE_QUESTION 時,系統才會填入這個欄位。對於寫入作業,在建立課程作業時,如果 workTypeMULTIPLE_CHOICE_QUESTION,則必須指定這個欄位,否則請勿設定。

gradingPeriodId

string

與課程相關聯的評分期間 ID。

  • 如果未指定,系統會根據 dueDate 設定評分期間 ID (如未設定 dueDate,則會使用 scheduledTime)。
  • 如要表示與任何評分期間都沒有關聯,請將這個欄位設為空白字串 ("")。
  • 如果指定了評分期間 ID,則該 ID 必須與課程中現有的評分期間 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

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