Skip to content

Object reference

Drive folder

A DriveApp.Folder is a container in Google Drive. Find one by name with DriveApp.getFoldersByName(name) or by ID with DriveApp.getFolderById(id).

DriveApp.Folder

Start here

Get this object first

Find a folder by its exact name with DriveApp.getFoldersByName(), then check hasNext() before calling next(). When you have the folder ID from its Drive URL, use DriveApp.getFolderById(id) instead.

Code.gs
function showSavedAttachmentFolderName() {
  const folders = DriveApp.getFoldersByName('Saved email attachments');
  if (!folders.hasNext()) throw new Error('Create a Drive folder named Saved email attachments first.');
  Logger.log(folders.next().getName());
}

Then use it

Common actions

Choose an action, then open its example only when you need the code.

Count the files in a folder

Logs the number of files in the named folder.

DriveApp.Folder
Show example code
Code.gs
function countSavedAttachments() {
  const folders = DriveApp.getFoldersByName('Saved email attachments');
  if (!folders.hasNext()) throw new Error('Create a Drive folder named Saved email attachments first.');
  const files = folders.next().getFiles();
  let count = 0;
  while (files.hasNext()) {
    files.next();
    count += 1;
  }
  Logger.log(count);
}

List file names inside a folder

Loops through getFiles() in the named folder and logs each file name.

DriveApp.FolderDriveApp.File
Show example code
Code.gs
function logFolderFileNames() {
  const folders = DriveApp.getFoldersByName('Saved email attachments');
  if (!folders.hasNext()) throw new Error('Create a Drive folder named Saved email attachments first.');
  const files = folders.next().getFiles();
  const names = [];
  while (files.hasNext()) {
    names.push(files.next().getName());
  }
  Logger.log(names.join(', ') || 'Folder is empty');
}

Log the folder URL and subfolder count

Logs the folder URL from getUrl() and the number of folders directly inside it from getFolders().

DriveApp.Folder
Show example code
Code.gs
function logFolderUrlAndSubfolderCount() {
  const folders = DriveApp.getFoldersByName('Saved email attachments');
  if (!folders.hasNext()) throw new Error('Create a Drive folder named Saved email attachments first.');
  const folder = folders.next();
  const subfolders = folder.getFolders();
  let count = 0;
  while (subfolders.hasNext()) {
    subfolders.next();
    count += 1;
  }
  Logger.log(folder.getUrl() + ' (' + count + ' subfolders)');
}

Technical reference

Exact names and signatures

Open method details when you need them.

At a glance

Service
DriveApp
Reference symbol
DriveApp.Folder
Object
Folder
Runtime
From signature data

Methods and signatures

Browse 51 methods

addEditor

From signature data Google source
  • addEditor(emailAddress: string): DriveApp.Folder
  • addEditor(user: User): DriveApp.Folder

addEditors

From signature data Google source
  • addEditors(emailAddresses: string[]): DriveApp.Folder

addFile

From signature data Google source
  • addFile(child: DriveApp.File): DriveApp.Folder

addFolder

From signature data Google source
  • addFolder(child: DriveApp.Folder): DriveApp.Folder

addViewer

From signature data Google source
  • addViewer(emailAddress: string): DriveApp.Folder
  • addViewer(user: User): DriveApp.Folder

addViewers

From signature data Google source
  • addViewers(emailAddresses: string[]): DriveApp.Folder

createFile

From signature data Google source
  • createFile(blob: BlobSource): DriveApp.File
  • createFile(name: string, content: string): DriveApp.File
  • createFile(name: string, content: string, mimeType: string): DriveApp.File

createFolder

From signature data Google source
  • createFolder(name: string): DriveApp.Folder

createShortcut

From signature data Google source
  • createShortcut(targetId: string): DriveApp.File

createShortcutForTargetIdAndResourceKey

From signature data Google source
  • createShortcutForTargetIdAndResourceKey(targetId: string, targetResourceKey: string): DriveApp.File

getAccess

From signature data Google source
  • getAccess(email: string): DriveApp.Permission
  • getAccess(user: User): DriveApp.Permission

getDateCreated

From signature data Google source
  • getDateCreated(): Date

getDescription

From signature data Google source
  • getDescription(): string

getEditors

From signature data Google source
  • getEditors(): User[]

getFiles

From signature data Google source
  • getFiles(): DriveApp.FileIterator

getFilesByName

From signature data Google source
  • getFilesByName(name: string): DriveApp.FileIterator

getFilesByType

From signature data Google source
  • getFilesByType(mimeType: string): DriveApp.FileIterator

getFolders

From signature data Google source
  • getFolders(): DriveApp.FolderIterator

getFoldersByName

From signature data Google source
  • getFoldersByName(name: string): DriveApp.FolderIterator

getId

From signature data Google source
  • getId(): string

getLastUpdated

From signature data Google source
  • getLastUpdated(): Date

getName

From signature data Google source
  • getName(): string

getOwner

From signature data Google source
  • getOwner(): User

getParents

From signature data Google source
  • getParents(): DriveApp.FolderIterator

getResourceKey

From signature data Google source
  • getResourceKey(): string

getSecurityUpdateEligible

From signature data Google source
  • getSecurityUpdateEligible(): boolean

getSecurityUpdateEnabled

From signature data Google source
  • getSecurityUpdateEnabled(): boolean

getSharingAccess

From signature data Google source
  • getSharingAccess(): DriveApp.Access

getSharingPermission

From signature data Google source
  • getSharingPermission(): DriveApp.Permission

getSize

From signature data Google source
  • getSize(): number

getUrl

From signature data Google source
  • getUrl(): string

getViewers

From signature data Google source
  • getViewers(): User[]

isShareableByEditors

From signature data Google source
  • isShareableByEditors(): boolean

isStarred

From signature data Google source
  • isStarred(): boolean

isTrashed

From signature data Google source
  • isTrashed(): boolean

moveTo

From signature data Google source
  • moveTo(destination: DriveApp.Folder): DriveApp.Folder

removeEditor

From signature data Google source
  • removeEditor(emailAddress: string): DriveApp.Folder
  • removeEditor(user: User): DriveApp.Folder

removeFile

From signature data Google source
  • removeFile(child: DriveApp.File): DriveApp.Folder

removeFolder

From signature data Google source
  • removeFolder(child: DriveApp.Folder): DriveApp.Folder

removeViewer

From signature data Google source
  • removeViewer(emailAddress: string): DriveApp.Folder
  • removeViewer(user: User): DriveApp.Folder

revokePermissions

From signature data Google source
  • revokePermissions(emailAddress: string): DriveApp.Folder
  • revokePermissions(user: User): DriveApp.Folder

searchFiles

From signature data Google source
  • searchFiles(query: string): DriveApp.FileIterator

searchFolders

From signature data Google source
  • searchFolders(query: string): DriveApp.FolderIterator

setDescription

From signature data Google source
  • setDescription(description: string): DriveApp.Folder

setName

From signature data Google source
  • setName(name: string): DriveApp.Folder

setOwner

From signature data Google source
  • setOwner(emailAddress: string): DriveApp.Folder
  • setOwner(user: User): DriveApp.Folder

setSecurityUpdateEnabled

From signature data Google source
  • setSecurityUpdateEnabled(enabled: boolean): DriveApp.Folder

setShareableByEditors

From signature data Google source
  • setShareableByEditors(shareable: boolean): DriveApp.Folder

setSharing

From signature data Google source
  • setSharing(accessType: DriveApp.Access, permissionType: DriveApp.Permission): DriveApp.Folder

setStarred

From signature data Google source
  • setStarred(starred: boolean): DriveApp.Folder

setTrashed

From signature data Google source
  • setTrashed(trashed: boolean): DriveApp.Folder

Need the whole workflow?

Return to a task guide

Task guides cover setup, permissions, expected results, and troubleshooting as well as object methods.

Browse Google Drive tasks