Cómo configurar una integración de IU de Drive

Para mostrar tu app en Google Drive cuando un usuario crea o abre un archivo, primero debes configurar una integración con la interfaz de usuario (IU) de Drive. La configuración también es necesaria para publicar tu app en Google Workspace Marketplace.

Habilitar la API de Drive

Antes de usar las APIs de Google, debes activarlas en un proyecto de Google Cloud. Puedes activar una o más API en un solo proyecto de Google Cloud.

Para comenzar la integración con la IU de Google Drive, debes habilitar la API de Drive. Esto te brinda acceso a la API y a las funciones de integración de la IU.

Configura la integración con la IU de Drive

  1. En la Consola de API de Google, ve a Menú > API y servicios > API y servicios habilitados.

    Ir a APIs y servicios habilitados

  2. En la parte inferior del panel de APIs y servicios, haz clic en API de Google Drive. Aparecerá la página de configuración de la API de Google Drive.
  3. Selecciona la pestaña Integración de la IU de Drive.
  4. (Opcional) Ingresa un nombre en el campo Nombre de la aplicación. El nombre de la aplicación se muestra a los usuarios en la pestaña Administrar aplicaciones de la configuración de Drive.
  5. Ingresa una descripción breve de una línea en el campo Descripción breve (Short description). La descripción breve se muestra a los usuarios en la pestaña Administrar apps de la configuración de Drive.
  6. Opcional: Ingresa una descripción completa en el campo Descripción larga.
  7. Sube uno o más íconos de la aplicación para que aparezcan en la lista de apps de Drive conectadas de un usuario y en el menú contextual "Abrir con". Los íconos deben estar en formato PNG con un fondo transparente. Los íconos pueden tardar hasta 24 horas en aparecer en Drive.

  8. Para usar el elemento de menú “Abrir con” de la IU de Drive, ingresa la URL de tu app en el campo URL abierta. El menú contextual "Abrir con" utiliza esta URL.

    • Esta URL debe contener un nombre de dominio completamente calificado; localhost no funciona.
    • Los usuarios previstos de la aplicación deben poder acceder a esta URL. Si tienes varias versiones de la aplicación, como una para el lanzamiento público y otra para el restringido en determinados usuarios, cada una debe usar una URL única. Luego, puedes crear diferentes configuraciones de la app para cada versión.
    • Debes verificar la propiedad de esta URL para poder publicar tu app en Google Workspace Marketplace.
    • De forma predeterminada, se agrega un parámetro de consulta state a esta URL para pasar datos de la IU de Drive a tu app. Para obtener información sobre el contenido del parámetro state, consulta el parámetro state.
  9. Ingresa los tipos de MIME y las extensiones de archivo predeterminados en los campos Tipos de MIME predeterminados y Extensiones de archivo predeterminadas. Los tipos de MIME y las extensiones de archivo predeterminados representan archivos para los que tu app está compilada de forma única para abrir. Por ejemplo, tu app puede abrir un formato integrado para superponer imágenes y editar imágenes. Incluye solo tipos de contenido multimedia estándar y asegúrate de que no tengan errores tipográficos. Si tu app solo abre accesos directos o archivos de accesos directos de terceros, puedes dejar el tipo de MIME en blanco.

  10. Ingresa los tipos de MIME secundarios y las extensiones de archivo en los campos Tipos de MIME secundarios y Extensiones de archivo secundarias. Los tipos de MIME secundarios y las extensiones de archivo representan archivos que tu app puede abrir, pero no son específicos de ella. Por ejemplo, tu app puede ser una app de edición de imágenes que abre imágenes PNG y JPG. Incluye solo tipos de contenido multimedia estándar y asegúrate de que no tengan errores tipográficos. Si tu app solo abre accesos directos o archivos de accesos directos de terceros, puedes dejar el tipo de MIME en blanco.

  11. Para usar el botón “Nuevo” de la IU de Drive y hacer que los usuarios creen un archivo con tu app, marca la casilla Crear archivos. Aparecerán los campos URL nueva y Nombre del documento opcional.

    • Esta URL debe contener un nombre de dominio completamente calificado; localhost no funciona.
    • Debes verificar la propiedad de esta URL para poder mostrar tu app en Google Workspace Marketplace.
    • De forma predeterminada, se agrega un parámetro de consulta state a esta URL para pasar datos de la IU de Drive a tu app. Para obtener información sobre el contenido del parámetro state, consulta el parámetro state.
  12. Ingresa una URL en el campo URL nueva. El botón “Nuevo” usa esta URL para redireccionar al usuario a tu aplicación.

  13. Si quieres que tu app abra archivos compatibles con Google Workspace, marca la casilla Importación (opcional).

  14. Si tu app debe administrar archivos en unidades compartidas, marca la casilla Compatibilidad con unidades compartidas (opcional). Para obtener más información sobre cómo admitir unidades compartidas en tu app, consulta Cómo implementar la compatibilidad con unidades compartidas.

  15. Haga clic en Enviar.

Solicita el permiso drive.install

Para permitir que las apps aparezcan como una opción en el menú "Abrir con" o "Nuevo", solicita que el alcance https://www.googleapis.com/auth/drive.install se integre a la IU de Drive. Cuando se solicita este alcance, los usuarios reciben un diálogo similar al siguiente:

Diálogo de instalación de la IU de Google Drive
Figura 1: El diálogo de instalación cuando se usan permisos para la IU de Drive

Para obtener más información sobre los permisos que puedes solicitar para las aplicaciones de Drive y cómo solicitarlos, consulta la información de autorización y autenticación específica de la API.

El parámetro state

De forma predeterminada, se agrega un parámetro state a la URL abierta y a la URL nueva para pasar datos de la IU de Drive a la app. Este parámetro contiene una string codificada en JSON con variables de plantilla y datos sobre la solicitud a la app. Las variables incluidas dependen del tipo de URL que se use (URL abierta o URL nueva):

Variable de plantilla Descripción Aplicación de la URL
{ids} Una lista separada por comas de los ID de los archivos que se abren. Abrir URL
{exportIds} Una lista separada por comas de los ID de los archivos que se exportan (solo se usa al abrir documentos integrados de Google). Abrir URL
{resourceKeys} Un diccionario JSON de los ID de archivo asignados a sus respectivas claves de recursos. Abrir URL
{folderId} El ID de la carpeta superior. URL nueva
{folderResourceKey} La clave de recurso de la carpeta superior. URL nueva
{userId} El ID de perfil que identifica al usuario. Abrir URL y URL nueva
{action} La acción que se realiza. El valor es open cuando se usa una URL abierta o create cuando se usa una URL nueva. Abrir URL y URL nueva

El parámetro state está codificado en formato URL, por lo que tu app debe controlar los caracteres de escape y analizarlo como JSON. Las apps pueden detectar el valor create en el parámetro state para verificar una solicitud de creación de un archivo.

Ejemplo de información de estado en JSON para una URL nueva

La información de state de una URL nueva es la siguiente:

{
  "action":"create",
  "folderId":"FOLDER_ID",
  "folderResourceKey":"FOLDER_RESOURCE_KEY",
  "userId":"USER_ID"
}

Ejemplo de información de estado en JSON para una URL abierta

La información de state de una URL abierta es la siguiente:

{
  "ids": ["ID"],
  "resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
  "action":"open",
  "userId":"USER_ID"
}

Los ID y las claves de recursos se usan para recuperar metadatos de archivos y descargar contenido de archivos. Una vez que tu app tenga el ID de archivo y un token de acceso, puede verificar los permisos, recuperar los metadatos del archivo y descargar el contenido del archivo como se describe en el método files.get.

Una app instalada debe poder crear, administrar y abrir acciones iniciadas desde la IU de Drive. Para obtener más información, consulta Integración con el botón "Nuevo" de la IU de Drive o Integración con el menú contextual "Abrir con" de la IU de Drive.