Script Service

脚本

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

名称简介
AuthMode一个枚举,用于确定 Apps 脚本可以通过触发的函数执行哪些类别的授权服务。
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 脚本可以通过触发的函数执行哪些类别的授权服务。
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 日历会导致触发器触发。