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)

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

唯讀。

使用 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

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

詳情請參閱 courseWork.create

唯讀。

assigneeMode

enum (AssigneeMode)

課程作業的受讓人模式。如未指定,則預設值為 ALL_STUDENTS

individualStudentsOptions

object (IndividualStudentsOptions)

可存取課程作業的學生 ID。只有在 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 時,才會填入這個欄位。如果是寫入作業,使用 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

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