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 }] }] } } }