Method: courses.courseWork.rubrics.patch

Updates a rubric.

See google.classroom.v1.Rubric for details of which fields can be updated. Rubric update capabilities are limited once grading has started.

This request must be made by the Google Cloud console of the OAuth client ID used to create the parent course work item.

This method returns the following error codes:

  • PERMISSION_DENIED if the requesting developer project didn't create the corresponding course work, if the user isn't permitted to make the requested modification to the rubric, or for access errors. This error code is also returned if grading has already started on the rubric.
  • INVALID_ARGUMENT if the request is malformed and for the following request error:
    • RubricCriteriaInvalidFormat
  • NOT_FOUND if the requested course, course work, or rubric doesn't exist or if the user doesn't have access to the corresponding course work.
  • INTERNAL if grading has already started on the rubric.

HTTP request


The URL uses gRPC Transcoding syntax.

Path parameters



Required. Identifier of the course.



Required. Identifier of the course work.



Optional. Identifier of the rubric.

Query parameters


string (FieldMask format)

Optional. Mask that identifies which fields on the rubric to update. This field is required to do an update. The update fails if invalid fields are specified. There are multiple options to define the criteria of a rubric: the sourceSpreadsheetId and the criteria list. Only one of these can be used at a time to define a rubric.

The rubric criteria list is fully replaced by the rubric criteria specified in the update request. For example, if a criterion or level is missing from the request, it is deleted. New criteria and levels are added and an ID is assigned. Existing criteria and levels retain the previously assigned ID if the ID is specified in the request.

The following fields can be specified by teachers:

  • criteria
  • sourceSpreadsheetId

This is a comma-separated list of fully qualified names of fields. Example: "user.displayName,photo".


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 contains an instance of Rubric.

Response body

If successful, the response body contains an instance of Rubric.

Authorization scopes

Requires the following OAuth scope:


For more information, see the Authorization guide.