Когда пользователь выбирает файл и нажимает пункт меню «Открыть с помощью» в Drive UI , Drive перенаправляет пользователя на URL-адрес открытия этого приложения, указанный в разделе «Настройка интеграции Drive UI» .
Если при настройке интеграции с Drive UI вы установили флажок «Импорт», пользователь может выбрать комбинацию файлов, специфичных для приложения, и файлов Google Workspace для открытия. При настройке интеграции с Drive UI файлы, специфичные для приложения, определяются в полях «Типы MIME по умолчанию» и «Расширения файлов по умолчанию», а файлы Google Workspace — в полях «Дополнительные типы MIME» и «Дополнительные расширения файлов».
Для каждого файла, который пользователь хочет открыть, Диск проверяет типы MIME на соответствие определенным вами типам MIME по умолчанию и дополнительным типам MIME:
- Для типов MIME, указанных в поле «Типы MIME по умолчанию», идентификатор файла передаётся в ваше приложение. Сведения об обработке файлов, специфичных для приложения, см. в разделе Обработка открытых URL-адресов для документов, специфичных для приложения . 
- Для типов MIME, указанных в поле «Дополнительные типы MIME», интерфейс Диска отображает диалоговое окно с вопросом о том, в какой тип файла преобразовать файл Google Workspace. Например, если вы выбираете файл Google Docs в интерфейсе Диска, а поле «Дополнительные типы MIME» предполагает, что ваше приложение поддерживает форматы text/plain или application/pdf, интерфейс Диска спросит пользователя, нужно ли преобразовать файл в формат Plain Text или PDF. - Информацию об обработке файлов Google Workspace см. в статье Обработка открытого URL-адреса для документов Google Workspace . Список документов Google Workspace и форматов преобразования типов MIME см. в статье Экспорт типов MIME для документов Google Workspace . 
Обрабатывать открытый URL для документов, специфичных для приложения
 Как упоминалось в разделе «Настройка интеграции с Drive UI» , ваше приложение получает переменные шаблона с информацией, необходимой для открытия файла. Приложение получает набор переменных шаблона по умолчанию в параметре state . Информация state по умолчанию для URL-адреса Open URL, специфичного для приложения, следующая:
{
  "ids": ["ID"],
  "resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
  "action":"open",
  "userId":"USER_ID"
}
Этот вывод включает в себя следующие значения:
- ID : Идентификатор родительской папки.
- RESOURCE_KEYS : словарь JSON идентификаторов файлов, сопоставленных с соответствующими ключами ресурсов.
-  open: выполняемое действие. Значениеopenпри использовании Open URL.
- USER_ID : Идентификатор профиля, который однозначно идентифицирует пользователя.
Ваше приложение должно отреагировать на этот запрос, выполнив следующие шаги:
-  Убедитесь, что поле actionимеет значениеopenи присутствует полеids.
-  Используйте значение userIdдля создания нового сеанса для пользователя. Подробнее о вошедших пользователях см. в разделе «Пользователи и новые события» .
-  Используйте метод files.getдля проверки разрешений, получения метаданных файла и загрузки содержимого файла с использованием значенийID.
-  Если в запросе задан resourceKeys, установите заголовок запросаX-Goog-Drive-Resource-Keys. Подробнее о ключах ресурсов см. в статье Доступ к файлам, доступным по ссылке, с помощью ключей ресурсов .
 Параметр state закодирован в URL, поэтому ваше приложение должно обрабатывать экранированные символы и анализировать его как JSON.
Обработка открытого URL для документов Google Workspace
 Как упоминалось в разделе «Настройка интеграции с Drive UI» , ваше приложение получает набор шаблонных переменных по умолчанию в параметре state . Информация state по умолчанию для URL-адреса Google Workspace Open:
{
  "exportIds": ["ID"],
  "resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
  "action":"open",
  "userId":"USER_ID"
}
Этот вывод включает в себя следующие значения:
- EXPORT_ID : список идентификаторов экспортируемых файлов, разделенных запятыми. Используется только при открытии файлов Google Workspace.
- RESOURCE_KEYS : словарь JSON идентификаторов файлов, сопоставленных с соответствующими ключами ресурсов.
-  open: выполняемое действие. Значениеopenпри использовании Open URL.
- USER_ID : идентификатор профиля, который идентифицирует пользователя.
Ваше приложение должно отреагировать на этот запрос, выполнив следующие шаги:
- Убедитесь, что это запрос на открытие файла, обнаружив как значение - openв поле- state, так и наличие поля- exportIds.
- Используйте метод - files.getдля проверки разрешений, получения метаданных файла и определения типа MIME с использованием значений- EXPORT_ID.
- Конвертируйте содержимое файла с помощью метода - files.export. В следующем примере кода показано, как экспортировать документ Google Workspace в требуемый тип MIME.
- Если в запросе задан - resourceKey, установите заголовок запроса- X-Goog-Drive-Resource-Keys. Подробнее о ключах ресурсов см. в разделе Доступ к файлам, доступным по ссылке, с помощью ключей ресурсов .- Ява- Питон- Node.js- PHP
Отображать преобразованные файлы как доступные только для чтения или выводить диалоговое окно, позволяющее пользователю сохранить файл как новый тип файла.
 Параметр state закодирован в URL, поэтому ваше приложение должно обрабатывать экранированные символы и анализировать его как JSON.
Пользователи и новые события
 Приложения Диска должны обрабатывать все события «Открыть с помощью» как потенциальные входы в систему. У некоторых пользователей может быть несколько учётных записей, поэтому идентификатор пользователя в параметре state может не соответствовать текущему сеансу. Если идентификатор пользователя в параметре state не соответствует текущему сеансу, завершите текущий сеанс приложения и войдите в систему как запрошенный пользователь.
Похожие темы
Помимо открытия приложения из пользовательского интерфейса Google Диска, приложения могут отображать средство выбора файлов для выбора содержимого внутри приложения. Подробнее см. в разделе «Средство выбора Google» .