Are your users using Classroom with Google Meet? Check out the Apps Script quickstart covering how to check student attendance in Google Meet courses.

Method: courses.courseWork.studentSubmissions.list

Returns a list of student submissions that the requester is permitted to view, factoring in the OAuth scopes of the request. - may be specified as the courseWorkId to include student submissions for multiple course work items.

Course students may only view their own work. Course teachers and domain administrators may view all student submissions.

This method returns the following error codes:

  • PERMISSION_DENIED if the requesting user is not permitted to access the requested course or course work, or for access errors.
  • INVALID_ARGUMENT if the request is malformed.
  • NOT_FOUND if the requested course does not exist.

HTTP request

GET https://classroom.googleapis.com/v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
courseId

string

Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.

courseWorkId

string

Identifier of the student work to request. This may be set to the string literal "-" to request student work for all course work in the specified course.

Query parameters

Parameters
userId

string

Optional argument to restrict returned student work to those owned by the student with the specified identifier. The identifier can be one of the following:

  • the numeric identifier for the user
  • the email address of the user
  • the string literal "me", indicating the requesting user
states[]

enum (SubmissionState)

Requested submission states. If specified, returned student submissions match one of the specified submission states.

late

enum (LateValues)

Requested lateness value. If specified, returned student submissions are restricted by the requested value. If unspecified, submissions are returned regardless of late value.

pageSize

integer

Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum.

The server may return fewer than the specified number of results.

pageToken

string

nextPageToken value returned from a previous list call, indicating that the subsequent page of results should be returned.

The list request must be otherwise identical to the one that resulted in this token.

Request body

The request body must be empty.

Response body

If successful, the response body contains data with the following structure:

Response when listing student submissions.

JSON representation
{
  "studentSubmissions": [
    {
      object (StudentSubmission)
    }
  ],
  "nextPageToken": string
}
Fields
studentSubmissions[]

object (StudentSubmission)

Student work that matches the request.

nextPageToken

string

Token identifying the next page of results to return. If empty, no further results are available.

Authorization scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/classroom.coursework.students.readonly
  • https://www.googleapis.com/auth/classroom.coursework.me.readonly
  • https://www.googleapis.com/auth/classroom.coursework.students
  • https://www.googleapis.com/auth/classroom.coursework.me

For more information, see the Authorization guide.

LateValues

Restrictions on the late value of returned items.

Enums
LATE_VALUES_UNSPECIFIED No restriction on submission late values specified.
LATE_ONLY Return StudentSubmissions where late is true.
NOT_LATE_ONLY Return StudentSubmissions where late is false.