List Files in a Google Drive Folder

Apps Script lets you iterate over all files in a Drive folder using DriveApp.getFolderById() and .getFiles(). This is useful for generating file inventories, auditing contents, or writing file metadata back to a Google Sheet.

Listing All Files in a Folder

function listFilesInFolder() { var folder = DriveApp.getFolderById("YOUR_FOLDER_ID"); var files = folder.getFiles(); while (files.hasNext()) { var file = files.next(); Logger.log(file.getName() + " | " + file.getMimeType() + " | " + file.getDateCreated()); } }

Writing File List to a Sheet

This example scans the North - Sales Reports folder and writes a file inventory to a new sheet tab:

function exportFileInventoryToSheet() { var folder = DriveApp.getFolderById("YOUR_NORTH_FOLDER_ID"); var files = folder.getFiles(); var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName("File Inventory") || ss.insertSheet("File Inventory"); sheet.clearContents(); sheet.appendRow(["File Name", "Type", "Size (bytes)", "Created", "URL"]); while (files.hasNext()) { var file = files.next(); sheet.appendRow([ file.getName(), file.getMimeType(), file.getSize(), file.getDateCreated(), file.getUrl() ]); } Logger.log("Inventory written to sheet."); }

Listing Files Across All Region Subfolders

This iterates over each region subfolder under a parent and builds a combined inventory:

function listAllRegionFiles() { var parentFolder = DriveApp.getFolderById("YOUR_ROOT_FOLDER_ID"); var subfolders = parentFolder.getFolders(); var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName("All Files") || ss.insertSheet("All Files"); sheet.clearContents(); sheet.appendRow(["Region", "File Name", "Created", "URL"]); while (subfolders.hasNext()) { var subfolder = subfolders.next(); var files = subfolder.getFiles(); while (files.hasNext()) { var file = files.next(); sheet.appendRow([ subfolder.getName(), file.getName(), file.getDateCreated(), file.getUrl() ]); } } Logger.log("Done listing all regional files."); }

With the Acme Corp folder structure, this produces a consolidated view of every sales report across North, East, South, and West — sorted by region.

Filtering Files by Type

To list only PDFs or Google Sheets within a folder:

function listPDFsOnly() { var folder = DriveApp.getFolderById("YOUR_FOLDER_ID"); var files = folder.getFilesByType(MimeType.PDF); while (files.hasNext()) { var file = files.next(); Logger.log("PDF: " + file.getName()); } }

Common MIME types: MimeType.PDF, MimeType.GOOGLE_SHEETS, MimeType.GOOGLE_DOCS, MimeType.CSV.