Proyectos de Google Cloud

Todos los proyectos de Apps Script usan Google Cloud para administrar las autorizaciones, los servicios avanzados y otros detalles. Para establecer y administrar esta configuración, cada proyecto de Apps Script tiene un proyecto de Google Cloud asociado. El proyecto de secuencia de comandos puede usar un proyecto predeterminado que Apps Script cree automáticamente o un proyecto estándar que crees tú mismo. En general, los proyectos predeterminados son útiles para secuencias de comandos cotidianas o simples, pero debes usar un proyecto estándar para cualquier aplicación que sea compleja, de calidad comercial o que quieras publicar.

Puedes cambiar de un proyecto predeterminado a uno estándar en cualquier momento, pero no puedes volver a usar un proyecto predeterminado. Es mejor seleccionar el proyecto de Cloud que usa tu secuencia de comandos al comienzo del desarrollo. Si cambias más tarde, puede generarse complicaciones, como la necesidad de que los usuarios vuelvan a autorizarla.

Proyectos de Cloud predeterminados

Cuando creas un proyecto de Apps Script, Apps Script crea un proyecto de Cloud predeterminado que opera en segundo plano.

  • Para la mayoría de las secuencias de comandos, nunca necesitas ver ni ajustar este proyecto predeterminado. Apps Script controla las interacciones necesarias con Google Cloud. Por ejemplo, si activas un servicio avanzado en el editor de Apps Script, Apps Script activa el servicio avanzado en el proyecto de Cloud predeterminado cuando guardas el proyecto de secuencia de comandos.
  • Para algunas secuencias de comandos, debes interactuar con la consola de Google Cloud. En estos casos, tu secuencia de comandos debe usar un proyecto estándar de Cloud. Por ejemplo, para ver los registros de Google Cloud en la consola de Google Cloud, la secuencia de comandos debe usar un proyecto estándar.

Según la configuración predeterminada, los proyectos de Cloud tienen una política de Identity and Access Management (IAM) con una entrada, una cuenta de servicio de Google que actúa como propietaria del proyecto predeterminado. La cuenta de servicio de Google es appsdev-apps-dev-script-auth@system.gserviceaccount.com.

Visualiza o actualiza los proyectos predeterminados de Cloud

La mayoría de los usuarios no pueden ubicar, ver ni editar los proyectos predeterminados directamente en la consola de Google Cloud. Si eres administrador, consulta Cómo ver proyectos predeterminados de Google Cloud.

Si creaste tu proyecto de secuencia de comandos antes del 8 de abril de 2019, puedes usar un proyecto predeterminado al que puedas acceder en la consola de Google Cloud. Para acceder al proyecto predeterminado, ve a la configuración del proyecto de la secuencia de comandos y haz clic en el número del proyecto.

Borra proyectos predeterminados de Cloud

Si eres administrador, puedes borrar los proyectos de Cloud predeterminados como lo harías con los proyectos estándar de Cloud. Consulta Borra proyectos de Cloud de Apps Script.

Si no eres administrador, no puedes borrar los proyectos predeterminados. Sin embargo, Apps Script borra proyectos predeterminados en los siguientes casos:

  • Si borras el proyecto de secuencia de comandos o lo cambias para usar un proyecto estándar, Apps Script borrará el proyecto predeterminado vinculado a la secuencia de comandos junto con cualquier configuración o información que contenga.
  • Si una secuencia de comandos no se ejecuta durante 180 días o más, Apps Script borra el proyecto predeterminado asociado. Si la secuencia de comandos se ejecuta después de que Apps Script borra su proyecto predeterminado, Apps Script creará uno para la secuencia.

Proyectos de Cloud estándar

Los proyectos predeterminados de Cloud son la mejor opción para la mayoría de los proyectos de secuencias de comandos, a menos que debas configurar el proyecto de forma manual. En estos casos, debes cambiar el proyecto de secuencia de comandos para que utilice un proyecto estándar.

En las siguientes secciones, se describe cuándo Apps Script requiere un proyecto estándar, las propiedades de esos proyectos y las tareas comunes que se realizan con ellos. Solo puedes realizar las siguientes tareas con proyectos estándar.

Cuando Apps Script requiere proyectos de Cloud estándar

Debes usar un proyecto estándar en las siguientes situaciones:

Propiedades estándar del proyecto de Cloud

Los proyectos estándar tienen las siguientes propiedades:

  • Puedes acceder a toda la configuración de Google Cloud para el proyecto directamente desde Google Cloud Console. Esto te permite activar las APIs, ajustar las credenciales de autorización y configurar otros detalles.
  • Cuando borras un proyecto de secuencia de comandos o lo cambias para usar otro proyecto estándar, el proyecto estándar original se conserva y se puede volver a usar.
  • Cuando activas un servicio avanzado en un proyecto de secuencia de comandos, debes activar manualmente la API correspondiente en el proyecto estándar.
  • Varios proyectos de secuencias de comandos y otras apps pueden compartir el mismo proyecto estándar. Si quieres publicar un proyecto de secuencia de comandos en Google Workspace Marketplace como un complemento, este debe tener su propio proyecto estándar. Las apps publicadas no pueden compartir proyectos de Cloud con otras apps.
  • Si deseas ejecutar funciones en un proyecto de secuencia de comandos desde otra app mediante el método scripts.run de la API de Apps Script, el proyecto de secuencia de comandos y la aplicación que realiza la llamada deben compartir el mismo proyecto estándar.
  • Cuando Apps Script le pide a un usuario que autorice una secuencia de comandos que usa un proyecto estándar, se usa el nombre del proyecto de Cloud para identificar la secuencia de comandos (no el nombre del proyecto). Por este motivo, asegúrate de configurar un nombre de proyecto de Cloud adecuado.

Accede a un proyecto estándar de Cloud

Para acceder al proyecto estándar asociado con tu proyecto de secuencia de comandos, haz lo siguiente:

  1. Abre el proyecto de Apps Script.
  2. A la izquierda, haz clic en Configuración del proyecto .
  3. En Proyecto de Google Cloud Platform (GCP), haz clic en el número de proyecto.

También puedes encontrar un proyecto estándar directamente en la página Administrar recursos de la consola de Google Cloud.

Activa una API en un proyecto estándar de Cloud

Con frecuencia, una aplicación de Apps Script necesita acceso a otra API de Google. Para ello, debes activar la API en el proyecto de Cloud correspondiente. Para activar una API, haz lo siguiente:

  1. Abre el proyecto de Cloud.
  2. Haz clic en Menú > APIs y servicios.
  3. Haz clic en Habilitar APIs y servicios.
  4. En el cuadro de búsqueda, ingresa la API que desees activar y presiona Intro.
  5. Haz clic en la API en los resultados de la búsqueda y, luego, en Habilitar para activar la API en este proyecto de Cloud.

Es posible que se te solicite que aceptes las Condiciones del Servicio de las APIs de Google o Google Cloud. Revisa detenidamente las Condiciones del Servicio antes de aceptarlas.

Según la aplicación, es posible que también debas configurar la API. Para ello, selecciónala en el panel APIs y servicios (APIs & Services).

Determina el ID y el número de un proyecto de Cloud estándar

Todos los proyectos de Cloud tienen un nombre, un ID y un número de proyecto. En ocasiones, debes tener estos identificadores para configurar servicios o completar otras tareas.

Para determinar el ID y el número de tu proyecto estándar, haz lo siguiente:

  1. Abre el proyecto de Cloud.
  2. En la esquina superior derecha, haz clic en Más > Configuración del proyecto.
  3. Visualiza el Nombre del proyecto, el ID del proyecto y el Número del proyecto en el panel Configuración resultante. El número del proyecto consta solo de dígitos, mientras que el ID del proyecto es alfanumérico. Puedes editar el Nombre del proyecto, que se mostrará a los usuarios durante las solicitudes de autorización.

Ver informes de errores y registros de Google Cloud en la consola de Google Cloud

Si usas Google Cloud Logging o Error Reporting para tu proyecto de secuencia de comandos, puedes ver esos informes y registros en la consola de Google Cloud de la siguiente manera:

  1. Abre el proyecto de Cloud.
  2. Haz clic en el menú .
  3. Desplázate hacia abajo hasta la sección Operaciones y haz clic en Logging > Explorador de registros.
  4. Para ver los informes de errores, desplázate hacia abajo hasta la sección Operaciones y haz clic en Error Reporting. Si se te solicita que configures Error Reporting, significa que el proyecto de secuencia de comandos aún no registró ninguna excepción.

Cuando se utilizan servicios que requieren OAuth, Google les solicita a los usuarios que autoricen esos servicios. La configuración de la pantalla de consentimiento de OAuth te permite configurar parte de la información que Google presenta a los usuarios, como el nombre de la aplicación y la URL de las Condiciones del Servicio.

Los proyectos predeterminados de Cloud crean una pantalla de consentimiento automáticamente a partir de los detalles del proyecto de Apps Script. No puedes ajustar esos parámetros de configuración. Los proyectos de Cloud Standard te permiten personalizar esta información. Para configurar la pantalla de consentimiento de tu secuencia de comandos, haz lo siguiente:

  1. Abre el proyecto de Cloud.
  2. Haz clic en Menú > APIs y servicios > Credenciales.
  3. Haz clic en Configurar pantalla de consentimiento.
  4. Completa cada sección del flujo de trabajo de la pantalla de consentimiento.
  5. Para registrar los cambios en cada etapa del flujo de trabajo, haz clic en Guardar y continuar.

Crear credenciales OAuth

Por lo general, Apps Script configura OAuth para los servicios que usa tu secuencia de comandos. Para algunas aplicaciones, debes crear credenciales de OAuth adicionales (IDs de cliente y secretos del cliente). Solo puedes hacer esto con proyectos estándar.

Si deseas crear un ID de cliente y un secreto de cliente para tu proyecto de secuencia de comandos, haz lo siguiente:

  1. Abre el proyecto de Cloud.
  2. Haz clic en Menú > APIs y servicios > Credenciales.
  3. Haz clic en Crear credenciales > ID de cliente de OAuth.
  4. En Tipo de aplicación, selecciona el tipo de aplicación y completa el formulario resultante si es necesario. Cuando termines, haz clic en Crear.
  5. En el cuadro de diálogo que aparece, haz clic en Descargar JSON. Puedes usar este archivo para configurar OAuth.

Agrega propietarios adicionales a un proyecto estándar de Cloud

Puedes agregar propietarios adicionales y otros roles a un proyecto estándar. Si colaboras en un proyecto, esto ayuda a garantizar que alguien de tu equipo siempre tenga acceso a la configuración de Google Cloud del proyecto de secuencia de comandos.

Puedes agregar propietarios adicionales, o bien otras funciones a un proyecto estándar, de la siguiente manera. Debes tener permisos de edición del proyecto para realizar cualquiera de estos cambios:

  1. Determina quiénes deberían ser tus colaboradores. Te recomendamos que crees o uses un Grupo de Google existente. También puedes especificar dominios en la lista de colaboradores para incluir a todos los usuarios de ese dominio.
  2. Abre el proyecto de Cloud de la secuencia de comandos.
  3. Haz clic en Menú > IAM y administración > IAM.
  4. En la parte superior, haz clic en Agregar.
  5. Sigue las instrucciones en pantalla para agregar uno o más miembros nuevos y sus funciones al proyecto de Cloud. Puedes agregar correos electrónicos individuales, Grupos de Google o dominios como miembros nuevos.
  6. Haz clic en Guardar.

Agrupa varias secuencias de comandos con un solo proyecto de Cloud

Puedes hacer que varios proyectos de Apps Script compartan el mismo proyecto estándar de Cloud. Para ello, crea un proyecto estándar y, luego, cambia cada proyecto de secuencia de comandos para usarlo. No puedes hacerlo con proyectos predeterminados.

Usa un proyecto estándar de Cloud diferente

Puedes cambiar un proyecto de secuencia de comandos para que use un proyecto estándar de Cloud diferente. Si la secuencia de comandos requiere la configuración manual del proyecto de Cloud, debes cambiar de un proyecto predeterminado a uno estándar. Para obtener más información sobre el momento en que necesitas usar un proyecto estándar, consulta los proyectos estándar de Cloud.

Efectos de cambiar a un proyecto de Cloud estándar diferente

Si cambias la secuencia de comandos de un proyecto predeterminado o uno estándar diferente, esto tendrá los siguientes efectos:

  • Si activaste los servicios avanzados para la secuencia de comandos, debes activar las APIs correspondientes en el nuevo proyecto de Cloud. Pierdes todos los datos vinculados a los servicios avanzados en el proyecto de Cloud anterior. Para obtener información sobre cómo activar las APIs en tu proyecto de Cloud, consulta Habilita las APIs de Google Workspace.
  • Si tu secuencia de comandos usa el servicio integrado de Google Drive, debes activar la API de Drive en los proyectos estándar de Cloud.

    En tu proyecto de Cloud estándar, activa la API de Drive:

    Activar la API de Drive

  • Todos los usuarios que hayan autorizado previamente la secuencia de comandos deberán volver a autorizarla. En la mayoría de los casos, todos los usuarios que autorizaron previamente apps asociadas con el proyecto nuevo también deben volver a autorizarlas.
  • Si la secuencia de comandos está asociada con una ficha de la app en Google Workspace Marketplace, la ficha, los usuarios y las opiniones de la app no se transfieren al proyecto nuevo. Debes crear una ficha de la app dentro del proyecto nuevo, y los usuarios deberán reinstalar la app. Para obtener información sobre cómo crear una ficha nueva, consulta Cómo publicar una app.
  • No puedes volver a cambiar una secuencia de comandos a un proyecto predeterminado. Apps Script borra los proyectos predeterminados después de que configuras la secuencia de comandos para que use un proyecto estándar.

Cambia a un proyecto de Cloud estándar diferente

Para cambiar el proyecto de Cloud existente de una secuencia de comandos a otro proyecto de Cloud, sigue estos pasos:

  1. Si no tienes un proyecto de Cloud adecuado, sigue las instrucciones que se indican en Crea un proyecto para crear uno. Establece un nombre de proyecto fácil de recordar para poder ubicarlo en la página Administrar recursos de la consola de Google Cloud. Apps Script usa este nombre cuando les solicita a los usuarios que autoricen la secuencia de comandos.
  2. Si quieres usar un proyecto existente, abre la página Administrar recursos de la consola de Google Cloud y busca el proyecto existente para usarlo. Debes tener los roles de navegador de proyectos y de editor de configuración de OAuth, o roles con los permisos equivalentes, para el proyecto. No puedes usar un proyecto que Apps Script haya creado automáticamente.
  3. Determina el Número de proyecto de tu proyecto de Cloud.
  4. Abre la secuencia de comandos cuyo proyecto de Cloud deseas reemplazar.
  5. A la izquierda, haz clic en Configuración del proyecto .
  6. En Proyecto de Google Cloud Platform (GCP), haz clic en Cambiar proyecto.
  7. Ingresa el número de proyecto nuevo y haz clic en Establecer proyecto.

Proyectos en la nube y unidades compartidas

Las unidades compartidas (anteriormente, unidades de equipo) proporcionan espacios compartidos en los que grupos de usuarios de Drive pueden colaborar en proyectos de Apps Script y documentos de Drive. Las unidades compartidas son valiosas cuando se desarrollan secuencias de comandos, complementos y aplicaciones web con un equipo, pero imponen algunas restricciones sobre lo que puedes hacer con proyectos de Cloud predeterminados anteriores.

En la siguiente lista de restricciones, se describe cómo interactúan los proyectos de Cloud con las unidades compartidas:

  • Si el proyecto de secuencia de comandos usa un proyecto estándar, no hay restricciones adicionales cuando el proyecto de secuencia de comandos reside en una unidad compartida.
  • Si el proyecto de secuencia de comandos usa un proyecto predeterminado que se creó a partir del 8 de abril de 2019, no hay restricciones adicionales cuando el proyecto de secuencia de comandos reside en una unidad compartida.
  • Si el proyecto de secuencia de comandos usa un proyecto predeterminado que se creó antes del 8 de abril de 2019, se aplican las siguientes restricciones mientras el proyecto de secuencia de comandos reside en una unidad compartida:
    1. No puedes acceder al proyecto predeterminado con la IU de Apps Script o la consola de Google Cloud. Esta restricción te impide realizar acciones que requieren acceso directo al proyecto.
    2. No puedes activar los servicios avanzados. Para activar los servicios avanzados, cambia a un proyecto estándar.
    3. Cuando trasladas un proyecto de Apps Script existente a una unidad compartida, Google restringe el acceso al proyecto de Cloud predeterminado. Aún puedes acceder al proyecto predeterminado si tenías acceso antes del traslado. Por ejemplo, si creaste una secuencia de comandos en la carpeta Mi unidad y, luego, la moviste a una unidad compartida, aún puedes acceder al proyecto de Cloud de la secuencia de comandos. Es posible que tus colaboradores de la unidad compartida no puedan hacerlo.
    4. Una secuencia de comandos conserva el nombre del proyecto de Cloud que tenía antes de moverse a una unidad compartida. Incluso si cambias el nombre del proyecto en la unidad compartida, los usuarios que autoricen la secuencia de comandos seguirán viendo el nombre anterior en los diálogos de autorización.

A fin de evitar las restricciones anteriores para las secuencias de comandos más antiguas, cambia a un proyecto estándar.

Obtén una lista de proyectos de Cloud de Apps Script

Si tienes el permiso resourcemanager.projects.list para la carpeta del proyecto de Apps Script de tu organización, puedes ver todos los proyectos de Apps Script Cloud estándar y predeterminados dentro de la carpeta.

  1. Abre la página Administrar recursos de la consola de Google Cloud.
  2. Junto a la carpeta Apps Script, copia el ID.
  3. Haz clic en Filtrar > ID superior y pega el ID de la carpeta de Apps Script.

Borra proyectos de Cloud de Apps Script

Para borrar un proyecto de Cloud de Apps Script, sigue los pasos que se indican en Obtén una lista de proyectos de Cloud Script Cloud, selecciona el proyecto que deseas borrar y haz clic en Borrar.

Para borrar un proyecto de Apps Script con gcloud, usa los siguientes comandos.

gcloud projects list --filter='parent.id=APPS_SCRIPT_FOLDER_ID'
gcloud projects delete PROJECT_ID

Si quieres obtener más información para borrar proyectos de Cloud, consulta Desactiva (borra) proyectos.