我们如何通过 API 在任何电子邮件的 google 日历中创建活动?

How can we create event in any email's google calendar through API?

我正在创建一个项目,根据学生时段我想为他们的日历分配一个事件,我有他们的电子邮件 20-30,所有电子邮件都是随机的,不属于组织。

如何在他们的日历上创建活动? 我有一个通过 Google 云控制台激活的服务帐户。我还想附上他们活动的会议链接?

有谁知道这样做的架构吗?我想在 java spring 引导中实现它,但只是一个艺术就可以了。 谢谢

I am creating a project where according to students slots I want to assign a event to their calendar,I have their emails 20-30 of those,All the emails are random and does not belong to a organization.

我认为这意味着它们不属于您的 google 工作区域。

How can I create a event on their calendar? I have a service account activated through Google cloud console. I also want to attach meet links to their events?

如果您在 google 工作区域上设置 domain wide delegation,则服务帐户仅适用于 Google 日历。它仅适用于域电子邮件帐户。

在您的情况下,您将需要使用 Oauth2 并让每个用户授权您的应用程序访问他们的日历,然后您将能够在他们的日历上创建活动。如果您请求离线访问,您可以将每个用户的刷新令牌存储在系统中的某个地方。然后,当您需要访问他们的系统时,您将能够请求一个新的访问令牌。

注意:对于非域电子邮件,这是您的唯一选择,您必须获得用户的授权,并且获得授权的唯一方法是通过 Oauth2。

Does anyone knows an architecture to do this? I want to implement this in java spring boot but just a architecture will be fine. Thanks

查看 google api java client library there are examples for using Oauth2 with Java