Drive Service

ドライブ

このサービスを使用すると、スクリプトで Google ドライブ内のファイルやフォルダの作成、検索、変更を行えます。組み込みのドライブ サービスは使いやすいですが、いくつかの制限があります。最新の機能とサポートを利用し、共有ドライブ内のファイルやフォルダにアクセスするには、高度なドライブ サービスを使用します。

スクリプトでデフォルトの Cloud プロジェクトではなく標準の Cloud プロジェクトを使用している場合は、Drive API を手動で有効にする必要があります。標準の Cloud プロジェクトで、ドライブ API をオンにします。

Drive API を有効にする

次のコードサンプルは、ユーザーの [マイドライブ] フォルダ内の各ファイルの名前をログに記録する方法を示しています。
// Logs the name of every file in the user's Drive.
var files = DriveApp.getFiles();
while (files.hasNext()) {
  var file = files.next();
  console.log(file.getName());
}

クラス

名前概要
Access明示的にアクセス権が付与された個々のユーザー以外に、ファイルやフォルダにアクセスできるユーザーのクラスを表す列挙型。
DriveAppスクリプトが Google ドライブ内のファイルやフォルダを作成、検索、変更できるようにします。
FileGoogle ドライブ内のファイル。
FileIteratorスクリプトが大量のファイル コレクションを反復処理できるようにするイテレータ。
FolderGoogle ドライブ内のフォルダ。
FolderIteratorスクリプトでフォルダの大きなコレクションを反復処理できるオブジェクト。
Permissionファイルやフォルダにアクセスできるユーザーに付与された権限を表す列挙型。明示的にアクセス権が付与された個々のユーザーは除きます。
UserGoogle ドライブ内のファイルに関連付けられているユーザー。

Access

プロパティ

プロパティタイプ説明
ANYONEEnumインターネット上の誰でも検索とアクセスができます。
ANYONE_WITH_LINKEnumリンクを知っている全員がアクセスできます。
DOMAINEnumドメイン内のユーザーが検索、アクセスできます。
DOMAIN_WITH_LINKEnumリンクを知っているドメイン内のユーザーがアクセスできます。
PRIVATEEnum明示的に権限を付与されたユーザーだけがアクセスできます。

DriveApp

プロパティ

プロパティタイプ説明
AccessAccess明示的にアクセス権が付与された個々のユーザー以外に、ファイルやフォルダにアクセスできるユーザーのクラスを表す列挙型。
PermissionPermissionファイルやフォルダにアクセスできるユーザーに付与された権限を表す列挙型。明示的にアクセス権が付与された個々のユーザーは除きます。

メソッド

メソッド戻り値の型概要
continueFileIterator(continuationToken)FileIterator前のイテレータの継続トークンを使用して、ファイル イテレーションを再開します。
continueFolderIterator(continuationToken)FolderIterator前のイテレータの継続トークンを使用して、フォルダの反復を再開します。
createFile(blob)File任意のデータの指定された Blob から、ユーザーのドライブのルートにファイルを作成します。
createFile(name, content)File指定された名前と内容で、ユーザーのドライブのルートにテキスト ファイルを作成します。
createFile(name, content, mimeType)File指定された名前、コンテンツ、MIME タイプで、ユーザーのドライブのルートにファイルを作成します。
createFolder(name)Folderユーザーのドライブのルートに、指定された名前のフォルダを作成します。
createShortcut(targetId)File指定されたドライブ アイテム ID へのショートカットを作成して返します。
createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)File指定されたドライブ アイテム ID とリソースキーへのショートカットを作成して返します。
enforceSingleParent(value)voidアイテムの親に影響するすべての呼び出しに対して enforceSingleParent 動作を有効または無効にします。
getFileById(id)File指定された ID のファイルを取得します。
getFileByIdAndResourceKey(id, resourceKey)File指定された ID とリソースキーを持つファイルを取得します。
getFiles()FileIteratorユーザーのドライブ内のすべてのファイルのコレクションを取得します。
getFilesByName(name)FileIterator指定された名前を持つユーザーのドライブ内のすべてのファイルのコレクションを取得します。
getFilesByType(mimeType)FileIterator指定された MIME タイプのファイルがユーザーのドライブに存在する場合、そのすべてのファイルを含むコレクションを取得します。
getFolderById(id)Folder指定された ID のフォルダを取得します。
getFolderByIdAndResourceKey(id, resourceKey)Folder指定された ID とリソースキーを持つフォルダを取得します。
getFolders()FolderIteratorユーザーのドライブ内のすべてのフォルダのコレクションを取得します。
getFoldersByName(name)FolderIterator指定された名前のフォルダがユーザーのドライブに存在する場合、そのフォルダのコレクションを取得します。
getRootFolder()Folderユーザーのドライブのルートにあるフォルダを取得します。
getStorageLimit()Integerユーザーがドライブに保存できるバイト数を取得します。
getStorageUsed()Integerユーザーが現在ドライブに保存しているバイト数を取得します。
getTrashedFiles()FileIteratorユーザーのドライブのゴミ箱にあるすべてのファイルのコレクションを取得します。
getTrashedFolders()FolderIteratorユーザーのドライブのゴミ箱にあるすべてのフォルダのコレクションを取得します。
searchFiles(params)FileIterator指定された検索条件に一致するユーザーのドライブ内のすべてのファイルのコレクションを取得します。
searchFolders(params)FolderIterator指定された検索条件に一致するユーザーのドライブ内のすべてのフォルダのコレクションを取得します。

File

メソッド

メソッド戻り値の型概要
addCommenter(emailAddress)File指定されたユーザーを File のコメント投稿者のリストに追加します。
addCommenter(user)File指定されたユーザーを File のコメント投稿者のリストに追加します。
addCommenters(emailAddresses)File指定されたユーザーの配列を File のコメント投稿者のリストに追加します。
addEditor(emailAddress)File指定されたユーザーを File の編集者のリストに追加します。
addEditor(user)File指定されたユーザーを File の編集者のリストに追加します。
addEditors(emailAddresses)File指定されたユーザーの配列を File の編集者のリストに追加します。
addViewer(emailAddress)File指定されたユーザーを File の閲覧者リストに追加します。
addViewer(user)File指定されたユーザーを File の閲覧者リストに追加します。
addViewers(emailAddresses)File指定されたユーザーの配列を File の視聴者リストに追加します。
getAccess(email)Permission特定のユーザーに付与された権限を取得します。
getAccess(user)Permission特定のユーザーに付与された権限を取得します。
getAs(contentType)Blobこのオブジェクト内のデータを、指定されたコンテンツ タイプに変換された blob として返します。
getBlob()Blobこのオブジェクト内のデータを blob として返します。
getDateCreated()DateFile の作成日を取得します。
getDescription()StringFile の説明を取得します。
getDownloadUrl()Stringファイルのダウンロードに使用できる URL を取得します。
getEditors()User[]この File の編集者のリストを取得します。
getId()StringFile の ID を取得します。
getLastUpdated()DateFile が最後に更新された日付を取得します。
getMimeType()Stringファイルの MIME タイプを取得します。
getName()StringFile の名前を取得します。
getOwner()Userファイルのオーナーを取得します。
getParents()FolderIteratorFile の直近の親であるフォルダのコレクションを取得します。
getResourceKey()Stringリンクを使用して共有されたアイテムにアクセスするために必要な File のリソースキーを取得します。
getSecurityUpdateEligible()Booleanこの File が、リンクを使用して共有されたときにアクセスにリソースキーを必要とするセキュリティ アップデートを適用できるかどうかを取得します。
getSecurityUpdateEnabled()Booleanこの File がリンクを使用して共有されるときに、アクセスにリソースキーが必要かどうかを取得します。
getSharingAccess()Access明示的にアクセス権が付与された個々のユーザーを除き、どのクラスのユーザーが File にアクセスできるかを取得します。
getSharingPermission()PermissionFile にアクセスできるユーザーに付与された権限を取得します。明示的にアクセス権が付与された個々のユーザーは除きます。
getSize()Integerドライブに File を保存するために使用されるバイト数を取得します。
getTargetId()String|nullこれがショートカットの場合、指しているアイテムの ID を返します。
getTargetMimeType()String|nullこれがショートカットの場合、参照先のアイテムの MIME タイプを返します。
getTargetResourceKey()String|nullファイルがショートカットの場合、そのファイルが指すアイテムのリソースキーを返します。
getThumbnail()Blob|nullファイルのサムネイル画像を取得します。サムネイルが存在しない場合は null を返します。
getUrl()Stringドライブやドキュメントなどの Google アプリで File を開くために使用できる URL を取得します。
getViewers()User[]この File の閲覧者とコメント投稿者のリストを取得します。
isShareableByEditors()BooleanFile の編集権限を持つユーザーが、他のユーザーと共有したり、権限を変更したりできるかどうかを指定します。
isStarred()BooleanFile がユーザーのドライブでスター付きになっているかどうかを判断します。
isTrashed()BooleanFile がユーザーのドライブのゴミ箱にあるかどうかを判断します。
makeCopy()Fileファイルのコピーを作成します。
makeCopy(destination)File移動先のディレクトリにファイルのコピーを作成します。
makeCopy(name)Fileファイルのコピーを作成し、指定された名前を付けます。
makeCopy(name, destination)File宛先ディレクトリにファイルのコピーを作成し、指定された名前を付けます。
moveTo(destination)Fileこのアイテムを指定された移動先フォルダに移動します。
removeCommenter(emailAddress)File指定されたユーザーを File のコメント投稿者リストから削除します。
removeCommenter(user)File指定されたユーザーを File のコメント投稿者リストから削除します。
removeEditor(emailAddress)File指定されたユーザーを File の編集者リストから削除します。
removeEditor(user)File指定されたユーザーを File の編集者リストから削除します。
removeViewer(emailAddress)File指定されたユーザーを File の視聴者とコメント投稿者のリストから削除します。
removeViewer(user)File指定されたユーザーを File の視聴者とコメント投稿者のリストから削除します。
revokePermissions(emailAddress)File指定されたユーザーに付与された File へのアクセス権を取り消します。
revokePermissions(user)File指定されたユーザーに付与された File へのアクセス権を取り消します。
setContent(content)File指定された置換でファイルの内容を上書きします。
setDescription(description)FileFile の説明を設定します。
setName(name)FileFile の名前を設定します。
setOwner(emailAddress)FileFile のオーナーを変更します。
setOwner(user)FileFile のオーナーを変更します。
setSecurityUpdateEnabled(enabled)Fileリンクを使用して共有されたときに、File がアクセスにリソースキーを必要とするかどうかを設定します。
setShareableByEditors(shareable)FileFile の編集権限を持つユーザーが他のユーザーと共有したり、権限を変更したりできるかどうかを設定します。
setSharing(accessType, permissionType)File明示的にアクセス権が付与された個々のユーザーを除き、どのクラスのユーザーが File にアクセスできるか、また、それらのユーザーにどのような権限が付与されるかを設定します。
setStarred(starred)Fileユーザーのドライブで File にスターを付けるかどうかを設定します。
setTrashed(trashed)FileFile がユーザーのドライブのゴミ箱にあるかどうかを設定します。

FileIterator

メソッド

メソッド戻り値の型概要
getContinuationToken()String後でこのイテレーションを再開するために使用できるトークンを取得します。
hasNext()Booleannext() の呼び出しでアイテムが返されるかどうかを判断します。
next()Fileファイルまたはフォルダのコレクション内の次のアイテムを取得します。

Folder

メソッド

メソッド戻り値の型概要
addEditor(emailAddress)Folder指定されたユーザーを Folder の編集者のリストに追加します。
addEditor(user)Folder指定されたユーザーを Folder の編集者のリストに追加します。
addEditors(emailAddresses)Folder指定されたユーザーの配列を Folder の編集者のリストに追加します。
addViewer(emailAddress)Folder指定されたユーザーを Folder の閲覧者リストに追加します。
addViewer(user)Folder指定されたユーザーを Folder の閲覧者リストに追加します。
addViewers(emailAddresses)Folder指定されたユーザーの配列を Folder の視聴者リストに追加します。
createFile(blob)File任意のデータの指定された Blob から現在のフォルダにファイルを作成します。
createFile(name, content)File現在のフォルダに、指定された名前と内容のテキスト ファイルを作成します。
createFile(name, content, mimeType)File指定された名前、内容、MIME タイプで、現在のフォルダにファイルを作成します。
createFolder(name)Folder現在のフォルダに、指定された名前のフォルダを作成します。
createShortcut(targetId)File指定されたドライブ アイテム ID へのショートカットを作成して返します。
createShortcutForTargetIdAndResourceKey(targetId, targetResourceKey)File指定されたドライブ アイテム ID とリソースキーへのショートカットを作成して返します。
getAccess(email)Permission特定のユーザーに付与された権限を取得します。
getAccess(user)Permission特定のユーザーに付与された権限を取得します。
getDateCreated()DateFolder の作成日を取得します。
getDescription()StringFolder の説明を取得します。
getEditors()User[]この Folder の編集者のリストを取得します。
getFiles()FileIterator現在のフォルダの子であるすべてのファイルのコレクションを取得します。
getFilesByName(name)FileIterator現在のフォルダの子で、指定された名前を持つすべてのファイルのコレクションを取得します。
getFilesByType(mimeType)FileIterator現在のフォルダの子で、指定された MIME タイプのすべてのファイルのコレクションを取得します。
getFolders()FolderIterator現在のフォルダの子であるすべてのフォルダのコレクションを取得します。
getFoldersByName(name)FolderIterator現在のフォルダの子で、指定された名前を持つすべてのフォルダのコレクションを取得します。
getId()StringFolder の ID を取得します。
getLastUpdated()DateFolder が最後に更新された日付を取得します。
getName()StringFolder の名前を取得します。
getOwner()Userこの Folder のオーナーを取得します。
getParents()FolderIteratorFolder の直近の親であるフォルダのコレクションを取得します。
getResourceKey()Stringリンクを使用して共有されたアイテムにアクセスするために必要な Folder のリソースキーを取得します。
getSecurityUpdateEligible()Booleanこの Folder が、リンクを使用して共有されたときにアクセスにリソースキーを必要とするセキュリティ アップデートを適用できるかどうかを取得します。
getSecurityUpdateEnabled()Booleanこの Folder がリンクを使用して共有されるときに、アクセスにリソースキーが必要かどうかを取得します。
getSharingAccess()Access明示的にアクセス権が付与された個々のユーザーを除き、どのクラスのユーザーが Folder にアクセスできるかを取得します。
getSharingPermission()PermissionFolder にアクセスできるユーザーに付与された権限を取得します。明示的にアクセス権が付与された個々のユーザーは除きます。
getSize()Integerドライブに Folder を保存するために使用されるバイト数を取得します。
getUrl()Stringドライブやドキュメントなどの Google アプリで Folder を開くために使用できる URL を取得します。
getViewers()User[]この Folder の閲覧者とコメント投稿者のリストを取得します。
isShareableByEditors()BooleanFolder の編集権限を持つユーザーが、他のユーザーと共有したり、権限を変更したりできるかどうかを指定します。
isStarred()BooleanFolder がユーザーのドライブでスター付きになっているかどうかを判断します。
isTrashed()BooleanFolder がユーザーのドライブのゴミ箱にあるかどうかを判断します。
moveTo(destination)Folderこのアイテムを指定された移動先フォルダに移動します。
removeEditor(emailAddress)Folder指定されたユーザーを Folder の編集者リストから削除します。
removeEditor(user)Folder指定されたユーザーを Folder の編集者リストから削除します。
removeViewer(emailAddress)Folder指定されたユーザーを Folder の視聴者とコメント投稿者のリストから削除します。
removeViewer(user)Folder指定されたユーザーを Folder の視聴者とコメント投稿者のリストから削除します。
revokePermissions(emailAddress)Folder指定されたユーザーに付与された Folder へのアクセス権を取り消します。
revokePermissions(user)Folder指定されたユーザーに付与された Folder へのアクセス権を取り消します。
searchFiles(params)FileIterator現在のフォルダの子で、指定された検索条件に一致するすべてのファイルのコレクションを取得します。
searchFolders(params)FolderIterator現在のフォルダの子フォルダで、指定された検索条件に一致するすべてのフォルダのコレクションを取得します。
setDescription(description)FolderFolder の説明を設定します。
setName(name)FolderFolder の名前を設定します。
setOwner(emailAddress)FolderFolder のオーナーを変更します。
setOwner(user)FolderFolder のオーナーを変更します。
setSecurityUpdateEnabled(enabled)Folderリンクを使用して共有されたときに、Folder がアクセスにリソースキーを必要とするかどうかを設定します。
setShareableByEditors(shareable)FolderFolder の編集権限を持つユーザーが他のユーザーと共有したり、権限を変更したりできるかどうかを設定します。
setSharing(accessType, permissionType)Folder明示的にアクセス権が付与された個々のユーザーを除き、どのクラスのユーザーが Folder にアクセスできるか、また、それらのユーザーにどのような権限が付与されるかを設定します。
setStarred(starred)Folderユーザーのドライブで Folder にスターを付けるかどうかを設定します。
setTrashed(trashed)FolderFolder がユーザーのドライブのゴミ箱にあるかどうかを設定します。

FolderIterator

メソッド

メソッド戻り値の型概要
getContinuationToken()String後でこのイテレーションを再開するために使用できるトークンを取得します。
hasNext()Booleannext() の呼び出しでアイテムが返されるかどうかを判断します。
next()Folderファイルまたはフォルダのコレクション内の次のアイテムを取得します。

Permission

プロパティ

プロパティタイプ説明
VIEWEnumファイルやフォルダにアクセスできるユーザーは、閲覧またはコピーのみを行うことができます。
EDITEnumファイルやフォルダにアクセスできるユーザーは、そのファイルやフォルダを編集できます。
COMMENTEnumファイルやフォルダにアクセスできるユーザーは、閲覧、コピー、コメントの追加のみを行うことができます。
OWNEREnumユーザーがファイルまたはフォルダのオーナーである。
ORGANIZEREnum共有ドライブ内のファイルやフォルダを整理できるユーザー。
FILE_ORGANIZEREnum共有ドライブ内のコンテンツの編集、ゴミ箱への移動、移動ができるユーザー。
NONEEnumユーザーには、ファイルまたはフォルダに対する権限がありません。

User

メソッド

メソッド戻り値の型概要
getDomain()String|nullユーザーのアカウントに関連付けられているドメイン名を取得します。
getEmail()String|nullユーザーのメールアドレスを取得します。
getName()String|nullユーザーの名前を取得します。
getPhotoUrl()String|nullユーザーの写真の URL を取得します。