Google 组织日历 api

Google calendar api for organization

我正在开发一个学校应用程序。我可以使用 google 日历 API 和 NodeJS 创建事件。我在学校 google 帐户上创建了 clientID 和 secretID。每次创建活动时,只有管理员有权开始会议。但我希望老师(正在创建活动)成为组织者。我怎样才能做到这一点?

事件的 organizer 字段是 只读 字段。您可以使用 move 操作来移动事件并更改组织者,但这只能在经过身份验证的用户对目标日历具有写入权限时才能完成。

一种解决方案是使用服务帐户并执行全域委托。通过这种方式,您将能够冒充相关用户并组织所需的活动。

根据服务帐号 documentation:

A service account is a special kind of account used by an application or a virtual machine (VM) instance, not a person. Applications use service accounts to make authorized API calls.

至于执行全域委派,您可能想看看这个:

In enterprise applications you may want to programmatically access users data without any manual authorization on their part. In G Suite domains, the domain administrator can grant to third party applications domain-wide access to its users' data — this is referred as domain-wide delegation of authority. To delegate authority this way, domain administrators can use service accounts with OAuth 2.0.

参考