This page describes the top-level of an Apps Script project's manifest file JSON data structure.
The substructures of the manifest are defined in separate pages:
- Top-level
Manifest
addOns
: Configuration for a Google Workspace Add-onchat
: Configuration for a Google Chat appdependencies
: Dependencies for Apps Script libraries and advanced servicesSheets
: Configuration for one or more Google Sheets macrosExecutionApi
Webapp
: Configuration for a web app
Manifest
The top-level of the manifest configuration.
JSON representation |
---|
{ "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) } } |
Fields | |
---|---|
addOns |
The resource configuration of the project if deployed as a Google Workspace Add-on. |
chat |
The configuration of the project if deployed as a Google Chat app. To configure the details of the Chat app, you must enable the Google Chat API. For details, see Configure the Google Chat API.
Apps Script handles authorization at the script level.
Chat apps that require authorization can't perform
any actions until the user authorizes the Chat app.
To post a message before authorization, you can add an
The following example shows a Chat app that responds with a default welcome message when a user adds it to a Chat space: "chat": { "addToSpaceFallbackMessage": "Thank you for adding me!" } |
dependencies |
The configuration of advanced services and libraries enabled for use by the script project. |
exceptionLogging |
The location where exceptions are logged. The valid settings are the following:
|
executionApi |
The script project's API executable configuration. This is only used if the project is deployed for API execution. |
oauthScopes[] |
The definition of authorization scopes used by the script project. |
runtimeVersion |
The runtime version the
script is using. If this field is not present in the manifest, the
script uses the default runtime (
|
sheets |
The resource configuration that defines Sheets macros. |
timeZone |
The script time zone in one of the available ZoneId values such as "America/Denver". |
urlFetchWhitelist[] |
A list of HTTPS URL prefixes. If present, any URL endpoint fetched must match one of the prefixes in this list. This can help to protect user data. This field is optional for test deployments, but is required for deployments. Learn more about allowlisting URLs. |
webapp |
The script project's web app configuration, which is only used if the project is deployed as a web app. |