Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google sheets 是否与服务帐户信息共享或检索与特定服务帐户共享的所有文档?_Google Sheets_Service Accounts - Fatal编程技术网

Google sheets 是否与服务帐户信息共享或检索与特定服务帐户共享的所有文档?

Google sheets 是否与服务帐户信息共享或检索与特定服务帐户共享的所有文档?,google-sheets,service-accounts,Google Sheets,Service Accounts,我正在寻找一种方法 1在与特定服务帐户共享工作表时读取/检索共享通知 或 2获取与特定服务帐户共享的所有工作表的列表 背景:用户复制现有图纸模板,修改其内容并与我的服务帐户电子邮件共享,以便我可以通过编程方式检索图纸数据。这仍然需要用户在共享后将生成的共享链接输入到我的后端 相反,我更喜欢使用API来接收类似与服务帐户共享的webhook事件或读取与此服务帐户共享的所有工作表的选项 这是否需要GSuite,或者是否有API/webhook来实现这一点?答案: 是的,您可以使用驱动器API检索此信

我正在寻找一种方法

1在与特定服务帐户共享工作表时读取/检索共享通知

2获取与特定服务帐户共享的所有工作表的列表

背景:用户复制现有图纸模板,修改其内容并与我的服务帐户电子邮件共享,以便我可以通过编程方式检索图纸数据。这仍然需要用户在共享后将生成的共享链接输入到我的后端

相反,我更喜欢使用API来接收类似与服务帐户共享的webhook事件或读取与此服务帐户共享的所有工作表的选项

这是否需要GSuite,或者是否有API/webhook来实现这一点?

答案: 是的,您可以使用驱动器API检索此信息

更多信息: 如果您以服务帐户的身份调用Drive:files.list,它将返回服务帐户驱动器的文件

如果您的用户正在与服务帐户共享工作表,您可以通过对该方法进行API调用来检索这些工作表,并在q参数中将sharedWithMe标志设置为true,将mimeType设置为application/vnd.google-apps.spreadsheet

JavaScript示例: 我希望这对你有帮助

参考资料:
您能否将Drive.files.list作为服务帐户?在q字段中将sharedWithMe标志设置为true时?谢谢,我们必须通过PHPSDK实现这一点,但这很容易,而且效果很好!
function execute() {
    return gapi.client.drive.files.list({
      "q": "sharedWithMe and mimeType = 'application/vnd.google-apps.spreadsheet'"
    })
        .then(function(response) {
                // Handle the results here (response.result has the parsed body).
                console.log("Response", response);
              },
              function(err) { console.error("Execute error", err); });
  }