Script Service

脚本

此服务提供对脚本触发器和脚本发布的访问权限。

名称简介
AuthMode一个枚举,用于标识 Apps Script 能够通过触发的函数执行哪些类别的已获授权服务。
AuthorizationInfo用于确定用户是否需要授权此脚本使用一项或多项服务,以及提供授权对话框的网址的对象。
AuthorizationStatus用于表示脚本授权状态的枚举。
CalendarTriggerBuilder日历触发器的构建器。
ClockTriggerBuilder时钟触发器的构建器。
DocumentTriggerBuilder文档触发器的构建器。
EventType表示触发的事件类型的枚举。
FormTriggerBuilder表单触发器的构建器。
InstallationSource一个枚举,用于指示脚本是如何作为插件安装给当前用户的。
ScriptApp访问和操作脚本发布和触发器。
Service访问和操控脚本发布。
SpreadsheetTriggerBuilder电子表格触发器的构建器。
StateTokenBuilder允许脚本创建可在回调 API(例如 OAuth 流程)中使用的状态令牌。
Trigger脚本触发器。
TriggerBuilder适用于脚本触发器的通用构建器。
TriggerSource一个枚举,表示导致触发器触发的事件的来源。

AuthMode

属性

属性类型说明
NONEEnum一种模式,不允许访问任何需要授权的服务。
CUSTOM_FUNCTIONEnum此模式允许访问一小部分服务,以便在自定义电子表格函数中使用。
LIMITEDEnum一种模式,允许访问一小部分服务。
FULLEnum一种模式,允许访问需要授权的所有服务。

AuthorizationInfo

方法

方法返回类型简介
getAuthorizationStatus()AuthorizationStatus获取一个值,该值表示用户是否需要授权此脚本使用一个或多个服务(例如 ScriptApp.AuthorizationStatus.REQUIRED)。
getAuthorizationUrl()String获取可用于授予对脚本的访问权限的授权网址。

AuthorizationStatus

属性

属性类型说明
REQUIREDEnum用户需要授权此脚本使用一项或多项服务。
NOT_REQUIREDEnum用户已向此脚本授予其当前所需的所有授权。

CalendarTriggerBuilder

方法

方法返回类型简介
create()Trigger创建触发器并将其返回。
onEventUpdated()CalendarTriggerBuilder指定在创建、更新或删除日历条目时触发的触发器。

ClockTriggerBuilder

方法

方法返回类型简介
after(durationMilliseconds)ClockTriggerBuilder指定触发器在当前时间之后运行的最短时长(以毫秒为单位)。
at(date)ClockTriggerBuilder指定触发器的运行时间。
atDate(year, month, day)ClockTriggerBuilder指定触发器在指定日期触发,默认情况下为午夜附近(+/- 15 分钟)。
atHour(hour)ClockTriggerBuilder指定触发器运行的时刻。
create()Trigger创建触发器。
everyDays(n)ClockTriggerBuilder指定每 n 天运行一次触发器。
everyHours(n)ClockTriggerBuilder指定每 n 小时运行一次触发器。
everyMinutes(n)ClockTriggerBuilder指定每 n 分钟运行一次触发器。
everyWeeks(n)ClockTriggerBuilder指定每 n 周运行一次触发器。
inTimezone(timezone)ClockTriggerBuilder指定触发器运行时指定日期/时间的时区。
nearMinute(minute)ClockTriggerBuilder指定触发器运行的分钟数(正负 15 分钟)。
onMonthDay(day)ClockTriggerBuilder指定触发器在月份中的运行日期。
onWeekDay(day)ClockTriggerBuilder指定触发器运行的星期几。

DocumentTriggerBuilder

方法

方法返回类型简介
create()Trigger创建并返回新触发器。
onOpen()DocumentTriggerBuilder指定在文档打开时触发的触发器。

EventType

属性

属性类型说明
CLOCKEnum当基于时间的事件达到特定时间时,触发器会触发。
ON_OPENEnum当用户打开 Google 文档、表格或表单文件时,触发器会触发。
ON_EDITEnum当用户修改 Google 表格文件(例如,在单元格中输入新值,这会计为修改而非更改)时,触发器就会触发。
ON_FORM_SUBMITEnum当用户回复 Google 表单时,触发器会触发。
ON_CHANGEEnum当用户更改 Google 表格文件(例如,通过添加行,这会计为更改而非修改)时,触发器就会触发。
ON_EVENT_UPDATEDEnum在指定 Google 日历上创建、更新或删除活动后,触发器就会触发。

FormTriggerBuilder

方法

方法返回类型简介
create()Trigger创建并返回新触发器。
onFormSubmit()FormTriggerBuilder指定在向表单提交回答时触发的触发器。
onOpen()FormTriggerBuilder指定在打开表单的修改视图时触发的触发器。

InstallationSource

属性

属性类型说明
APPS_MARKETPLACE_DOMAIN_ADD_ONEnum插件是由管理员为用户的网域安装的。
NONEEnum脚本未作为插件运行。
WEB_STORE_ADD_ONEnum用户从 Chrome 应用商店安装了该插件。

ScriptApp

属性

属性类型说明
AuthModeAuthMode一个枚举,用于标识 Apps Script 能够通过触发的函数执行哪些类别的已获授权服务。
AuthorizationStatusAuthorizationStatus用于表示脚本授权状态的枚举。
EventTypeEventType表示触发的事件类型的枚举。
InstallationSourceInstallationSource一个枚举,表示脚本是如何作为插件安装给用户的。
TriggerSourceTriggerSource一个枚举,表示导致触发器触发的事件的来源。
WeekDayWeekday表示星期几的枚举。

方法

方法返回类型简介
deleteTrigger(trigger)void移除给定触发器,使其不再运行。
getAuthorizationInfo(authMode)AuthorizationInfo获取用于确定用户是否需要授权此脚本使用一项或多项服务,以及提供授权对话框的网址的对象。
getIdentityToken()String如果已授予 openid 范围,则为有效用户获取 OpenID Connect 身份令牌。
getInstallationSource()InstallationSource返回一个枚举值,用于指明脚本是如何作为插件安装给当前用户的(例如,用户是通过 Chrome 网上应用店自行安装的,还是域名管理员为所有用户安装的)。
getOAuthToken()String获取有效用户的 OAuth 2.0 访问令牌
getProjectTriggers()Trigger[]获取与当前项目和当前用户关联的所有可安装的触发器。
getScriptId()String获取脚本项目的唯一 ID。
getService()Service获取用于控制将脚本发布为 Web 应用的对象。
getUserTriggers(document)Trigger[]仅针对此脚本或插件,获取给定文档中此用户拥有的所有可安装触发器。
getUserTriggers(form)Trigger[]获取给定表单中此用户拥有的所有可安装触发器,仅限此脚本或插件。
getUserTriggers(spreadsheet)Trigger[]仅获取给定电子表格中此用户拥有的所有可安装触发器(仅限此脚本或插件)。
invalidateAuth()void使有效用户执行当前脚本的授权失效。
newStateToken()StateTokenBuilder为可在回调 API(例如 OAuth 流程)中使用的状态令牌创建构建器。
newTrigger(functionName)TriggerBuilder开始创建可安装的触发器,该触发器在触发时会调用给定函数。

Service

方法

方法返回类型简介
getUrl()String返回 Web 应用的网址(如果已部署);否则返回 null
isEnabled()Boolean如果脚本可作为 Web 应用访问,则返回 true

SpreadsheetTriggerBuilder

方法

方法返回类型简介
create()Trigger创建触发器并将其返回。
onChange()SpreadsheetTriggerBuilder指定在电子表格的内容或结构发生变化时触发的触发器。
onEdit()SpreadsheetTriggerBuilder指定在电子表格被修改时触发的触发器。
onFormSubmit()SpreadsheetTriggerBuilder指定在有表单提交到电子表格时触发的触发器。
onOpen()SpreadsheetTriggerBuilder指定在打开电子表格时触发的触发器。

StateTokenBuilder

方法

方法返回类型简介
createToken()String构造状态令牌的加密字符串表示形式。
withArgument(name, value)StateTokenBuilder向令牌添加参数。
withMethod(method)StateTokenBuilder设置回调函数。
withTimeout(seconds)StateTokenBuilder设置令牌的有效时长(以秒为单位)。

Trigger

方法

方法返回类型简介
getEventType()EventType返回触发器触发的事件类型。
getHandlerFunction()String返回触发器触发时要调用的函数。
getTriggerSource()TriggerSource返回会触发触发器的事件的来源。
getTriggerSourceId()String返回特定于来源的 ID。
getUniqueId()String返回一个唯一标识符,可用于区分触发器。

TriggerBuilder

方法

方法返回类型简介
forDocument(document)DocumentTriggerBuilder创建并返回与给定文档相关联的 DocumentTriggerBuilder
forDocument(key)DocumentTriggerBuilder创建并返回与具有指定 ID 的文档相关联的 DocumentTriggerBuilder
forForm(form)FormTriggerBuilder创建并返回与给定表单相关联的 FormTriggerBuilder
forForm(key)FormTriggerBuilder创建并返回与具有指定 ID 的表单相关联的 FormTriggerBuilder
forSpreadsheet(sheet)SpreadsheetTriggerBuilder创建并返回与给定电子表格相关联的 SpreadsheetTriggerBuilder
forSpreadsheet(key)SpreadsheetTriggerBuilder创建并返回与具有给定 ID 的电子表格相关联的 SpreadsheetTriggerBuilder
forUserCalendar(emailId)CalendarTriggerBuilder返回用于构建日历触发器的构建器。
timeBased()ClockTriggerBuilder创建并返回 ClockTriggerBuilder,以构建基于时间的触发器。

TriggerSource

属性

属性类型说明
SPREADSHEETSEnumGoogle 表格会触发该触发器。
CLOCKEnum时间驱动型事件会触发触发器。
FORMSEnumGoogle 表单会触发该触发器。
DOCUMENTSEnumGoogle 文档会触发该触发器。
CALENDAREnumGoogle 日历会触发该触发器。