如何通过 API 在 Google Sheet 上设置应用程序脚本?

How can I set an app script on a Google Sheet via the API?

有没有办法通过 Google Sheets API 在新 Google Sheet 上设置应用程序脚本?我们使用 pygsheets 作为 Python API 的 Google Sheet 客户。由于我们使用 onSelectionChange 触发器用日期填充某些单元格,因此我们想在 之后 设置应用程序脚本,我们在电子表格中填充了行。

Google 表格 API 没有执行此操作的方法。您可以改用 Apps Script API,但有一些注意事项可能适用于您的用例,也可能不适用于您的用例:

  • 不过,您可以使用 projects.create to create a new Apps Script project and attach it to a Sheets file by specifying the parentId field, which is the Sheet's ID. However, there are no methods to attach a preexisting script to a Sheet. You can still use projects.updateContent 添加所需的脚本文件。
  • cannot unbind 附加脚本后。
  • 这个 API does not work with service accounts, and the user running it needs to explicitly allow it in their settings 页面。这是出于安全原因,因为允许恶意应用程序在您的帐户上自由编写脚本可能是灾难性的,但它增加了您的用户需要采取的更多步骤才能 运行 您的应用程序。