Drive Service

Водить машину

Эта служба позволяет скриптам создавать, находить и изменять файлы и папки в Google Диск. Хотя встроенная служба Диска проще в использовании, она имеет некоторые ограничения. Для получения самых актуальных функций и поддержки, а также для доступа к файлам или папкам на общих дисках используйте расширенную службу Диска .

Если ваш скрипт использует стандартный проект Cloud вместо проекта Cloud по умолчанию, вам необходимо вручную включить API Google Drive. В стандартном проекте Cloud включите API Google Drive:

Включите API Google Диска

Приведённый ниже пример кода показывает, как вывести в консоль имена каждого файла в папке «Мой диск» пользователя:
// 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 Перечисление, представляющее классы пользователей, имеющих доступ к файлу или папке, помимо отдельных пользователей, которым был явно предоставлен доступ.
Drive App Позволяет скриптам создавать, находить и изменять файлы и папки в Google Диск.
File Файл в Google Диске.
File Iterator Итератор, позволяющий скриптам перебирать потенциально большой набор файлов.
Folder Папка в Google Диске.
Folder Iterator Объект, позволяющий скриптам перебирать потенциально большой набор папок.
Permission Перечисление, представляющее собой список разрешений, предоставленных пользователям, имеющим доступ к файлу или папке, помимо отдельных пользователей, которым доступ был предоставлен явно.
User Пользователь, связанный с файлом в Google Диске.

Access

Характеристики

Свойство Тип Описание
ANYONE Enum Любой пользователь интернета может найти и получить к этому доступ.
ANYONE_WITH_LINK Enum Доступ может получить любой, у кого есть ссылка.
DOMAIN Enum Пользователи в вашей области смогут найти и получить доступ к информации.
DOMAIN_WITH_LINK Enum Пользователи в вашем домене, имеющие ссылку, смогут получить к ней доступ.
PRIVATE Enum Доступ имеют только лица, которым было предоставлено явное разрешение.

Drive App

Характеристики

Свойство Тип Описание
Access Access Перечисление, представляющее классы пользователей, имеющих доступ к файлу или папке, помимо отдельных пользователей, которым был явно предоставлен доступ.
Permission Permission Перечисление, представляющее собой список разрешений, предоставленных пользователям, имеющим доступ к файлу или папке, помимо отдельных пользователей, которым доступ был предоставлен явно.

Методы

Метод Тип возвращаемого значения Краткое описание
continue File Iterator(continuationToken) File Iterator Возобновляет итерацию по файлу, используя токен продолжения из предыдущего итератора.
continue Folder Iterator(continuationToken) Folder Iterator Возобновляет итерацию по папке, используя токен продолжения из предыдущего итератора.
create File(blob) File Создает файл в корневом каталоге Google Диска пользователя из заданного Blob с произвольными данными.
create File(name, content) File Создает текстовый файл в корневом каталоге Google Диска пользователя с заданным именем и содержимым.
create File(name, content, mimeType) File Создает файл в корневом каталоге Диска пользователя с заданным именем, содержимым и MIME-типом.
create Folder(name) Folder Создает папку в корневом каталоге Google Диска пользователя с заданным именем.
create Shortcut(targetId) File Создает ярлык для указанного идентификатора элемента Google Диска и возвращает его.
create Shortcut For Target Id And Resource Key(targetId, targetResourceKey) File Создает ярлык для указанного идентификатора элемента Google Диска и ключа ресурса и возвращает его.
enforce Single Parent(value) void Включает или отключает поведение enforceSingleParent для всех вызовов, затрагивающих родительские элементы.
get File By Id(id) File Получает файл с заданным идентификатором.
get File By Id And Resource Key(id, resourceKey) File Получает файл с заданным идентификатором и ключом ресурса.
get Files() File Iterator Получает коллекцию всех файлов на Диске пользователя.
get Files By Name(name) File Iterator Получает коллекцию всех файлов на Диске пользователя, имеющих заданное имя.
get Files By Type(mimeType) File Iterator Получает коллекцию всех файлов на Диске пользователя, имеющих заданный MIME-тип.
get Folder By Id(id) Folder Получает папку с заданным идентификатором.
get Folder By Id And Resource Key(id, resourceKey) Folder Получает папку с заданным идентификатором и ключом ресурса.
get Folders() Folder Iterator Получает коллекцию всех папок на Диске пользователя.
get Folders By Name(name) Folder Iterator Получает коллекцию всех папок на Диске пользователя, имеющих заданное имя.
get Root Folder() Folder Получает папку в корневом каталоге Google Диска пользователя.
get Storage Limit() Integer Получает количество байтов, которое пользователю разрешено хранить в Google Диске.
get Storage Used() Integer Получает количество байтов, которые пользователь в данный момент хранит в Google Диске.
get Trashed Files() File Iterator Получает список всех файлов в корзине пользовательского диска.
get Trashed Folders() Folder Iterator Получает список всех папок в корзине на Диске пользователя.
search Files(params) File Iterator Получает коллекцию всех файлов на Диске пользователя, соответствующих заданным критериям поиска.
search Folders(params) Folder Iterator Получает коллекцию всех папок на Диске пользователя, соответствующих заданным критериям поиска.

File

Методы

Метод Тип возвращаемого значения Краткое описание
add Commenter(emailAddress) File Добавить указанного пользователя в список комментаторов к File .
add Commenter(user) File Добавить указанного пользователя в список комментаторов к File .
add Commenters(emailAddresses) File Добавьте указанный массив пользователей в список комментаторов для File .
add Editor(emailAddress) File Добавляет указанного пользователя в список редакторов для File .
add Editor(user) File Добавляет указанного пользователя в список редакторов для File .
add Editors(emailAddresses) File Добавляет указанный массив пользователей в список редакторов для File .
add Viewer(emailAddress) File Добавляет указанного пользователя в список пользователей, просматривающих File .
add Viewer(user) File Добавляет указанного пользователя в список пользователей, просматривающих File .
add Viewers(emailAddresses) File Добавляет указанный массив пользователей в список пользователей, просматривающих File .
get Access(email) Permission Получает разрешение, предоставленное конкретному пользователю.
get Access(user) Permission Получает разрешение, предоставленное конкретному пользователю.
get As(contentType) Blob Возвращает данные, содержащиеся в этом объекте, в виде двоичных данных (blob), преобразованных в указанный тип содержимого.
get Blob() Blob Возвращает данные, содержащиеся в этом объекте, в виде двоичных данных (blob).
get Date Created() Date Получает дату создания File .
get Description() String Получает описание File .
get Download Url() String Получает URL-адрес, который можно использовать для загрузки файла.
get Editors() User[] Получает список редакторов для этого File .
get Id() String Получает идентификатор File .
get Last Updated() Date Получает дату последнего обновления File .
get Mime Type() String Получает MIME-тип файла.
get Name() String Получает имя File .
get Owner() User Получает владельца файла.
get Parents() Folder Iterator Получает набор папок, являющихся непосредственными родительскими папками для File .
get Resource Key() String Получает ключ ресурса File , необходимый для доступа к элементам, предоставленным по ссылке.
get Security Update Eligible() Boolean Определяет, подходит ли данный File для применения обновления безопасности, требующего ключа ресурса для доступа при его совместном использовании по ссылке.
get Security Update Enabled() Boolean Определяет, требуется ли ключ ресурса для доступа к этому File при его совместном использовании по ссылке.
get Sharing Access() Access Указывает, какой класс пользователей может получить доступ к File , помимо отдельных пользователей, которым был явно предоставлен доступ.
get Sharing Permission() Permission Получает разрешения, предоставленные тем пользователям, которые могут получить доступ к File , помимо тех отдельных пользователей, которым был явно предоставлен доступ.
get Size() Integer Получает количество байтов, используемых для хранения File на Диске.
get Target Id() String Если это ярлык, возвращает идентификатор элемента, на который он указывает.
get Target Mime Type() String Если это ярлык, возвращает MIME-тип элемента, на который он указывает.
get Target Resource Key() String Если файл является ярлыком, возвращает ключ ресурса элемента, на который он указывает.
get Thumbnail() Blob |null Получает миниатюрное изображение для файла или null , если миниатюра отсутствует.
get Url() String Получает URL-адрес, который можно использовать для открытия File в приложении Google, таком как Google Диск или Google Документы.
get Viewers() User[] Получает список зрителей и комментаторов для этого File .
is Shareable By Editors() Boolean Определяет, разрешено ли пользователям с правами на редактирование File делиться им с другими пользователями или изменять права доступа.
is Starred() Boolean Определяет, был ли File отмечен как избранный на Диске пользователя.
is Trashed() Boolean Определяет, находится ли File в корзине на Диске пользователя.
make Copy() File Создаёт копию файла.
make Copy(destination) File Создает копию файла в целевом каталоге.
make Copy(name) File Создает копию файла и присваивает ей указанное имя.
make Copy(name, destination) File Создает копию файла в целевом каталоге и присваивает ей указанное имя.
move To(destination) File Перемещает этот элемент в указанную папку назначения.
remove Commenter(emailAddress) File Удаляет указанного пользователя из списка комментаторов к File .
remove Commenter(user) File Удаляет указанного пользователя из списка комментаторов к File .
remove Editor(emailAddress) File Удаляет указанного пользователя из списка редакторов для File .
remove Editor(user) File Удаляет указанного пользователя из списка редакторов для File .
remove Viewer(emailAddress) File Удаляет указанного пользователя из списка зрителей и комментаторов File .
remove Viewer(user) File Удаляет указанного пользователя из списка зрителей и комментаторов File .
revoke Permissions(emailAddress) File Отменяет доступ к File предоставленный указанному пользователю.
revoke Permissions(user) File Отменяет доступ к File предоставленный указанному пользователю.
set Content(content) File Заменяет содержимое файла заданным значением.
set Description(description) File Задает описание для File .
set Name(name) File Задает имя File .
set Owner(emailAddress) File Изменяет владельца File .
set Owner(user) File Изменяет владельца File .
set Security Update Enabled(enabled) File Определяет, требуется ли для доступа к File ключ ресурса при его совместном использовании по ссылке.
set Shareable By Editors(shareable) File Определяет, разрешено ли пользователям с правами редактирования File делиться им с другими пользователями или изменять права доступа.
set Sharing(accessType, permissionType) File Определяет, какой класс пользователей может получить доступ к File и какие разрешения предоставляются этим пользователям, помимо отдельных пользователей, которым был явно предоставлен доступ.
set Starred(starred) File Определяет, будет ли File отмечен как избранный на Диске пользователя.
set Trashed(trashed) File Определяет, будет ли File находиться в корзине на Диске пользователя.

File Iterator

Методы

Метод Тип возвращаемого значения Краткое описание
get Continuation Token() String Получает токен, который можно использовать для возобновления этой итерации позже.
has Next() Boolean Определяет, будет ли вызов функции next() возвращать элемент.
next() File Получает следующий элемент в коллекции файлов или папок.

Folder

Методы

Метод Тип возвращаемого значения Краткое описание
add Editor(emailAddress) Folder Добавляет указанного пользователя в список редакторов Folder .
add Editor(user) Folder Добавляет указанного пользователя в список редакторов Folder .
add Editors(emailAddresses) Folder Добавляет указанный массив пользователей в список редакторов для Folder .
add Viewer(emailAddress) Folder Добавляет указанного пользователя в список пользователей, просматривающих Folder .
add Viewer(user) Folder Добавляет указанного пользователя в список пользователей, просматривающих Folder .
add Viewers(emailAddresses) Folder Добавляет указанный массив пользователей в список пользователей, просматривающих Folder .
create File(blob) File Создает файл в текущей папке из заданного Blob с произвольными данными.
create File(name, content) File Создает текстовый файл в текущей папке с заданным именем и содержимым.
create File(name, content, mimeType) File Создает файл в текущей папке с заданным именем, содержимым и MIME-типом.
create Folder(name) Folder Создает папку в текущей папке с заданным именем.
create Shortcut(targetId) File Создает ярлык для указанного идентификатора элемента Google Диска и возвращает его.
create Shortcut For Target Id And Resource Key(targetId, targetResourceKey) File Создает ярлык для указанного идентификатора элемента Google Диска и ключа ресурса и возвращает его.
get Access(email) Permission Получает разрешение, предоставленное конкретному пользователю.
get Access(user) Permission Получает разрешение, предоставленное конкретному пользователю.
get Date Created() Date Получает дату создания Folder .
get Description() String Получает описание Folder .
get Editors() User[] Получает список редакторов для этой Folder .
get Files() File Iterator Получает коллекцию всех файлов, являющихся дочерними по отношению к текущей папке.
get Files By Name(name) File Iterator Получает коллекцию всех файлов, являющихся дочерними по отношению к текущей папке и имеющих заданное имя.
get Files By Type(mimeType) File Iterator Получает коллекцию всех файлов, являющихся дочерними файлами текущей папки и имеющих заданный MIME-тип.
get Folders() Folder Iterator Получает коллекцию всех папок, являющихся дочерними по отношению к текущей папке.
get Folders By Name(name) Folder Iterator Получает коллекцию всех папок, являющихся дочерними по отношению к текущей папке и имеющих заданное имя.
get Id() String Получает идентификатор Folder .
get Last Updated() Date Получает дату последнего обновления Folder .
get Name() String Получает имя Folder .
get Owner() User Получает владельца этой Folder .
get Parents() Folder Iterator Получает набор папок, являющихся непосредственными родительскими папками для данной Folder .
get Resource Key() String Получает ключ ресурса Folder , необходимый для доступа к элементам, предоставленным в общий доступ по ссылке.
get Security Update Eligible() Boolean Выводит информацию о том, подходит ли данная Folder для применения обновления безопасности, для доступа к которому требуется ключ ресурса при предоставлении доступа по ссылке.
get Security Update Enabled() Boolean Выводит информацию о том, требуется ли для доступа к этой Folder ключ ресурса при ее совместном использовании по ссылке.
get Sharing Access() Access Определяет, какой класс пользователей может получить доступ к Folder , помимо отдельных пользователей, которым был явно предоставлен доступ.
get Sharing Permission() Permission Получает разрешения, предоставленные тем пользователям, которые могут получить доступ к Folder , помимо тех отдельных пользователей, которым был явно предоставлен доступ.
get Size() Integer Получает количество байтов, используемых для хранения Folder на Диске.
get Url() String Получает URL-адрес, который можно использовать для открытия Folder в приложении Google, таком как Google Диск или Документы.
get Viewers() User[] Получает список пользователей, просматривающих и комментирующих эту Folder .
is Shareable By Editors() Boolean Определяет, разрешено ли пользователям с правами редактирования Folder предоставлять доступ другим пользователям или изменять права доступа.
is Starred() Boolean Определяет, отмечена ли Folder звездочкой на Диске пользователя.
is Trashed() Boolean Определяет, находится ли Folder в корзине на Диске пользователя.
move To(destination) Folder Перемещает этот элемент в указанную папку назначения.
remove Editor(emailAddress) Folder Удаляет указанного пользователя из списка редакторов Folder .
remove Editor(user) Folder Удаляет указанного пользователя из списка редакторов Folder .
remove Viewer(emailAddress) Folder Удаляет указанного пользователя из списка пользователей, просматривающих и комментирующих Folder .
remove Viewer(user) Folder Удаляет указанного пользователя из списка пользователей, просматривающих и комментирующих Folder .
revoke Permissions(emailAddress) Folder Отменяет предоставленный данному пользователю доступ к Folder .
revoke Permissions(user) Folder Отменяет доступ к Folder предоставленный указанному пользователю.
search Files(params) File Iterator Получает коллекцию всех файлов, являющихся дочерними по отношению к текущей папке и соответствующих заданным критериям поиска.
search Folders(params) Folder Iterator Получает коллекцию всех папок, являющихся дочерними по отношению к текущей папке и соответствующих заданным критериям поиска.
set Description(description) Folder Задает описание для Folder .
set Name(name) Folder Задает имя Folder .
set Owner(emailAddress) Folder Изменяет владельца Folder .
set Owner(user) Folder Изменяет владельца Folder .
set Security Update Enabled(enabled) Folder Определяет, требуется ли для доступа Folder ключ ресурса при её совместном использовании по ссылке.
set Shareable By Editors(shareable) Folder Определяет, разрешено ли пользователям с правами редактирования Folder предоставлять доступ другим пользователям или изменять права доступа.
set Sharing(accessType, permissionType) Folder Определяет, какой класс пользователей может получить доступ Folder и какие разрешения предоставляются этим пользователям, помимо отдельных пользователей, которым был явно предоставлен доступ.
set Starred(starred) Folder Определяет, будет ли Folder отмечена звездочкой на Диске пользователя.
set Trashed(trashed) Folder Определяет, будет ли Folder находиться в корзине на Диске пользователя.

Folder Iterator

Методы

Метод Тип возвращаемого значения Краткое описание
get Continuation Token() String Получает токен, который можно использовать для возобновления этой итерации позже.
has Next() Boolean Определяет, будет ли вызов функции next() возвращать элемент.
next() Folder Получает следующий элемент в коллекции файлов или папок.

Permission

Характеристики

Свойство Тип Описание
VIEW Enum Пользователи, имеющие доступ к файлу или папке, могут только просматривать их или копировать.
EDIT Enum Пользователи, имеющие доступ к файлу или папке, могут их редактировать.
COMMENT Enum Пользователи, имеющие доступ к файлу или папке, могут только просматривать их, копировать или оставлять комментарии.
OWNER Enum Файл или папка принадлежат пользователю.
ORGANIZER Enum Пользователи, которые могут организовывать файлы и папки на общем диске.
FILE_ORGANIZER Enum Пользователи, имеющие право редактировать, удалять и перемещать контент в пределах общего диска.
NONE Enum У пользователя нет прав доступа к файлу или папке.

User

Методы

Метод Тип возвращаемого значения Краткое описание
get Domain() String|null Получает доменное имя, связанное с учетной записью пользователя.
get Email() String|null Получает адрес электронной почты пользователя.
get Name() String|null Получает имя пользователя.
get Photo Url() String|null Получает URL-адрес фотографии пользователя.