Google apps script 使用带有Google Sheets API的REST调用更新Google Sheet
我正在尝试使用Postman或Curl的RESTAPI调用将一些数据写入google电子表格。通过阅读官方文档、一些教程和博客,我完成了以下工作Google apps script 使用带有Google Sheets API的REST调用更新Google Sheet,google-apps-script,google-developers-console,Google Apps Script,Google Developers Console,我正在尝试使用Postman或Curl的RESTAPI调用将一些数据写入google电子表格。通过阅读官方文档、一些教程和博客,我完成了以下工作 创建一个谷歌控制台项目 启用GoogleSheetAPI 创建一个新的服务并下载密钥JSON文件(具有API访问和编辑器角色) 使用Google cloud SDK激活服务帐户(CLI命令:gcloud auth Activate service account--key file keys.json) 获取访问令牌(CLI命令:gcloud auth
CLI命令:gcloud auth Activate service account--key file keys.json
)CLI命令:gcloud auth print访问令牌
)在您的情况下,您可以使用一个小的更改将服务帐户变成一个有用的工具。您可以授予它以访问用户数据。这样,您就可以使用该帐户访问任何用户数据(无需事先与服务帐户共享)。请向我询问任何其他疑问。但据我所知,由于此处仅向通用电子表格添加数据,我认为不需要用户数据。阅读您的评论,我假设电子表格可以由一个或多个人员(即所有者和编辑)编辑。我知道您想用服务帐户编辑电子表格。在这种情况下,在授予它域范围的委托后,您可以将作为这些用户(所有者或编辑器)之一使用。在这种情况下,服务帐户将向API发送请求,但更改将作为授权用户执行。
{
"error": {
"code": 403,
"message": "Request had insufficient authentication scopes.",
"status": "PERMISSION_DENIED",
"details": [
{
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"reason": "ACCESS_TOKEN_SCOPE_INSUFFICIENT",
"domain": "googleapis.com",
"metadata": {
"service": "sheets.googleapis.com",
"method": "google.apps.sheets.v4.SpreadsheetsService.GetValues"
}
}
]
}
}