Google Classroom add-ons are now generally available to developers! Please see the
add-ons documentation for more information.
Method: courses.courseWork.list
Stay organized with collections
Save and categorize content based on your preferences.
Returns a list of course work that the requester is permitted to view.
Course students may only view PUBLISHED
course work. Course teachers and domain administrators may view all course work.
This method returns the following error codes:
PERMISSION_DENIED
if the requesting user is not permitted to access the requested course 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
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 .
|
Query parameters
Parameters |
courseWorkStates[] |
enum (CourseWorkState )
Restriction on the work status to return. Only courseWork that matches is returned. If unspecified, items with a work status of PUBLISHED is returned.
|
orderBy |
string
Optional sort ordering for results. A comma-separated list of fields with an optional sort direction keyword. Supported fields are updateTime and dueDate . Supported direction keywords are asc and desc . If not specified, updateTime desc is the default behavior. Examples: dueDate asc,updateTime desc , updateTime,dueDate desc
|
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.
|
previewVersion |
enum (PreviewVersion )
Optional. The preview version of the API. This must be set in order to access new API capabilities made available to developers in the Preview Program.
|
Request body
The request body must be empty.
Response body
Response when listing course work.
If successful, the response body contains data with the following structure:
JSON representation |
{
"courseWork": [
{
object (CourseWork )
}
],
"nextPageToken": string
} |
Fields |
courseWork[] |
object (CourseWork )
Course work items that match 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.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-04-17 UTC.
[null,null,["Last updated 2025-04-17 UTC."],[],[],null,["# Method: courses.courseWork.list\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Query parameters](#body.QUERY_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n - [JSON representation](#body.ListCourseWorkResponse.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nReturns a list of course work that the requester is permitted to view.\n\nCourse students may only view `PUBLISHED` course work. Course teachers and domain administrators may view all course work.\n\nThis method returns the following error codes:\n\n- `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or for [access errors](/workspace/classroom/reference/Access.Errors).\n- `INVALID_ARGUMENT` if the request is malformed.\n- `NOT_FOUND` if the requested course does not exist.\n\n### HTTP request\n\n`GET https://classroom.googleapis.com/v1/courses/{courseId}/courseWork`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `courseId` | `string` Identifier of the course. This identifier can be either the Classroom-assigned identifier or an [alias](/workspace/classroom/reference/rest/v1/courses.aliases#CourseAlias). |\n\n### Query parameters\n\n| Parameters ||\n|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `courseWorkStates[]` | `enum (`[CourseWorkState](/workspace/classroom/reference/rest/v1/courses.courseWork#CourseWorkState)`)` Restriction on the work status to return. Only courseWork that matches is returned. If unspecified, items with a work status of `PUBLISHED` is returned. |\n| `orderBy` | `string` Optional sort ordering for results. A comma-separated list of fields with an optional sort direction keyword. Supported fields are `updateTime` and `dueDate`. Supported direction keywords are `asc` and `desc`. If not specified, `updateTime desc` is the default behavior. Examples: `dueDate asc,updateTime desc`, `updateTime,dueDate desc` |\n| `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. |\n| `pageToken` | `string` [nextPageToken](/workspace/classroom/reference/rest/v1/courses.courseWork/list#body.ListCourseWorkResponse.FIELDS.next_page_token) 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. |\n| `previewVersion` | `enum (`[PreviewVersion](/workspace/classroom/reference/rest/v1/PreviewVersion)`)` Optional. The preview version of the API. This must be set in order to access new API capabilities made available to developers in the Preview Program. |\n\n### Request body\n\nThe request body must be empty.\n\n### Response body\n\nResponse when listing course work.\n\nIf successful, the response body contains data with the following structure:\n\n| JSON representation |\n|------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"courseWork\": [ { object (/workspace/classroom/reference/rest/v1/courses.courseWork#CourseWork) } ], \"nextPageToken\": string } ``` |\n\n| Fields ||\n|-----------------|-------------------------------------------------------------------------------------------------------------------------------------------|\n| `courseWork[]` | `object (`[CourseWork](/workspace/classroom/reference/rest/v1/courses.courseWork#CourseWork)`)` Course work items that match the request. |\n| `nextPageToken` | `string` Token identifying the next page of results to return. If empty, no further results are available. |\n\n### Authorization scopes\n\nRequires one of the following OAuth scopes:\n\n- `https://www.googleapis.com/auth/classroom.coursework.students.readonly`\n- `\n https://www.googleapis.com/auth/classroom.coursework.me.readonly`\n- `\n https://www.googleapis.com/auth/classroom.coursework.students`\n- `\n https://www.googleapis.com/auth/classroom.coursework.me`\n\nFor more information, see the [Authorization guide](/workspace/guides/configure-oauth-consent)."]]