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.

Las subestructuras del manifiesto se definen en páginas separadas:

Manifiesto

Es el nivel superior de la configuración del manifiesto.

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)

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. Para configurar los detalles de la app de Chat, debes habilitar la API de Google Chat. Para obtener más información, consulta Configura 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 autoriza. 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)

La configuración de los servicios avanzados y las bibliotecas habilitadas para que las use el proyecto de secuencia de comandos

exceptionLogging

string

Es la 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)

La configuración ejecutable de la API del proyecto de secuencia de comandos Esto solo se usa si el proyecto se implementa para la ejecución de la API.

oauthScopes[]

string

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, la secuencia de comandos usa el entorno de ejecución predeterminado (STABLE). Las siguientes son las opciones válidas para este campo:

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

object (Sheets)

La configuración de recursos que define las macros de Hojas de cálculo

timeZone

string

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

urlFetchWhitelist[]

string

Una lista de prefijos de URLs 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)

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.