目次
DriveAppの概要
DriveAppとは、Google Apps ScriptでGoogleドライブ上のファイルやフォルダを扱うために利用するコードのことです。DriveAppに用意されているメソッドを利用すれば、Googleドライブ上のファイルやフォルダを作成したり、編集したり、検索したりというような処理を実行することができます。
クラス名一覧
※クリックすると対象場所にジャンプします
列挙型一覧
※クリックすると対象場所にジャンプします
クラス別メソッド名一覧
Class DriveApp
| メソッド名 | 返り値 | 簡単な説明 |
|---|---|---|
| addFile | Folder | マイドライブにファイルを所属させる |
| addFolder | Folder | マイドライブにフォルダを所属させる |
| continueFileIterator | FileIterator | トークンを使ってファイルイテレータを途中から再開させる |
| continueFolderIterator | FolderIterator | トークンを使ってフォルダイテレータを途中から再開させる |
| createFile | File | マイドライブにファイルを作成する |
| createFolder | Folder | マイドライブにフォルダを作成する |
| getFileById | File | ファイルIDでファイルを取得する |
| getFiles | FileIterator | マイドライブ直下のすべてのファイルを取得する |
| getFilesByName | FileIterator | マイドライブ直下で指定した名前のファイルをすべて取得する |
| getFilesByType | FileIterator | マイドライブ直下の指定した形式のファイルをすべて取得する |
| getFolderById | Folder | フォルダIDでフォルダを取得する |
| getFolders | FolderIterator | マイドライブ直下のフォルダをすべて取得する |
| getFoldersByName | FolderIterator | マイドライブ直下で指定した名前のフォルダをすべて取得する |
| getRootFolder | Folder | マイドライブを取得 |
| getStorageLimit | Integer | ストレージの上限値を取得する |
| getStorageUsed | Integer | 使用済みストレージ容量を取得する |
| getTrashedFiles | FileIterator | ゴミ箱に入っているファイルをすべて取得する |
| getTrashedFolders | FolderIterator | ゴミ箱に入っているフォルダをすべて取得する |
| removeFile | Folder | ファイルからマイドライブの所属を削除する |
| removeFolder | Folder | フォルダからマイドライブの所属を削除する |
| searchFiles | FileIterator | 条件に合致するファイルを取得する |
| searchFolders | FolderIterator | 条件に合致するフォルダを取得する |
Class File
| メソッド名 | 返り値 | 簡単な説明 |
|---|---|---|
| addCommenter | File | ファイルへのコメント権限を付与する |
| addCommenters | File | ファイルへのコメント権限を一括で付与する |
| addEditor | File | ファイルへの編集権限を付与する |
| addEditors | File | ファイルへの編集権限を一括で付与する |
| addViewer | File | ファイルへの閲覧権限を付与する |
| addViewers | File | ファイルへの閲覧権限を一括で付与する |
| getAccess | Permission | 対象アカウントのアクセス権限を取得 |
| getAs | Blob | ファイル形式を変換してBlobを取得 |
| getBlob | Blob | Blobを取得 |
| getDateCreated | Date | ファイル作成日を取得 |
| getDescription | String | ファイルの説明を取得 |
| getDownloadUrl | String | ダウンロード用URLを取得 |
| getEditors | User[] | 編集者を配列で取得 |
| getId | String | ファイルIDを取得 |
| getLastUpdated | Date | 最終更新日を取得 |
| getMimeType | String | MIMEタイプを取得 |
| getName | String | ファイル名を取得 |
| getOwner | User | オーナーアカウントを取得 |
| getParents | FolderIterator | 親フォルダを取得 |
| getResourceKey | String | リソースキーを取得 |
| getSecurityUpdateEligible | Boolean | セキュリティアップデート適用有無を取得 |
| getSecurityUpdateEnabled | Boolean | 共有リンクURLにリソースキーが必要か取得 |
| getSharingAccess | Access | 一般的なアクセス範囲を取得 |
| getSharingPermission | Permission | 一般的なアクセス権限を取得 |
| getSize | Integer | ファイルサイズを取得 |
| getTargetId | String | ショートカットの参照元ファイルIDを取得 |
| getTargetMimeType | String | ショートカットの参照元ファイルのMIMEタイプを取得 |
| getTargetResourceKey | String | ショートカットの参照元ファイルのリソースキーを取得 |
| getThumbnail | Blob | サムネイル画像を取得 |
| getUrl | String | ファイルのURLを取得 |
| getViewers | User[] | 閲覧者を配列で取得 |
| isShareableByEditors | Boolean | 編集者が他のユーザーにファイルを共有できるかを真偽値で取得 |
| isStarred | Boolean | スター付きかどうかを真偽値で取得 |
| isTrashed | Boolean | ゴミ箱に入れられているかを真偽値で取得 |
| makeCopy | File | ファイルをコピーする |
| removeCommenter | File | コメント権限を削除する |
| removeEditor | File | 編集権限を削除する |
| removeViewer | File | 閲覧権限を削除する |
| revokePermissions | File | 対象アカウントから共有権限を削除する |
| setContent | File | ファイル内容を上書きする |
| setDescription | File | 説明を追加する |
| setName | File | ファイル名を設定する |
| setOwner | File | ファイルのオーナーを設定する |
| setSecurityUpdateEnabled | File | 共有リンクURLにリソースキーが必要かどうかを設定する |
| setShareableByEditors | File | 編集者が他のユーザーにファイルを共有できるかを設定する |
| setSharing | File | 共有権限を設定する |
| setStarred | File | スターをつける |
| setTrashed | File | ゴミ箱に捨てる |
Class FileIterator
| メソッド名 | 返り値 | 簡単な説明 |
|---|---|---|
| getContinuationToken | String | あとで再開用のトークンを取得 |
| hasNext | Boolean | nextでファイルが返されるかを真偽値で取得 |
| next | File | 次のファイルを取得 |
Class Folder
| メソッド名 | 返り値 | 簡単な説明 |
|---|---|---|
| addEditor | Folder | フォルダへの編集権限をを付与する |
| addEditors | Folder | フォルダへの編集権限を一括で付与する |
| addViewer | Folder | フォルダへの閲覧権限を付与する |
| addViewers | Folder | フォルダへの閲覧権限を一括で付与する |
| addFile | Folder | フォルダにファイルを追加 |
| addFolder | Folder | フォルダに子フォルダを追加 |
| createFile | File | ファイルを作成する |
| createFolder | Folder | フォルダを作成する |
| getAccess | Permission | 対象アカウントのアクセス権限を取得 |
| getDateCreated | Date | ファイル作成日を取得 |
| getDescription | String | ファイルの説明を取得 |
| getEditors | User[] | 編集者を配列で取得 |
| getFiles | FileIterator | すべてのファイルを取得 |
| getFilesByName | FileIterator | 指定した名前のファイルをすべて取得する |
| getFilesByType | FileIterator | 指定した形式のファイルをすべて取得する |
| getFolders | FolderIterator | 子フォルダをすべて取得する |
| getFoldersByName | FolderIterator | 指定した名前のフォルダをすべて取得する |
| getId | String | ファイルIDを取得 |
| getLastUpdated | Date | 最終更新日を取得 |
| getName | String | ファイル名を取得 |
| getOwner | User | オーナーアカウントを取得 |
| getParents | FolderIterator | 親フォルダを取得 |
| getResourceKey | String | リソースキーを取得 |
| getSecurityUpdateEligible | Boolean | セキュリティアップデート適用有無を取得 |
| getSecurityUpdateEnabled | Boolean | 共有リンクURLにリソースキーが必要か取得 |
| getSharingAccess | Access | 一般的なアクセス範囲を取得 |
| getSharingPermission | Permission | 一般的なアクセス権限を取得 |
| getSize | Integer | フォルダサイズを取得 |
| getUrl | String | ファイルのURLを取得 |
| getViewers | User[] | 閲覧者を配列で取得 |
| isShareableByEditors | Boolean | 編集者が他のユーザーにファイルを共有できるかを真偽値で取得 |
| isStarred | Boolean | スター付きかどうかを真偽値で取得 |
| isTrashed | Boolean | ゴミ箱に入れられているかを真偽値で取得 |
| removeEditor | Folder | 編集者を削除する |
| removeFile | Folder | ファイルからフォルダの所属を削除する |
| removeFolder | Folder | フォルダからフォルダの所属を削除する |
| removeViewer | Folder | 閲覧者を削除する |
| revokePermissions | Folder | 対象アカウントから共有権限を削除する |
| searchFiles | FileIterator | 条件に合致するファイルを取得する |
| searchFolders | FolderIterator | 条件に合致するフォルダを取得する |
| setDescription | Folder | 説明を追加する |
| setName | Folder | フォルダ名を設定する |
| setOwner | Folder | フォルダのオーナーを設定する |
| setSecurityUpdateEnabled | Folder | 共有リンクURLにリソースキーが必要かどうかを設定する |
| setShareableByEditors | Folder | 編集者が他のユーザーにフォルダを共有できるかを設定する |
| setSharing | Folder | 共有権限を設定する |
| setStarred | Folder | スターをつける |
| setTrashed | Folder | ゴミ箱に捨てる |
Class FolderIterator
| メソッド名 | 返り値 | 簡単な説明 |
|---|---|---|
| getContinuationToken | String | あとで再開用のトークンを取得 |
| hasNext | Boolean | nextでフォルダが返されるかを真偽値で取得 |
| next | Folder | 次のフォルダを取得 |
Class User
| メソッド名 | 返り値 | 簡単な説明 |
|---|---|---|
| getDomain | String | ユーザーアカウントのドメインを取得 |
| getEmail | String | アドレスを取得 |
| getName | String | ユーザー名を取得 |
| getPhotoUrl | String | ユーザーの写真URLを取得 |
列挙型名一覧
Enums Access
この列挙型はアカウントに対してアクセス許可をされた個々のユーザーとは別に、ファイルやフォルダにアクセスできるユーザーのクラスを表して言います。下記表のプロパティ名はDriveApp.Access.プロパティ名という形で利用することができます。
/*マイドライブ直下に『共有フォルダ』というフォルダを作成し、
* 誰でも編集ができる状態に設定します。ログインは必要ありません。
*ドメイン管理者はドメイン内のGoogle Workspaceユーザーに対してこの設定を禁止することができます。
*/
function setAccess() {
let folder = DriveApp.createFolder("共有フォルダ");
folder.setSharing(DriveApp.Access.ANYONE, DriveApp.Access.ANYONE);
}| プロパティ | タイプ | 説明 |
|---|---|---|
| ANYONE | Enum | インターネットに接続できるユーザーであれば誰でも検索やアクセスができます。ログインは必要ありません。ドメイン管理者はこの設定を無効にすることができます。その場合、このプロパティを設定しようとするとエラーになります。 |
| ANYONE_WITH_LINK | Enum | インターネットに接続でき、リンクを知っているユーザーであれば誰でもアクセスができます。ログインは必要ありません。ドメイン管理者はこの設定を無効にすることができます。その場合、このプロパティを設定しようとするとエラーになります。 |
| DOMAIN | Enum | 同一ドメイン内のユーザーであれば誰でも検索やアクセスができます。ログインが必要です。この設定にはGSuiteドメインが必要です。ドメイン管理者はこの設定を無効にすることができます。その場合、このプロパティを設定しようとするとエラーになります。 |
| DOMAIN_WITH_LINK | Enum | 同一ドメインで、リンクを知っているユーザーであれば誰でもアクセスができます。ログインが必要です。この設定にはGSuiteドメインが必要です。ドメイン管理者はこの設定を無効にすることができます。その場合、このプロパティを設定しようとするとエラーになります。 |
| PRIVATE | Enum | 共有権限を付与されたユーザーのみアクセスすることができます。アクセスにはログインが必要です。 |
Enums Permission
この列挙型はアカウントに対してアクセス許可をされた個々のユーザーとは別に、ファイルやフォルダに対するユーザーの権限を表して言います。下記表のプロパティ名はDriveApp.Permission.プロパティ名という形で利用することができます。
/*マイドライブ直下に『共有フォルダ』というフォルダを作成し、
* 誰でも編集ができる状態に設定します。ログインは必要ありません。
*ドメイン管理者はドメイン内のGoogle Workspaceユーザーに対してこの設定を禁止することができます。
*/
function setPermission() {
let folder = DriveApp.createFolder("共有フォルダ");
folder.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.EDIT);
}| プロパティ | タイプ | 説明 |
|---|---|---|
| VIEW | Enum | アクセスできるユーザーに対して閲覧権限を付与します。 |
| EDIT | Enum | アクセスできるユーザーに対して編集権限を付与します。File.setShareableByEditorsでfalseに設定されてない限り、編集ユーザーは共有権限を変更することができます。 |
| COMMENT | Enum | アクセスできるユーザーに対してコメント権限を付与します。コメント権限を持っているユーザーは閲覧、コピー、コメントを残す機能が利用できます。 |
| OWNER | Enum | ファイルやフォルダのオーナーの場合はこのプロパティが返り値として取得されます。File.setSharingでこの値を渡すとエラーになります。 |
| ORGANIZER | Enum | 共有ドライブのコンテンツ管理者の場合はこのプロパティが返り値として取得されます。File.setSharingでこの値を渡すとエラーになります。 |
| NONE | Enum | ユーザーはファイルやフォルダに対していずれの権限も持っていない場合にこのプロパティが返り値として取得されます。File.setSharingでこの値を渡すとAccess.ANYONEと一緒に渡さない限りエラーになります。 |
