Method: courses.updateGradingPeriodSettings

Updates grading period settings of a course.

The requesting user and course owner must have a supported license. See licensing requirements.

This method returns the following error codes:

  • PERMISSION_DENIED if the requesting user is not permitted to modify the grading period settings in a course or for access errors:
    • UserIneligibleToUpdateGradingPeriodSettings
  • INVALID_ARGUMENT if the request is malformed.
  • NOT_FOUND if the requested course does not exist.

HTTP request


The URL uses gRPC Transcoding syntax.

Path parameters



Required. The identifier of the course.

Query parameters


string (FieldMask format)

Mask that identifies which fields in the GradingPeriodSettings to update.

The GradingPeriodSettings gradingPeriods list will be fully replaced by the grading periods specified in the update request. For example:

  • Grading periods included in the list without an ID are considered additions, and a new ID will be assigned when the request is made.
  • Grading periods that currently exist, but are missing from the request will be considered deletions.
  • Grading periods with an existing ID and modified data are considered edits. Unmodified data will be left as is.
  • Grading periods included with an unknown ID will result in an error.

The following fields may be specified:

  • gradingPeriods
  • applyToExistingCoursework

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 GradingPeriodSettings.

Response body

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

Authorization scopes

Requires the following OAuth scope:


For more information, see the Authorization guide.