如何使用Google日历v3访问其他用户日历?

时间:2012-11-13 10:39:50

标签: google-calendar-api google-apps google-oauth

我正在使用谷歌日历(v3)API和谷歌应用程序,并希望使用单个oauth2凭据来确定用户在任何给定点上的空闲/忙碌。

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

但要使用它,我需要为所有用户获取所有日历ID。我无法做到这一点,因为谷歌日历的Java客户端只能检索拥有该凭证的用户的日历。

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

任何帮助都会非常感激,因为我完全被这个阻止了。

2 个答案:

答案 0 :(得分:7)

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

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

"items": [
  {
    "id": "user1@example.com"
  },
  {
    "id": "user2@example.com"
  }
]

答案 1 :(得分:1)

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

有几个步骤:

  1. 建立证书
  2. 获得日历所有者授权
  3. 检索授权代码
  4. 请求请求
  5. RETRIEVE TOKEN
  6. 获取日历ID
  7. 更新令牌
  8. 检索日历单元
  9. 我在2013年更详细地介绍了这些步骤,现在已在此处进行网站存档:https://web.archive.org/web/20130215064337/http://www.tqis.com/eloquency/googlecalendar.htm#DOC77