Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/

API Reference

Class

GoogleDriveClient

Namespace OfficeIMO.GoogleWorkspace.Drive
Assembly OfficeIMO.GoogleWorkspace.Drive
Source revision a039964de4cc with working tree changes
Implements
IDisposable
Modifiers sealed

Dependency-light client for Google Drive metadata, content, collaboration, and change operations.

Inheritance

  • Object
  • GoogleDriveClient

Usage

Explore 1 API references to this type

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Accepted by parameters 1

Constructors

public GoogleDriveClient(GoogleWorkspaceSession session, GoogleDriveClientOptions? options = null) #

Creates a Drive client bound to a Workspace session and a snapshot of client options.

Parameters

session OfficeIMO.GoogleWorkspace.GoogleWorkspaceSession requiredposition: 0
options OfficeIMO.GoogleWorkspace.Drive.GoogleDriveClientOptions? = null optionalposition: 1

Methods

public async Task<GoogleDriveFile> CopyFileAsync(String fileId, String? name = null, String? parentId = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveFile>

Copies a Drive file with an optional new name and parent.

Parameters

fileId System.String requiredposition: 0
name System.String? = null optionalposition: 1
parentId System.String? = null optionalposition: 2
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = default optionalposition: 4
public async Task<GoogleDriveComment> CreateCommentAsync(String fileId, String content, String? anchor = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveComment>

Creates a Drive comment and reports the editor limitation for custom anchors.

Parameters

fileId System.String requiredposition: 0
content System.String requiredposition: 1
anchor System.String? = null optionalposition: 2
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = default optionalposition: 4
public async Task<GoogleDriveFile> CreateFolderAsync(String name, String? parentId = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveFile>

Creates a Drive folder, optionally under a parent folder.

Parameters

name System.String requiredposition: 0
parentId System.String? = null optionalposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task<GoogleDrivePermission> CreatePermissionAsync(String fileId, GoogleDrivePermissionCreateOptions options, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDrivePermission>

Creates a permission for a file or shared drive.

Parameters

fileId System.String requiredposition: 0
options OfficeIMO.GoogleWorkspace.Drive.GoogleDrivePermissionCreateOptions requiredposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task<GoogleDriveReply> CreateReplyAsync(String fileId, String commentId, String content, String? action = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveReply>

Creates a reply or applies an action such as resolving a comment thread.

Parameters

fileId System.String requiredposition: 0
commentId System.String requiredposition: 1
content System.String requiredposition: 2
action System.String? = null optionalposition: 3
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 4
cancellationToken System.Threading.CancellationToken = default optionalposition: 5
public async Task DeleteCommentAsync(String fileId, String commentId, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task

Deletes a Drive comment thread from a file.

Parameters

fileId System.String requiredposition: 0
commentId System.String requiredposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task DeleteFileAsync(String fileId, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task

Permanently deletes a Drive file using guarded mutation policy.

Parameters

fileId System.String requiredposition: 0
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public async Task DeletePermissionAsync(String fileId, String permissionId, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task

Deletes a permission from a file or shared drive.

Parameters

fileId System.String requiredposition: 0
permissionId System.String requiredposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task DeleteReplyAsync(String fileId, String commentId, String replyId, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task

Deletes a reply from a Drive comment thread.

Parameters

fileId System.String requiredposition: 0
commentId System.String requiredposition: 1
replyId System.String requiredposition: 2
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = default optionalposition: 4
public Void Dispose() #
Returns: Void

Releases transport resources owned by the client.

public async Task<Byte[]> DownloadAsync(String fileId, IProgress<GoogleDriveTransferProgress>? progress = null, TranslationReport? report = null, CancellationToken cancellationToken = default, Int64? maxResponseBytes = null) #
Returns: Task<Byte[]>

Downloads binary file content into memory subject to the configured or per-call size limit.

Parameters

fileId System.String requiredposition: 0
progress System.IProgress<OfficeIMO.GoogleWorkspace.Drive.GoogleDriveTransferProgress>? = null optionalposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
maxResponseBytes System.Int64? = null optionalposition: 4
public async Task<GoogleDriveDownloadCheckpoint> DownloadToFileAsync(String fileId, String destinationPath, GoogleDriveDownloadCheckpoint? checkpoint = null, Func<GoogleDriveDownloadCheckpoint, CancellationToken, Task>? checkpointSink = null, Int32 chunkSize = 8388608, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveDownloadCheckpoint>

Downloads to a new file or resumes an exact checkpoint after process restart.

Parameters

fileId System.String requiredposition: 0
destinationPath System.String requiredposition: 1
checkpoint OfficeIMO.GoogleWorkspace.Drive.GoogleDriveDownloadCheckpoint? = null optionalposition: 2
checkpointSink System.Func<OfficeIMO.GoogleWorkspace.Drive.GoogleDriveDownloadCheckpoint, System.Threading.CancellationToken, System.Threading.Tasks.Task>? = null optionalposition: 3
chunkSize System.Int32 = 8388608 optionalposition: 4
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 5
cancellationToken System.Threading.CancellationToken = default optionalposition: 6
public async Task<Byte[]> ExportAsync(String fileId, String mimeType, IProgress<GoogleDriveTransferProgress>? progress = null, TranslationReport? report = null, CancellationToken cancellationToken = default, Int64? maxResponseBytes = null) #
Returns: Task<Byte[]>

Exports a Google-native file into memory using the requested MIME type and size limit.

Parameters

fileId System.String requiredposition: 0
mimeType System.String requiredposition: 1
progress System.IProgress<OfficeIMO.GoogleWorkspace.Drive.GoogleDriveTransferProgress>? = null optionalposition: 2
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = default optionalposition: 4
maxResponseBytes System.Int64? = null optionalposition: 5
public async Task<GoogleDriveFile> GetFileAsync(String fileId, String? fields = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveFile>

Gets metadata for one Drive file using the default or caller-selected field projection.

Parameters

fileId System.String requiredposition: 0
fields System.String? = null optionalposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task<GoogleDriveAboutFormats> GetFormatsAsync(TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveAboutFormats>

Gets the MIME formats Drive can import and export for the current account.

Parameters

report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 0
cancellationToken System.Threading.CancellationToken = default optionalposition: 1
public static IReadOnlyList<String> GetRequiredScopes(GoogleDriveOperation operation) #
Returns: IReadOnlyList<String>

Returns the default scope used by this client for a logical Drive operation.

Parameters

operation OfficeIMO.GoogleWorkspace.Drive.GoogleDriveOperation requiredposition: 0
public async Task<GoogleSharedDrive> GetSharedDriveAsync(String driveId, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleSharedDrive>

Gets metadata and caller capabilities for a shared drive.

Parameters

driveId System.String requiredposition: 0
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public async Task<String> GetStartPageTokenAsync(String? driveId = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<String>

Gets a starting token for a user or shared-drive change feed.

Parameters

driveId System.String? = null optionalposition: 0
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public async Task<GoogleDriveChangeList> ListChangesAsync(String pageToken, GoogleDriveChangeListOptions? options = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveChangeList>

Reads one page from a Drive change feed and returns continuation state.

Parameters

pageToken System.String requiredposition: 0
options OfficeIMO.GoogleWorkspace.Drive.GoogleDriveChangeListOptions? = null optionalposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task<GoogleDriveCommentList> ListCommentsAsync(String fileId, String? pageToken = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveCommentList>

Lists one page of comments, including deleted threads and replies.

Parameters

fileId System.String requiredposition: 0
pageToken System.String? = null optionalposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task<GoogleDriveFileList> ListFilesAsync(GoogleDriveListOptions? options = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveFileList>

Lists one page of Drive files using the requested query and corpus options.

Parameters

options OfficeIMO.GoogleWorkspace.Drive.GoogleDriveListOptions? = null optionalposition: 0
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public async Task<GoogleDrivePermissionList> ListPermissionsAsync(String fileId, String? pageToken = null, Int32? pageSize = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDrivePermissionList>

Lists one page of permissions for a file or shared drive.

Parameters

fileId System.String requiredposition: 0
The file or shared-drive identifier.
pageToken System.String? = null optionalposition: 1
The continuation token returned by the previous page.
pageSize System.Int32? = null optionalposition: 2
The requested number of permissions. Google Drive caps this value at 100.
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 3
An optional translation report that receives API diagnostics.
cancellationToken System.Threading.CancellationToken = default optionalposition: 4
A token that cancels the request.

Returns

The requested permission page and its continuation token, when another page exists.

public async Task<GoogleDriveRevisionList> ListRevisionsAsync(String fileId, String? pageToken = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveRevisionList>

Lists one page of revision metadata for a Drive file.

Parameters

fileId System.String requiredposition: 0
pageToken System.String? = null optionalposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task<GoogleDriveFile> MoveFileAsync(String fileId, String folderId, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveFile>

Moves a file to one folder, removing its existing parents when necessary.

Parameters

fileId System.String requiredposition: 0
folderId System.String requiredposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task<GoogleDriveFile> ResolveFolderAsync(String folderId, String? expectedDriveId = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveFile>

Gets a folder and verifies its type and, when supplied, containing shared drive.

Parameters

folderId System.String requiredposition: 0
expectedDriveId System.String? = null optionalposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public async Task<GoogleDriveFile> UploadMultipartAsync(Byte[] content, GoogleDriveUploadOptions options, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveFile>

Uploads content of at most 5 MiB in one multipart request.

Parameters

content System.Byte[] requiredposition: 0
options OfficeIMO.GoogleWorkspace.Drive.GoogleDriveUploadOptions requiredposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3

Returns

Metadata for the created Drive file.

public async Task<GoogleDriveFile> UploadResumableAsync(Byte[] content, GoogleDriveUploadOptions options, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveFile>

Uploads in aligned resumable chunks and reconciles ambiguous chunk responses with the server session.

Parameters

content System.Byte[] requiredposition: 0
options OfficeIMO.GoogleWorkspace.Drive.GoogleDriveUploadOptions requiredposition: 1
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3

Returns

Metadata for the created Drive file.

public async Task<GoogleDriveResumableUploadResult> UploadResumableFileAsync(String path, GoogleDriveUploadOptions options, GoogleDriveResumableUploadCheckpoint? checkpoint = null, Func<GoogleDriveResumableUploadCheckpoint, CancellationToken, Task>? checkpointSink = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveResumableUploadResult>

Uploads a file through the durable resumable path.

Parameters

path System.String requiredposition: 0
options OfficeIMO.GoogleWorkspace.Drive.GoogleDriveUploadOptions requiredposition: 1
checkpoint OfficeIMO.GoogleWorkspace.Drive.GoogleDriveResumableUploadCheckpoint? = null optionalposition: 2
checkpointSink System.Func<OfficeIMO.GoogleWorkspace.Drive.GoogleDriveResumableUploadCheckpoint, System.Threading.CancellationToken, System.Threading.Tasks.Task>? = null optionalposition: 3
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 4
cancellationToken System.Threading.CancellationToken = default optionalposition: 5
public async Task<GoogleDriveResumableUploadResult> UploadResumableStreamAsync(Stream content, Int64 length, GoogleDriveUploadOptions options, GoogleDriveResumableUploadCheckpoint? checkpoint = null, Func<GoogleDriveResumableUploadCheckpoint, CancellationToken, Task>? checkpointSink = null, TranslationReport? report = null, CancellationToken cancellationToken = default) #
Returns: Task<GoogleDriveResumableUploadResult>

Uploads a seekable stream and persists progress after initiation and every confirmed chunk.

Parameters

content System.IO.Stream requiredposition: 0
length System.Int64 requiredposition: 1
options OfficeIMO.GoogleWorkspace.Drive.GoogleDriveUploadOptions requiredposition: 2
checkpoint OfficeIMO.GoogleWorkspace.Drive.GoogleDriveResumableUploadCheckpoint? = null optionalposition: 3
checkpointSink System.Func<OfficeIMO.GoogleWorkspace.Drive.GoogleDriveResumableUploadCheckpoint, System.Threading.CancellationToken, System.Threading.Tasks.Task>? = null optionalposition: 4
report OfficeIMO.GoogleWorkspace.TranslationReport? = null optionalposition: 5
cancellationToken System.Threading.CancellationToken = default optionalposition: 6

Fields

public const String DefaultFileFields #

Default Drive fields requested for file metadata.

Value: id,name,mimeType,driveId,parents,webViewLink,webContentLink,modifiedTime,createdTime,version,size,trashed,capabilities(canDownload,canEdit,canMoveItemWithinDrive,canMoveItemOutOfDrive,canDelete,canShare,canComment)