Estructura del manifiesto

En esta página, se describe el nivel superior de la estructura de datos JSON del archivo de manifiesto de un proyecto de Apps Script. El manifiesto define la función o el propósito del proyecto de Apps Script.

Representación JSON
{
  "addOns": {
    object (AddOns)
  },
  "chat": {},
  "dependencies": {
    object (Dependencies)
  },
  "exceptionLogging": string,
  "executionApi": {
    object (ExecutionApi)
  },
  "oauthScopes": [
    string
  ],
  "runtimeVersion": string,
  "sheets": {
    object (Sheets)
  },
  "timeZone": string,
  "urlFetchWhitelist": [
    string
  ],
  "webapp": {
    object (Webapp)
  }
}
Campos
addOns

object (AddOns)

Es la configuración de recursos del proyecto si se implementa como un complemento de Google Workspace.

chat

object

La configuración del proyecto si se implementa como una app de Google Chat.

Nota: Para las apps de Chat nuevas, te recomendamos que uses el campo addOns.chat. Si mantienes una app de Chat existente que usa el campo chat, debe ser un objeto vacío.

Para configurar los detalles de la app de Chat, debes habilitar la API de Google Chat. Para obtener más detalles, consulta Cómo configurar la API de Google Chat.

Apps Script controla la autorización a nivel de la secuencia de comandos. Las apps de chat que requieren autorización no pueden realizar ninguna acción hasta que el usuario las autorice. Para publicar un mensaje antes de la autorización, puedes agregar un objeto addToSpaceFallbackMessage al manifiesto. Si tu app de Chat requiere lógica de inicialización, es posible que debas duplicar esta lógica en la acción onMessage.

En el siguiente ejemplo, se muestra una app de Chat que responde con un mensaje de bienvenida predeterminado cuando un usuario la agrega a un espacio de Chat:

        "chat": {
          "addToSpaceFallbackMessage": "Thank you for adding me!"
        }
        

dependencies

object (Dependencies)

Es la configuración de los servicios avanzados y las bibliotecas habilitados para el uso del proyecto de secuencia de comandos.

exceptionLogging

string

Ubicación en la que se registran las excepciones. Los parámetros de configuración válidos son los siguientes:

  • NONE indica que no se registran las excepciones.
  • STACKDRIVER indica que las excepciones se registran en Stackdriver.
executionApi

object (ExecutionApi)

Es la configuración ejecutable de la API del proyecto de secuencia de comandos. Solo se usa si el proyecto se implementa para la ejecución de la API.

oauthScopes[]

string

Es la definición de los alcances de autorización que usa el proyecto de secuencia de comandos.

runtimeVersion

string

La versión del entorno de ejecución que usa la secuencia de comandos. Si este campo no está presente en el manifiesto, el script usa el entorno de ejecución predeterminado (STABLE). Las opciones válidas para este campo son las siguientes:

  • STABLE indica el entorno de ejecución predeterminado (actualmente, Rhino).
  • V8 indica el entorno de ejecución potenciado por V8.
  • DEPRECATED_ES5 indica el tiempo de ejecución de Rhino. Establecer este valor también impide la migración automática a V8.
sheets

object (Sheets)

Es la configuración del recurso que define las macros de Hojas de cálculo.

timeZone

string

La zona horaria de la secuencia de comandos en uno de los valores de ZoneId disponibles, como "America/Denver".

urlFetchWhitelist[]

string

Es una lista de prefijos de URL HTTPS. Si está presente, cualquier extremo de URL recuperado debe coincidir con uno de los prefijos de esta lista. Esto puede ayudar a proteger los datos del usuario. Este campo es opcional para las implementaciones de prueba, pero es obligatorio para las implementaciones. Obtén más información para incluir URLs en la lista de entidades permitidas.

webapp

object (Webapp)

Es la configuración de la app web del proyecto de secuencia de comandos, que solo se usa si el proyecto se implementa como una app web.