trash method

Future<File> trash(
  1. String fileId, {
  2. String? includeLabels,
  3. String? includePermissionsForView,
  4. bool? supportsAllDrives,
  5. bool? supportsTeamDrives,
  6. String? $fields,
})

Moves a file to the trash.

The currently authenticated user must own the file or be at least a fileOrganizer on the parent for shared drive files. Only the owner may trash a file. The trashed item is excluded from all files.list responses returned for any user who doesn't own the file. However, all users with access to the file can see the trashed item metadata in an API response. All users with access can copy, download, export, and share the file. Note: Files moved to the trash still appear by default in results from the files.list method. To permanently remove a file, use files.delete.

Request parameters:

fileId - The ID of the file to trash.

includeLabels - A comma-separated list of IDs of labels to include in the labelInfo part of the response.

includePermissionsForView - Specifies which additional view's permissions to include in the response. Only published is supported.

supportsAllDrives - Whether the requesting application supports both My Drives and shared drives.

supportsTeamDrives - Deprecated: Use supportsAllDrives instead.

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

Completes with a File.

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<File> trash(
  core.String fileId, {
  core.String? includeLabels,
  core.String? includePermissionsForView,
  core.bool? supportsAllDrives,
  core.bool? supportsTeamDrives,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (includeLabels != null) 'includeLabels': [includeLabels],
    if (includePermissionsForView != null)
      'includePermissionsForView': [includePermissionsForView],
    if (supportsAllDrives != null)
      'supportsAllDrives': ['${supportsAllDrives}'],
    if (supportsTeamDrives != null)
      'supportsTeamDrives': ['${supportsTeamDrives}'],
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'files/' + commons.escapeVariable('$fileId') + '/trash';

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