You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过API识别Google Drive文件关联的Script ID及脚本内容?

获取Google Drive文件关联的Apps Script ID的方法

没问题,我来帮你解决这个Script ID获取的问题,分两种场景来拆解:

1. 处理独立的Apps Script项目文件

独立的脚本项目本身就是Google Drive中的一种特殊文件,你可以直接通过Drive API筛选出这类文件,并且它们的Drive文件ID就是Script ID,完全可以直接用来调用projects.get接口。

具体操作:

  • 在调用Drive API的list方法时,添加q参数过滤文件类型:
    q: "mimeType='application/vnd.google-apps.script'"
    
  • 返回的每个文件项里的id字段,就是对应的Script ID,直接拿去用就行。

2. 获取绑定到Google Workspace文件的脚本ID

像绑定到Sheet、Doc、Form这类文件的脚本,不是独立的Drive文件,所以得用另一种方式提取:

方法A:通过Drive API的files.get直接获取

Drive API的文件资源里有个专门的scriptId字段,只要你在调用files.get时指定返回这个字段,就能拿到绑定脚本的ID:

  • 调用时设置fields参数,比如:
    fields: "id,name,scriptId"
    
  • 如果目标文件有绑定的脚本,scriptId字段会返回对应的ID;没有绑定脚本的话,这个字段会是null。

方法B:通过Apps Script API关联Drive文件

你也可以调用Apps Script API的projects.list方法,获取用户名下所有的脚本项目,每个项目会包含parentId字段——这个parentId就是绑定的Drive文件的ID。通过这个关联关系,你可以把Drive文件和对应的脚本ID匹配起来。

关键注意事项

  • 权限范围:确保你的OAuth2授权包含了必要的权限:
    • Drive API需要https://www.googleapis.com/auth/drive(至少是drive.readonly)
    • Apps Script API需要https://www.googleapis.com/auth/script.projects.readonly
  • 极少数旧的绑定脚本可能无法通过方法A返回scriptId,这种情况可以用方法B兜底。

内容的提问来源于stack exchange,提问作者James Phillips

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 09:10:48