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取得用於控制以網路應用程式形式發布指令碼的物件。
getUserTriggers(document)Trigger[]取得指定文件中此使用者擁有的所有可安裝觸發事件,僅限此指令碼或外掛程式。
getUserTriggers(form)Trigger[]僅針對這個指令碼或外掛程式,取得使用者在指定表單中擁有的所有可安裝觸發事件。
getUserTriggers(spreadsheet)Trigger[]僅針對此指令碼或外掛程式,取得指定試算表中此使用者擁有的所有可安裝觸發事件。
invalidateAuth()void讓有效使用者執行目前指令碼的授權失效。
newStateToken()StateTokenBuilder為狀態權杖建立建構工具,可用於回呼 API (例如 OAuth 流程)。
newTrigger(functionName)TriggerBuilder開始建立可安裝的觸發條件,當觸發時會呼叫指定的函式。

Service

方法

方法傳回類型簡短說明
getUrl()String如果已部署網頁應用程式,則傳回該應用程式的網址;否則傳回 null
isEnabled()Boolean如果指令碼可做為網頁應用程式存取,則傳回 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傳回可用於區分觸發事件的專屬 ID。

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 日曆會觸發事件。