6

我正在使用带有谷歌应用程序的谷歌日历(v3)API,并且希望使用单个 oauth2 凭据来确定哪些用户在任何给定时间是空闲/忙碌的。

我想使用这个: https ://developers.google.com/google-apps/calendar/v3/reference/freebusy/query

但要使用它,我需要获取所有用户的所有日历 ID。我不能这样做,因为 google 日历的 java 客户端只能检索拥有凭据的用户的日历。

注意:我可以通过配置 api 访问所有用户。

任何帮助将不胜感激,因为我完全被这个阻止了。

4

2 回答 2

7

对于主日历,calendarId 是用户的电子邮件地址。经过身份验证的用户还需要具有访问日历的权限。如果您使用的是 Provisioning API,那么我假设您是超级管理员,并且超级管理员可以访问其域中的每个日历。

您尝试执行的特定查询将 calendarIds 列表作为 JSON 列表进行查询。如果您只关心主日历,则将每个用户的电子邮件设置为这样的 id:

"items": [
  {
    "id": "user1@example.com"
  },
  {
    "id": "user2@example.com"
  }
]
于 2012-11-13T22:41:15.747 回答
2

2013 年,我花了大约一周的时间与 Google 日历集成。

有几个步骤:

  1. 建立凭证
  2. 获取日历所有者授权
  3. 检索授权码
  4. 请求令牌
  5. 检索令牌
  6. 获取日历 ID
  7. 更新代币
  8. 检索日历条目

我在 2013 年更详细地描述了这些步骤,现在网络存档在这里:https ://web.archive.org/web/20130215064337/http://www.tqis.com/eloquency/googlecalendar.htm#DOC77

于 2013-01-05T19:19:11.307 回答