patch method

Future<CourseWork> patch(
  1. CourseWork request,
  2. String courseId,
  3. String id, {
  4. String? updateMask,
  5. String? $fields,
})

Updates one or more fields of a course work.

See google.classroom.v1.CourseWork for details of which fields may be updated and who may change them. This request must be made by the Developer Console project of the OAuth client ID used to create the corresponding course work item. This method returns the following error codes: * PERMISSION_DENIED if the requesting developer project did not create the corresponding course work, if the user is not permitted to make the requested modification to the student submission, or for access errors. * INVALID_ARGUMENT if the request is malformed. * FAILED_PRECONDITION if the requested course work has already been deleted. * NOT_FOUND if the requested course, course work, or student submission does not exist.

request - The metadata request object.

Request parameters:

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

id - Identifier of the course work.

updateMask - Mask that identifies which fields on the course work to update. This field is required to do an update. The update fails if invalid fields are specified. If a field supports empty values, it can be cleared by specifying it in the update mask and not in the CourseWork object. If a field that does not support empty values is included in the update mask and not set in the CourseWork object, an INVALID_ARGUMENT error is returned. The following fields may be specified by teachers: * title * description * state * due_date * due_time * max_points

  • scheduled_time * submission_modification_mode * topic_id

$fields - Selector specifying which fields to include in a partial response.

Completes with a CourseWork.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<CourseWork> patch(
  CourseWork request,
  core.String courseId,
  core.String id, {
  core.String? updateMask,
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    if (updateMask != null) 'updateMask': [updateMask],
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/courses/' +
      commons.escapeVariable('$courseId') +
      '/courseWork/' +
      commons.escapeVariable('$id');

  final response_ = await _requester.request(
    url_,
    'PATCH',
    body: body_,
    queryParams: queryParams_,
  );
  return CourseWork.fromJson(
      response_ as core.Map<core.String, core.dynamic>);
}