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指定された Google ドライブ アイテム 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これがショートカットの場合、指しているアイテムの ID を返します。
getTargetMimeType()Stringこれがショートカットの場合、参照先のアイテムの MIME タイプを返します。
getTargetResourceKey()Stringファイルがショートカットの場合、そのショートカットが指すアイテムのリソースキーを返します。
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)FileFile にアクセスできるユーザーのクラスと、明示的にアクセス権が付与された個々のユーザーに加えて、それらのユーザーに付与される権限を設定します。
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指定された Google ドライブ アイテム 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)FolderFolder にアクセスできるユーザーのクラスと、明示的にアクセス権が付与された個々のユーザーに加えて、それらのユーザーに付与される権限を設定します。
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 を取得します。