Corsair
PluginsGoogle Drive

Google Drive API Endpoints

Complete reference for all Google Drive API endpoints

The Google Drive plugin provides full access to Google Drive's API through a typed interface. All endpoints are organized by resource type and automatically handle authentication, rate limiting, and error handling.

New to Corsair? Learn about core concepts like API access, authentication, and error handling before diving into specific endpoints.

Full Implementation: For the complete, up-to-date list of all endpoints and their implementations, see the Google Drive plugin source code on GitHub.

Files

Manage files in Google Drive.

list

files.list

List files in Google Drive.

const files = await corsair.googledrive.api.files.list({
    q: "mimeType='application/vnd.google-apps.folder'",
    pageSize: 10,
});

Parameters:

NameTypeRequiredDescription
qstringNoSearch query
pageSizenumberNoNumber of results per page
pageTokenstringNoPage token for pagination
spacesstringNoSpaces to search
corporastringNoCorpora to search
driveIdstringNoShared drive ID
includeItemsFromAllDrivesbooleanNoInclude items from all drives
orderBystringNoSort order
supportsAllDrivesbooleanNoSupport all drives

get

files.get

Get a specific file.

const file = await corsair.googledrive.api.files.get({
    fileId: "file-id",
});

Parameters:

NameTypeRequiredDescription
fileIdstringYesFile ID
acknowledgeAbusebooleanNoAcknowledge abuse warning
supportsAllDrivesbooleanNoSupport all drives

createFromText

files.createFromText

Create a file from text content.

const file = await corsair.googledrive.api.files.createFromText({
    name: "document.txt",
    content: "File content here",
    mimeType: "text/plain",
    parents: ["folder-id"],
});

Parameters:

NameTypeRequiredDescription
namestringYesFile name
contentstringYesFile content
mimeTypestringNoMIME type
parentsstring[]NoParent folder IDs
descriptionstringNoFile description

upload

files.upload

Upload a file to Google Drive.

const file = await corsair.googledrive.api.files.upload({
    name: "document.pdf",
    mimeType: "application/pdf",
    parents: ["folder-id"],
});

Parameters:

NameTypeRequiredDescription
namestringYesFile name
mimeTypestringNoMIME type
parentsstring[]NoParent folder IDs
descriptionstringNoFile description

update

files.update

Update a file's metadata.

await corsair.googledrive.api.files.update({
    fileId: "file-id",
    name: "Updated Name",
    description: "Updated description",
});

Parameters:

NameTypeRequiredDescription
fileIdstringYesFile ID
namestringNoNew file name
descriptionstringNoNew description
starredbooleanNoStar status
trashedbooleanNoTrash status
parentsstring[]NoParent folders
propertiesRecord<string, string>NoFile properties
appPropertiesRecord<string, string>NoApp-specific properties

delete

files.delete

Delete a file.

await corsair.googledrive.api.files.delete({
    fileId: "file-id",
});

Parameters:

NameTypeRequiredDescription
fileIdstringYesFile ID to delete
supportsAllDrivesbooleanNoSupport all drives

copy

files.copy

Copy a file.

const copiedFile = await corsair.googledrive.api.files.copy({
    fileId: "file-id",
    name: "Copy of File",
    parents: ["folder-id"],
});

Parameters:

NameTypeRequiredDescription
fileIdstringYesFile ID to copy
namestringNoName for the copy
parentsstring[]NoParent folder IDs
supportsAllDrivesbooleanNoSupport all drives

move

files.move

Move a file to different folders.

await corsair.googledrive.api.files.move({
    fileId: "file-id",
    addParents: "new-folder-id",
    removeParents: "old-folder-id",
});

Parameters:

NameTypeRequiredDescription
fileIdstringYesFile ID
addParentsstringNoParent folder to add
removeParentsstringNoParent folder to remove
supportsAllDrivesbooleanNoSupport all drives

download

files.download

Download a file's content.

const content = await corsair.googledrive.api.files.download({
    fileId: "file-id",
});

Parameters:

NameTypeRequiredDescription
fileIdstringYesFile ID
acknowledgeAbusebooleanNoAcknowledge abuse warning

share

files.share

Share a file with users or groups.

await corsair.googledrive.api.files.share({
    fileId: "file-id",
    type: "user",
    role: "reader",
    emailAddress: "user@example.com",
});

Parameters:

NameTypeRequiredDescription
fileIdstringYesFile ID
type'user' | 'group' | 'domain' | 'anyone'NoPermission type
role'owner' | 'organizer' | 'fileOrganizer' | 'writer' | 'commenter' | 'reader'NoPermission role
emailAddressstringNoEmail address for user/group
domainstringNoDomain for domain-wide sharing
allowFileDiscoverybooleanNoAllow file discovery
sendNotificationEmailbooleanNoSend notification email
transferOwnershipbooleanNoTransfer ownership

Folders

Manage folders in Google Drive.

create

folders.create

Create a new folder.

const folder = await corsair.googledrive.api.folders.create({
    name: "My Folder",
    parents: ["parent-folder-id"],
});

Parameters:

NameTypeRequiredDescription
namestringYesFolder name
parentsstring[]NoParent folder IDs
descriptionstringNoFolder description

get

folders.get

Get a specific folder.

const folder = await corsair.googledrive.api.folders.get({
    folderId: "folder-id",
});

Parameters:

NameTypeRequiredDescription
folderIdstringYesFolder ID
supportsAllDrivesbooleanNoSupport all drives

list

folders.list

List folders.

const folders = await corsair.googledrive.api.folders.list({
    q: "mimeType='application/vnd.google-apps.folder'",
});

Parameters:

NameTypeRequiredDescription
qstringNoSearch query
pageSizenumberNoNumber of results
pageTokenstringNoPage token
spacesstringNoSpaces to search
orderBystringNoSort order

delete

folders.delete

Delete a folder.

await corsair.googledrive.api.folders.delete({
    folderId: "folder-id",
});

Parameters:

NameTypeRequiredDescription
folderIdstringYesFolder ID to delete
supportsAllDrivesbooleanNoSupport all drives

share

folders.share

Share a folder with users or groups.

await corsair.googledrive.api.folders.share({
    folderId: "folder-id",
    type: "user",
    role: "writer",
    emailAddress: "user@example.com",
});

Parameters:

NameTypeRequiredDescription
folderIdstringYesFolder ID
type'user' | 'group' | 'domain' | 'anyone'NoPermission type
role'owner' | 'organizer' | 'fileOrganizer' | 'writer' | 'commenter' | 'reader'NoPermission role
emailAddressstringNoEmail address
domainstringNoDomain for domain-wide sharing

Shared Drives

Manage shared drives (Team Drives).

create

sharedDrives.create

Create a new shared drive.

const drive = await corsair.googledrive.api.sharedDrives.create({
    name: "Team Drive",
});

Parameters:

NameTypeRequiredDescription
namestringYesDrive name

get

sharedDrives.get

Get a specific shared drive.

const drive = await corsair.googledrive.api.sharedDrives.get({
    driveId: "drive-id",
});

Parameters:

NameTypeRequiredDescription
driveIdstringYesDrive ID

list

sharedDrives.list

List shared drives.

const drives = await corsair.googledrive.api.sharedDrives.list({
    pageSize: 10,
});

Parameters:

NameTypeRequiredDescription
pageSizenumberNoNumber of results
pageTokenstringNoPage token

update

sharedDrives.update

Update a shared drive.

await corsair.googledrive.api.sharedDrives.update({
    driveId: "drive-id",
    name: "Updated Drive Name",
});

Parameters:

NameTypeRequiredDescription
driveIdstringYesDrive ID
namestringNoNew drive name

delete

sharedDrives.delete

Delete a shared drive.

await corsair.googledrive.api.sharedDrives.delete({
    driveId: "drive-id",
});

Parameters:

NameTypeRequiredDescription
driveIdstringYesDrive ID to delete

Search for files and folders.

filesAndFolders

search.filesAndFolders

Search for files and folders.

const results = await corsair.googledrive.api.search.filesAndFolders({
    q: "name contains 'document'",
    pageSize: 10,
});

Parameters:

NameTypeRequiredDescription
qstringNoSearch query
pageSizenumberNoNumber of results
pageTokenstringNoPage token
spacesstringNoSpaces to search
orderBystringNoSort order