如何在 Google Calendar API 中获取 CalendarListEntry 的真正所有者以区分拥有的日历和共享的日历?

问题描述

Google Calendar API v3 返回的 CalendarList 条目包含 accessRole 属性。但是,此属性中的 owner 值仅代表 ACL 方面的所有者“角色”,在共享日历时,ACL 在 Google 的网络界面中映射到“进行更改和管理共享”角色。

但很明显,每个日历都有一个真正的帐户所有者。这个所有者不能被其他共享的“所有者”修改,这是唯一一种允许我们区分真正“拥有”的日历与其他人共享但被授予“所有者”角色的日历,当访问一个用户CalendarList

Google 自己的 Web GUI 在日历设置下显示此值。它可以在真实所有者和共享所有者的帐户中看到。

但我找不到通过 API 获取此值的方法。没有它,我将无法仅检索用户的自有日历,这正是我在我的应用中尝试执行的操作。

知道这是否可行,或者只是 Google Api 的限制?

解决方法

从 Google Calendar API 的角度来看,任何用户

可以读取和修改事件和访问控制列表

calendar owner

这与 calendar creator 不同。

目前没有 API 端点来检索后者,但您可以在 Google's Issue Tracker 上为其提交功能请求。