get method
Returns an add-on attachment.
Requires the add-on requesting the attachment to be the original creator
of the attachment. This method returns the following error codes: *
PERMISSION_DENIED for access errors. * INVALID_ARGUMENT if the request
is malformed. * NOT_FOUND if one of the identified resources does not
exist.
Request parameters:
courseId - Required. Identifier of the course.
itemId - Identifier of the Announcement, CourseWork, or
CourseWorkMaterial under which the attachment is attached. This field is
required, but is not marked as such while we are migrating from post_id.
attachmentId - Required. Identifier of the attachment.
postId - Optional. Deprecated, use item_id instead.
$fields - Selector specifying which fields to include in a partial
response.
Completes with a AddOnAttachment.
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<AddOnAttachment> get(
  core.String courseId,
  core.String itemId,
  core.String attachmentId, {
  core.String? postId,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (postId != null) 'postId': [postId],
    if ($fields != null) 'fields': [$fields],
  };
  final url_ =
      'v1/courses/' +
      commons.escapeVariable('$courseId') +
      '/courseWorkMaterials/' +
      commons.escapeVariable('$itemId') +
      '/addOnAttachments/' +
      commons.escapeVariable('$attachmentId');
  final response_ = await _requester.request(
    url_,
    'GET',
    queryParams: queryParams_,
  );
  return AddOnAttachment.fromJson(
    response_ as core.Map<core.String, core.dynamic>,
  );
}