您可以使用 Apps Script API (舊稱 Apps Script Execution API),在您有權存取的指令碼專案中,遠端執行函式。應用程式可以呼叫特定的 Apps Script 函式,視需要提供輸入參數,並接收傳回的回應。
本頁的範例說明如何透過 API 執行一些常見的作業。如需詳細資訊 (包括特殊授權規定),請參閱「執行函式」指南。
在這些範例中,預留位置 scriptId 用於指出您要提供指令碼專案 ID 的位置。請按照下列步驟找出指令碼 ID:
- 在 Apps Script 專案中,按一下左上方的「專案設定」圖示 。
- 按一下「腳本 ID」旁的「複製」。
執行一項函式
以下 scripts.run 要求會呼叫名為 listFolderContent
的 Apps Script 函式,並將 Drive folderId 和整數 MAX_SIZE
做為引數傳遞。函式會在開發模式下執行,也就是說,系統會執行函式的最新儲存版本,無論是以哪個版本部署可執行檔。
要求通訊協定如下所示。「執行函式」指南說明如何使用 Google API 用戶端程式庫,以不同語言實作執行要求。
POST https://script.googleapis.com/v1/scripts/scriptId:run
{ "function": "listFolderContent", "parameters": [ folderId, MAX_SIZE ], "devMode": true }
在呼叫的 Apps Script 函式完成後,此要求的回應會包含執行結果或錯誤回應。在這個範例中,函式會成功傳回檔案名稱陣列:
{ "response": { "result": [ "fileTitle1", "fileTitle2", "fileTitle3" ] }, }
如果函式在 Apps Script 執行期間發生錯誤,回應可能會像這樣:
{ "response": { "error": { "code": 3, "message": "ScriptError", "details": [{ "@type": "type.googleapis.com/google.apps.script.v1.ExecutionError", "errorMessage": "The script enountered an exeception it could not resolve.", "errorType": "ScriptError", "scriptStackTraceElements": [{ "function": "listFolderContent", "lineNumber": 14 }] }] } } }