В этом руководстве объясняется, как использовать ресурс revisions
для управления ревизиями файлов, например, для получения ревизии файла и публикации ревизии Google Workspace. API Google Диска также позволяет загружать ревизии. Подробнее о терминологии ревизий см. в разделе «Обзор изменений и ревизий» .
Чтобы получить доступ к истории изменений, пользователь должен иметь role
owner
, organizer
, fileOrganizer
или writer
.
Чтобы указать поля, возвращаемые в ответе, можно задать системный параметр fields
с помощью любого метода ресурса revisions
. Если этот параметр пропущен, сервер вернет набор полей по умолчанию. Например, метод revisions.list
возвращает только поля id
, mimeType
, kind
и modifiedTime
. Чтобы вернуть другие поля, см. раздел Возврат определённых полей .
Укажите версии, которые необходимо сохранить от автоматического удаления
Google Drive автоматически удаляет старые версии, которые больше не представляют интереса для пользователя.
Для ревизии BLOB -файла можно установить значение «Хранить вечно», что означает, что она не будет автоматически удалена. Можно установить значение «Хранить вечно» для до 200 ревизий, которые будут учитываться при расчете лимита хранилища. Ревизия заголовка никогда не удаляется автоматически.
Любая ревизия BLOB-файла, кроме главной, не отмеченная как «Хранить вечно», может быть удалена. Удаляемые ревизии обычно хранятся в течение 30 дней, но могут быть удалены и раньше, если файл содержит 100 ревизий, не отмеченных как «Хранить вечно», и загружена новая ревизия.
Вы можете установить логическое поле keepForever
ресурса revisions
в значение true
, чтобы отметить те версии, которые вы не хотите удалять с Диска. После того, как для версии BLOB-файла установлено значение «Хранить вечно», её можно только загрузить или удалить. Подробнее см. в разделах Загрузка версии и Удаление версии .
Если вы используете старую версию Drive API v2, используйте pinned
поле ресурса revisions
вместо keepForever
.
Получить ревизию файла
Чтобы получить метаданные или содержимое ревизии файла, используйте метод get
ресурса revisions
с параметрами fileId
и revisionId
. Если вы не знаете идентификатор ревизии, вы можете получить список всех ревизий файла с помощью метода list
.
Метод возвращает метаданные ревизии как экземпляр ресурса revisions
.
Чтобы подтвердить риск загрузки известного вредоносного ПО или других вредоносных файлов, установите для параметра запроса acknowledgeAbuse
значение true
. Это поле применимо только в том случае, если задан параметр alt=media
, а пользователь является владельцем файла или организатором общего диска, на котором находится файл.
Список версий файла
Чтобы вывести список ревизий файла, используйте метод list
ресурса revisions
с параметром fileId
path. Метод возвращает список ревизий файла.
Передайте следующие параметры запроса для настройки пагинации или фильтрации ревизий:
pageSize
: максимальное количество ревизий, возвращаемых на страницу.pageToken
: токен страницы, полученный при предыдущем вызове списка. Укажите этот токен для получения следующей страницы.
Обновить версию файла
Чтобы обновить ревизию файла, используйте метод update
для ресурса revisions
с параметрами пути fileId
и revisionId
.
Метод возвращает экземпляр ресурса revisions
.
Загрузить версию
Вы можете загрузить только версии содержимого BLOB-файла, отмеченные как «Сохранить навсегда». Если вы хотите загрузить версию, сначала убедитесь, что она отмечена как «Сохранить навсегда». Подробнее см. в разделе «Указание версий для сохранения от автоматического удаления» .
Чтобы загрузить версию содержимого файла BLOB-объекта или экспортировать версию содержимого документа Google Workspace, см. раздел Загрузка и экспорт файлов .
Удалить версию файла
Чтобы окончательно удалить ревизию файла, используйте метод delete
в ресурсе revisions
с параметрами пути fileId
и revisionId
.
Вы можете удалить версии только для BLOB-файлов с двоичным содержимым на Диске, таким как изображения, видео и PDF-файлы. Вы можете удалить версию BLOB-файла, если она помечена как «Сохранить навсегда». Версии других файлов, таких как Google Docs или Google Sheets, а также последнюю оставшуюся версию двоичного файла удалить невозможно.
Опубликовать пересмотр
Чтобы опубликовать версию Google Docs, Google Sheets и Google Slides, задайте свойство published
для этого файла в ресурсе revisions
. Это свойство невозможно задать для версий Google Sites с помощью Drive API.
Опубликованные версии не отражают изменения, внесённые в файл, если не задано свойство publishAuto
. Если свойство имеет значение true
, новые версии файла автоматически публикуются, перезаписывая предыдущие. Слайды и рисунки поддерживают только автоматическую повторную публикацию и требуют, чтобы свойство publishAuto
было задано как true
. Для файлов Sites свойство publishAuto
всегда имеет false
.
Если файл создан в домене Google Workspace, свойство publishedOutsideDomain
указывает, доступна ли эта версия всем или только пользователям домена. Для файлов Sites это свойство указывает, существует ли разрешение type=anyone
. Подробнее см. в поле type
ресурса permissions
.
Автоматическая публикация также контролируется флажком «Автоматически перепубликовать при внесении изменений» в интерфейсе Документов и Таблиц. Подробнее см. в статье «Сделать Google Документы, Таблицы, Презентации и Формы общедоступными ».