REST Resource: courses.courseWork.studentSubmissions

Tài nguyên: StudentSubmission

Bài nộp của học viên cho bài tập trong khoá học.

Các mục StudentSubmission được tạo khi một mục CourseWork được tạo.

Bài nộp của học viên chưa từng được truy cập (tức là có state = NEW) có thể không có thời gian tạo hoặc thời gian cập nhật.

Biểu diễn dưới dạng 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)
  }
}
Trường
courseId

string

Giá trị nhận dạng của khoá học.

Chỉ có thể đọc.

courseWorkId

string

Giá trị nhận dạng của bài tập trong khoá học tương ứng.

Chỉ có thể đọc.

id

string

Giá trị nhận dạng do Lớp học chỉ định cho bài tập đã nộp của học viên. Giá trị này là duy nhất trong số các bài nộp cho bài tập có liên quan trong khoá học.

Chỉ có thể đọc.

userId

string

Giá trị nhận dạng của học viên sở hữu bài tập đã nộp này.

Chỉ có thể đọc.

creationTime

string (Timestamp format)

Thời gian tạo nội dung gửi này. Trường này có thể không được đặt nếu học viên chưa truy cập vào mục này.

Chỉ có thể đọc.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Thời gian cập nhật gần đây nhất của nội dung gửi này. Trường này có thể không được đặt nếu học viên chưa truy cập vào mục này.

Chỉ có thể đọc.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

state

enum (SubmissionState)

Trạng thái của bài tập này.

Chỉ có thể đọc.

late

boolean

Cho biết bài tập này có bị nộp muộn hay không.

Chỉ có thể đọc.

draftGrade

number

Điểm đang chờ xử lý (không bắt buộc). Nếu không được đặt, thì tức là chưa có điểm nào được đặt. Giá trị này không được là số âm. Bạn có thể sử dụng giá trị thập phân (tức là không phải số nguyên), nhưng giá trị này sẽ được làm tròn đến hai chữ số thập phân.

Chỉ giáo viên của khoá học mới có thể xem và sửa đổi thông tin này.

assignedGrade

number

Lớp (không bắt buộc). Nếu không được đặt, thì tức là chưa có điểm nào được đặt. Giá trị này không được là số âm. Bạn có thể sử dụng giá trị thập phân (tức là không phải số nguyên), nhưng giá trị này sẽ được làm tròn đến hai chữ số thập phân.

Chỉ giáo viên của khoá học mới có thể sửa đổi thông tin này.

rubricId

string

Chỉ có đầu ra. Giá trị nhận dạng của tiêu chí chấm điểm hiện được đính kèm vào bài tập này trong khoá học và được dùng để chấm điểm bài nộp này của học viên.

Mã này sẽ trống nếu không có tiêu chí chấm điểm. Mã nhận dạng này phản ánh tiêu chí chấm điểm đang hoạt động; mã này sẽ thay đổi nếu giáo viên xoá và tạo lại tiêu chí chấm điểm.

Chỉ có thể đọc.

draftRubricGrades

map (key: string, value: object (RubricGrade))

Điểm tiêu chí chấm điểm đang chờ xử lý dựa trên tiêu chí của tiêu chí chấm điểm.

Bản đồ này sẽ trống nếu không có tiêu chí chấm điểm nào được đính kèm vào bài tập này trên lớp hoặc nếu có tiêu chí chấm điểm được đính kèm nhưng chưa có điểm nào được đặt cho bất kỳ tiêu chí nào. Mục nhập chỉ được điền sẵn cho những điểm đã được đặt. Khoá: Mã tiêu chí của tiêu chí chấm điểm.

Chỉ có thể đọc.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

assignedRubricGrades

map (key: string, value: object (RubricGrade))

Điểm tiêu chí chấm điểm được chỉ định dựa trên Tiêu chí của tiêu chí chấm điểm.

Bản đồ này sẽ trống nếu không có tiêu chí chấm điểm nào được đính kèm vào bài tập này trên lớp hoặc nếu có tiêu chí chấm điểm được đính kèm nhưng chưa có điểm nào được đặt cho bất kỳ Tiêu chí nào. Mục nhập chỉ được điền sẵn cho những điểm đã được đặt. Khoá: Mã tiêu chí của tiêu chí chấm điểm.

Chỉ có thể đọc.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

courseWorkType

enum (CourseWorkType)

Loại bài tập trong khoá học mà bài nộp này hướng đến.

Chỉ có thể đọc.

associatedWithDeveloper

boolean

Liệu bài nộp này của học viên có liên kết với dự án Developer Console đưa ra yêu cầu hay không.

Hãy xem courseWork.create để biết thêm chi tiết.

Chỉ có thể đọc.

submissionHistory[]

object (SubmissionHistory)

Nhật ký của bài nộp (bao gồm nhật ký trạng thái và điểm).

Chỉ có thể đọc.

previewVersion

enum (PreviewVersion)

Chỉ có đầu ra. Phiên bản xem trước của API. Bạn phải đặt giá trị này để truy cập vào các chức năng API mới được cung cấp cho nhà phát triển trong Chương trình xem trước.

Nội dung gửi. Loại cụ thể phụ thuộc vào giá trị của course_work_type. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi:
assignmentSubmission

object (AssignmentSubmission)

Nội dung bài nộp khi courseWorkType là ASSIGNMENT.

Học viên có thể sửa đổi nội dung này bằng studentSubmissions.modifyAttachments.

shortAnswerSubmission

object (ShortAnswerSubmission)

Nội dung bài nộp khi courseWorkType là SHORT_ANSWER_QUESTION.

multipleChoiceSubmission

object (MultipleChoiceSubmission)

Nội dung bài nộp khi courseWorkType là MULTIPLE_CHOICE_QUESTION.

Kết thúc các trường loại trừ lẫn nhau.

RubricGrade

Điểm theo tiêu chí chấm điểm được đặt cho bài nộp của học viên. Mỗi tiêu chí chấm điểm chỉ có tối đa một mục.

Biểu diễn dưới dạng JSON
{
  "criterionId": string,
  "levelId": string,
  "points": number
}
Trường
criterionId

string

Không bắt buộc. Mã tiêu chí.

levelId

string

Không bắt buộc. Mã cấp độ không bắt buộc của cấp độ đã chọn. Nếu trống, tức là chưa chọn cấp độ nào.

points

number

Không bắt buộc. Điểm không bắt buộc được chỉ định cho tiêu chí này, thường dựa trên cấp độ. Các cấp có thể có hoặc không có điểm. Nếu bạn không đặt, thì tiêu chí này sẽ không có điểm.

AssignmentSubmission

Bài tập của học viên cho một bài tập.

Biểu diễn dưới dạng JSON
{
  "attachments": [
    {
      object (Attachment)
    }
  ]
}
Trường
attachments[]

object (Attachment)

Tệp đính kèm do học viên thêm. Các tệp trên Drive tương ứng với tài liệu có chế độ chia sẻ là STUDENT_COPY có thể chưa tồn tại nếu học viên chưa truy cập vào bài tập trong Lớp học.

Một số siêu dữ liệu của tệp đính kèm chỉ được điền sẵn nếu người dùng yêu cầu có quyền truy cập vào siêu dữ liệu đó. Các trường giá trị nhận dạng và alternateLink luôn có sẵn, nhưng các trường khác (ví dụ: tiêu đề) có thể không có sẵn.

Tệp đính kèm

Đã thêm tệp đính kèm vào bài tập được giao của học viên.

Khi tạo tệp đính kèm, bạn không thể đặt trường form.

Biểu diễn dưới dạng JSON
{

  "driveFile": {
    object (DriveFile)
  },
  "youTubeVideo": {
    object (YouTubeVideo)
  },
  "link": {
    object (Link)
  },
  "form": {
    object (Form)
  }
}
Trường
Dữ liệu tệp đính kèm. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi:
driveFile

object (DriveFile)

Tệp đính kèm trên Google Drive.

youTubeVideo

object (YouTubeVideo)

Tệp đính kèm video trên YouTube.

form

object (Form)

Tệp đính kèm trên Google Biểu mẫu.

Kết thúc các trường loại trừ lẫn nhau.

ShortAnswerSubmission

Bài tập của học viên cho một câu hỏi trả lời ngắn.

Biểu diễn dưới dạng JSON
{
  "answer": string
}
Trường
answer

string

Câu trả lời của học viên cho một câu hỏi trả lời ngắn.

MultipleChoiceSubmission

Bài tập của học viên cho một câu hỏi trắc nghiệm.

Biểu diễn dưới dạng JSON
{
  "answer": string
}
Trường
answer

string

Lựa chọn của học viên.

SubmissionHistory

Nhật ký gửi. Thông tin này hiện bao gồm nhật ký về trạng thái và điểm số.

Biểu diễn dưới dạng JSON
{

  "stateHistory": {
    object (StateHistory)
  },
  "gradeHistory": {
    object (GradeHistory)
  }
}
Trường
Loại SubmissionHistory, có thể là một trong các loại StateHistory, GradeHistory. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi:
stateHistory

object (StateHistory)

Thông tin về nhật ký trạng thái của nội dung gửi, nếu có.

gradeHistory

object (GradeHistory)

Thông tin về nhật ký điểm của bài nộp (nếu có).

Kết thúc các trường loại trừ lẫn nhau.

StateHistory

Nhật ký của từng trạng thái mà nội dung gửi này đã trải qua.

Biểu diễn dưới dạng JSON
{
  "state": enum (State),
  "stateTimestamp": string,
  "actorUserId": string
}
Trường
state

enum (State)

Giai đoạn của quy trình công việc.

stateTimestamp

string (Timestamp format)

Thời điểm nội dung gửi chuyển sang trạng thái này.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

actorUserId

string

Giáo viên hoặc học viên đã thực hiện thay đổi.

Tiểu bang

Các trạng thái có thể có của một bài tập.

Enum
STATE_UNSPECIFIED Chưa chỉ định tiểu bang. Không bao giờ được trả về giá trị này.
CREATED Đã tạo nội dung gửi.
TURNED_IN Học viên đã nộp một tài liệu được giao, tài liệu này có thể là mẫu hoặc không.
RETURNED Giáo viên đã trả lại tài liệu được giao cho học viên.
RECLAIMED_BY_STUDENT Học viên đã nộp tài liệu được giao, sau đó chọn "huỷ nộp" bài tập, nhờ đó học viên có lại quyền kiểm soát với tư cách là chủ sở hữu.
STUDENT_EDITED_AFTER_TURN_IN Học viên đã chỉnh sửa bài nộp sau khi nộp bài. Hiện chỉ được dùng cho Câu hỏi, khi học viên chỉnh sửa câu trả lời của mình.

GradeHistory

Nhật ký của từng điểm trong bài nộp này.

Biểu diễn dưới dạng JSON
{
  "pointsEarned": number,
  "maxPoints": number,
  "gradeTimestamp": string,
  "actorUserId": string,
  "gradeChangeType": enum (GradeChangeType)
}
Trường
pointsEarned

number

Tử số của điểm tại thời điểm này trong nhật ký điểm của bài nộp.

maxPoints

number

Mẫu số của điểm tại thời điểm này trong nhật ký điểm của bài nộp.

gradeTimestamp

string (Timestamp format)

Thời điểm điểm của bài nộp thay đổi.

Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".

actorUserId

string

Giáo viên đã thay đổi điểm.

gradeChangeType

enum (GradeChangeType)

Loại thay đổi về điểm tại thời điểm này trong nhật ký điểm của bài nộp.

GradeChangeType

Các loại thay đổi có thể có đối với điểm.

Enum
UNKNOWN_GRADE_CHANGE_TYPE Chưa chỉ định loại thay đổi điểm. Không bao giờ được trả về giá trị này.
DRAFT_GRADE_POINTS_EARNED_CHANGE Sự thay đổi trong tử số của điểm nháp.
ASSIGNED_GRADE_POINTS_EARNED_CHANGE Sự thay đổi trong tử số của điểm được giao.
MAX_POINTS_CHANGE Sự thay đổi trong mẫu số của điểm.

Phương thức

get

Trả lại bài nộp của học viên.

list

Trả về danh sách bài nộp của học viên mà người yêu cầu được phép xem, có tính đến phạm vi OAuth của yêu cầu.

modifyAttachments

Sửa đổi tệp đính kèm của bài nộp của học viên.

patch

Cập nhật một hoặc nhiều trường của bài nộp của học viên.

reclaim

Thu hồi bài nộp của học viên thay mặt cho học viên sở hữu bài nộp đó.

return

Trả lại bài nộp của học viên.

turnIn

Nộp bài tập của học viên.