list method
Lists a file's or shared drive's permissions.
For more information, see Share files, folders, and drives.
Request parameters:
fileId - The ID of the file or shared drive.
includePermissionsForView - Specifies which additional view's
permissions to include in the response. Only published is supported.
pageSize - The maximum number of permissions to return per page. When
not set for files in a shared drive, at most 100 results will be returned.
When not set for files that are not in a shared drive, the entire list
will be returned.
Value must be between "1" and "100".
pageToken - The token for continuing a previous list request on the next
page. This should be set to the value of nextPageToken from the previous
response.
supportsAllDrives - Whether the requesting application supports both My
Drives and shared drives.
supportsTeamDrives - Deprecated: Use supportsAllDrives instead.
useDomainAdminAccess - Issue the request as a domain administrator. If
set to true, and if the following additional conditions are met, the
requester is granted access: 1. The file ID parameter refers to a shared
drive. 2. The requester is an administrator of the domain to which the
shared drive belongs. For more information, see
Manage shared drives as domain administrators.
$fields - Selector specifying which fields to include in a partial
response.
Completes with a PermissionList.
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<PermissionList> list(
core.String fileId, {
core.String? includePermissionsForView,
core.int? pageSize,
core.String? pageToken,
core.bool? supportsAllDrives,
core.bool? supportsTeamDrives,
core.bool? useDomainAdminAccess,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
'includePermissionsForView': ?includePermissionsForView == null
? null
: [includePermissionsForView],
'pageSize': ?pageSize == null ? null : ['${pageSize}'],
'pageToken': ?pageToken == null ? null : [pageToken],
'supportsAllDrives': ?supportsAllDrives == null
? null
: ['${supportsAllDrives}'],
'supportsTeamDrives': ?supportsTeamDrives == null
? null
: ['${supportsTeamDrives}'],
'useDomainAdminAccess': ?useDomainAdminAccess == null
? null
: ['${useDomainAdminAccess}'],
'fields': ?$fields == null ? null : [$fields],
};
final url_ = 'files/' + commons.escapeVariable('$fileId') + '/permissions';
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return PermissionList.fromJson(
response_ as core.Map<core.String, core.dynamic>,
);
}