REST Resource: courses.courseWork.studentSubmissions

Recurso: StudentSubmission

Es el envío de un estudiante para el trabajo de clase.

Los elementos StudentSubmission se generan cuando se crea un elemento CourseWork.

Es posible que las entregas de los estudiantes a las que nunca se accedió (es decir, con state = NEW) no tengan una hora de creación o de actualización.

Representación 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)
  }
}
Campos
courseId

string

Es el identificador del curso.

Solo lectura.

courseWorkId

string

Es el identificador de la tarea del curso a la que corresponde.

Solo lectura.

id

string

Es el identificador asignado por Classroom para la entrega del estudiante. Este valor es único entre las entregas de la tarea del curso correspondiente.

Solo lectura.

userId

string

Es el identificador del estudiante que posee esta entrega.

Solo lectura.

creationTime

string (Timestamp format)

Es la hora de creación de este envío. Es posible que no se establezca si el estudiante no accedió a este elemento.

Solo lectura.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Es la hora de la última actualización de este envío. Es posible que no se establezca si el estudiante no accedió a este elemento.

Solo lectura.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

state

enum (SubmissionState)

Es el estado de este envío.

Solo lectura.

late

boolean

Indica si este envío se retrasó.

Solo lectura.

draftGrade

number

Calificación pendiente opcional. Si no se establece, no se estableció ninguna calificación. Este valor no debe ser negativo. Se permiten valores decimales (es decir, no enteros), pero se redondean a dos decimales.

Solo los profesores del curso pueden ver y modificar esta información.

assignedGrade

number

Calificación opcional. Si no se establece, no se estableció ninguna calificación. Este valor no debe ser negativo. Se permiten valores decimales (es decir, no enteros), pero se redondean a dos decimales.

Solo los profesores del curso pueden modificar esta opción.

rubricId

string

Solo salida. Identificador de la rúbrica que se adjunta actualmente a esta tarea y se usa para calificar esta entrega del estudiante.

Este ID está vacío si no hay una rúbrica. Este ID refleja la rúbrica activa actualmente y cambia si los profesores la borran y la vuelven a crear.

Solo lectura.

draftRubricGrades

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

Calificaciones de rúbrica pendientes según los criterios de la rúbrica.

Este mapa está vacío si no hay una rúbrica adjunta a esta tarea o si hay una rúbrica adjunta, pero no se establecieron calificaciones en ningún criterio. Las entradas solo se completan para las calificaciones que se establecieron. Clave: El ID del criterio de la rúbrica.

Solo lectura.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

assignedRubricGrades

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

Son las calificaciones asignadas según los criterios de la rúbrica.

Este mapa está vacío si no hay ninguna rúbrica adjunta a esta tarea o si hay una rúbrica adjunta, pero no se establecieron calificaciones en ningún criterio. Las entradas solo se completan para las calificaciones que se establecieron. Clave: El ID del criterio de la rúbrica.

Solo lectura.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

courseWorkType

enum (CourseWorkType)

Es el tipo de trabajo en clase para el que se realiza esta entrega.

Solo lectura.

associatedWithDeveloper

boolean

Indica si esta entrega del estudiante está asociada con el proyecto de la Consola para desarrolladores que realiza la solicitud.

Consulta courseWork.create para obtener más información.

Solo lectura.

submissionHistory[]

object (SubmissionHistory)

Es el historial de la entrega (incluye los historiales de estado y calificación).

Solo lectura.

previewVersion

enum (PreviewVersion)

Solo salida. Es la versión preliminar de la API. Se debe configurar para acceder a las nuevas funciones de la API que se ponen a disposición de los desarrolladores en el Programa de versión preliminar.

Contenido del envío. El tipo específico depende del valor de course_work_type. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
assignmentSubmission

object (AssignmentSubmission)

Es el contenido de la entrega cuando el courseWorkType es ASSIGNMENT.

Los estudiantes pueden modificar este contenido con studentSubmissions.modifyAttachments.

shortAnswerSubmission

object (ShortAnswerSubmission)

Es el contenido de la entrega cuando courseWorkType es SHORT_ANSWER_QUESTION.

multipleChoiceSubmission

object (MultipleChoiceSubmission)

Es el contenido de la entrega cuando el courseWorkType es MULTIPLE_CHOICE_QUESTION.

Fin de los campos mutuamente excluyentes.

RubricGrade

Es una calificación de rúbrica establecida para la entrega del estudiante. Hay, como máximo, una entrada por criterio de rúbrica.

Representación JSON
{
  "criterionId": string,
  "levelId": string,
  "points": number
}
Campos
criterionId

string

Opcional. Es el ID del criterio.

levelId

string

Opcional. ID de nivel opcional del nivel seleccionado. Si está vacío, no se seleccionó ningún nivel.

points

number

Opcional. Son los puntos opcionales asignados para este criterio, que suelen basarse en el nivel. Los niveles pueden tener puntos o no. Si no se establece, no se establecieron puntos para este criterio.

AssignmentSubmission

Trabajo de los estudiantes para una tarea.

Representación JSON
{
  "attachments": [
    {
      object (Attachment)
    }
  ]
}
Campos
attachments[]

object (Attachment)

Son los archivos adjuntos que agregó el estudiante. Es posible que los archivos de Drive que corresponden a materiales con un modo de uso compartido de STUDENT_COPY aún no existan si el estudiante no accedió a la tarea en Classroom.

Algunos metadatos de archivos adjuntos solo se propagan si el usuario que los solicita tiene permiso para acceder a ellos. Los campos identifier y alternateLink siempre están disponibles, pero es posible que otros (por ejemplo, title) no lo estén.

Archivo adjunto

Se agregó el archivo adjunto al trabajo de la tarea del estudiante.

Cuando creas adjuntos, no se admite la configuración del campo form.

Representación JSON
{

  "driveFile": {
    object (DriveFile)
  },
  "youTubeVideo": {
    object (YouTubeVideo)
  },
  "link": {
    object (Link)
  },
  "form": {
    object (Form)
  }
}
Campos
Datos del archivo adjunto. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
driveFile

object (DriveFile)

Archivo adjunto de Google Drive.

youTubeVideo

object (YouTubeVideo)

Video de YouTube adjunto.

form

object (Form)

Archivo adjunto de Formularios de Google.

Fin de los campos mutuamente excluyentes.

ShortAnswerSubmission

Trabajo de un estudiante para una pregunta de respuesta corta.

Representación JSON
{
  "answer": string
}
Campos
answer

string

Respuesta del estudiante a una pregunta de respuesta corta.

MultipleChoiceSubmission

Trabajo de un estudiante para una pregunta de opción múltiple.

Representación JSON
{
  "answer": string
}
Campos
answer

string

La opción que seleccionó el estudiante.

SubmissionHistory

El historial del envío. Actualmente, esto incluye los historiales de estados y calificaciones.

Representación JSON
{

  "stateHistory": {
    object (StateHistory)
  },
  "gradeHistory": {
    object (GradeHistory)
  }
}
Campos
Tipo de SubmissionHistory, puede ser StateHistory o GradeHistory. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
stateHistory

object (StateHistory)

La información del historial de estado del envío, si está presente.

gradeHistory

object (GradeHistory)

La información del historial de calificaciones de la entrega, si está presente.

Fin de los campos mutuamente excluyentes.

StateHistory

Es el historial de cada estado en el que se encontró este envío.

Representación JSON
{
  "state": enum (State),
  "stateTimestamp": string,
  "actorUserId": string
}
Campos
state

enum (State)

Es la etapa de la canalización del flujo de trabajo.

stateTimestamp

string (Timestamp format)

Indica cuándo el envío entró en este estado.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

actorUserId

string

El profesor o el estudiante que realizó el cambio

Estado

Son los estados posibles en los que puede estar un envío.

Enums
STATE_UNSPECIFIED No se especificó ningún estado. Este dispositivo nunca se debe devolver.
CREATED Se creó el envío.
TURNED_IN El estudiante entregó un documento asignado, que puede ser una plantilla o no.
RETURNED El profesor devolvió el documento asignado al estudiante.
RECLAIMED_BY_STUDENT El estudiante entregó el documento asignado y, luego, eligió "Anular la entrega" de la tarea, lo que le devolvió el control como propietario.
STUDENT_EDITED_AFTER_TURN_IN El estudiante editó su entrega después de enviarla. Actualmente, solo lo usan las preguntas cuando el estudiante edita su respuesta.

GradeHistory

Es el historial de cada calificación de esta entrega.

Representación JSON
{
  "pointsEarned": number,
  "maxPoints": number,
  "gradeTimestamp": string,
  "actorUserId": string,
  "gradeChangeType": enum (GradeChangeType)
}
Campos
pointsEarned

number

Es el numerador de la calificación en este momento en el historial de calificaciones de la entrega.

maxPoints

number

Es el denominador de la calificación en este momento en el historial de calificaciones de la entrega.

gradeTimestamp

string (Timestamp format)

Indica cuándo se cambió la calificación de la entrega.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

actorUserId

string

Es el profesor que realizó el cambio de calificación.

gradeChangeType

enum (GradeChangeType)

Es el tipo de cambio de calificación en este momento en el historial de calificaciones de la entrega.

GradeChangeType

Son los posibles tipos de cambios de calificación.

Enums
UNKNOWN_GRADE_CHANGE_TYPE No se especificó ningún tipo de cambio de calificación. Este dispositivo nunca se debe devolver.
DRAFT_GRADE_POINTS_EARNED_CHANGE Un cambio en el numerador de la calificación del borrador
ASSIGNED_GRADE_POINTS_EARNED_CHANGE Un cambio en el numerador de la calificación asignada
MAX_POINTS_CHANGE Un cambio en el denominador de la calificación

Métodos

get

Devuelve una entrega de un estudiante.

list

Devuelve una lista de las entregas de los estudiantes que el solicitante tiene permiso para ver, teniendo en cuenta los permisos de OAuth de la solicitud.

modifyAttachments

Modifica los archivos adjuntos de la entrega de un estudiante.

patch

Actualiza uno o más campos de un envío de un estudiante.

reclaim

Recupera una entrega de un estudiante en nombre del estudiante que es su propietario.

return

Devuelve una entrega de un estudiante.

turnIn

Entrega un envío de un estudiante.