Run a script function
run_functionExecute a named function in a Google Apps Script project, supply JSON-serializable arguments, and retrieve the result or the script's stack trace on failure.
Instructions
Runs a named function in the script and returns { done, result } — or, when the script itself throws, { done, script_error: { type, message, stack } } with the Apps Script stack trace (this is a script bug, not a transport error; do not blindly retry, the function may have side effects). HARD PREREQUISITES the API enforces: (1) the script must have an API-executable deployment (Deploy > New deployment > API executable, or a manifest with executionApi); (2) this server's OAuth client must belong to the SAME Google Cloud project as the script (script editor > Project Settings > change the GCP project number); (3) the OAuth token must carry every scope the script itself uses (listed in the editor under Project Settings > Show "appsscript.json") — otherwise the call fails with 403 PERMISSION_DENIED or 404. parameters are positional and must be JSON-serializable (no Apps Script objects like Document or Range). dev_mode=true runs the latest saved code instead of the deployed version — owner only. Executions time out after 6 minutes on the Apps Script side.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dev_mode | No | Run the latest saved code instead of the deployed version (script owner only; default false). | |
| script_id | Yes | The script project id — from the Apps Script editor URL (script.google.com/home/projects/<scriptId>/edit) or from create_project output. For standalone projects it doubles as the Drive file id. | |
| parameters | No | Positional arguments, JSON-serializable primitives/arrays/objects only. | |
| function_name | Yes | The name of the function to run, without parentheses. |