Когда пользователь нажимает кнопку Создать в интерфейсе Диска и выбирает приложение, Диск перенаправляет пользователя на URL создания, заданный в настройках интеграции с интерфейсом Диска.
Затем приложение получает набор переменных шаблона по умолчанию в параметре state. По умолчанию для нового URL-адреса задаются следующие значения state:
{
"action":"create",
"folderId":"FOLDER_ID",
"folderResourceKey":"FOLDER_RESOURCE_KEY",
"userId":"USER_ID"
}
Выходные данные включают следующие значения:
create– выполняемое действие. Значениеcreateиспользуется, когда пользователь нажимает кнопку Создать в интерфейсе Диска.- FOLDER_ID – идентификатор родительской папки.
- FOLDER_RESOURCE_KEY – ключ ресурса родительской папки.
- USER_ID – идентификатор профиля, который уникальным образом идентифицирует пользователя.
Приложение должно выполнить этот запрос, следуя приведенным ниже инструкциям.
- Убедитесь, что в поле
actionуказано значениеcreate. - Используйте значение
userId, чтобы создать новый сеанс для пользователя. Подробнее о пользователях, вошедших в аккаунт, и новых событиях… - Используйте метод
files.create, чтобы создать ресурс файла. Если в запросе было задано значениеfolderId, укажите егоfolderIdв полеparents. - Если в запросе задан параметр
folderResourceKey, задайте заголовок запросаX-Goog-Drive-Resource-Keys. Подробнее о доступе к файлам по ссылке с помощью ключей ресурсов…
Параметр state закодирован в URL, поэтому ваше приложение должно обрабатывать экранирующие символы и анализировать его как JSON.
Пользователи и новые события
Приложения Диска должны обрабатывать все события создания как потенциальные входы. У некоторых пользователей может быть несколько аккаунтов, поэтому идентификатор пользователя в параметре state может не совпадать с текущим сеансом. Если идентификатор пользователя в параметре state не соответствует текущему сеансу, завершите текущий сеанс для приложения и войдите в аккаунт нужного пользователя.