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取得可用於授予指令碼存取權的授權網址。
getAuthorizedScopes()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取得物件,用於檢查使用者是否已授予所有指令碼需求的授權。
getAuthorizationInfo(authMode, oAuthScopes)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開始建立可安裝的觸發條件,當觸發時會呼叫指定的函式。
requireAllScopes(authMode)void驗證使用者是否已針對指令碼要求的所有範圍授予同意聲明。
requireScopes(authMode, oAuthScopes)void驗證使用者是否已同意授予要求的權限範圍。

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