当前位置: 首页 > 知识库问答 >
问题:

访问共享日历(例如通过Office 365 REST API访问会议室)

西门飞翮
2023-03-14

我正在使用Office 365 REST api访问我的帐户日历。我想访问我的帐户可以访问的所有日历,特别是出现在我的Office 365界面的“其他日历”部分中的会议室日历。

目前,如果我查询“https://outlook.office365.com/api/v1.0/me/calendars”终结点,则我只获取我拥有的日历,而不是会议室日历。

关于如何获取它们的任何线索(通过Office 365 REST API)?

共有2个答案

葛磊
2023-03-14

我已经能够通过使用以下endpoint来完成我相信您正在询问的事情(使用office 365 API从已与outlook日历共享的日历中获取事件):

.../api/v2.0/Users('PRIMARY_USER_ID')/Calendars('SHARED_CALENDAR_ID')/Events

我不确定此endpoint是否能让您访问您拥有部分访问权限的日历,但您应该能够从直接与您的outlook/office 365帐户共享的任何日历中获取活动/信息。

> < li>

当您第一次使用outlook帐户登录并通过Microsoft的验证过程时,PRIMARY_USER_ID(我在这里称之为PRIMARY _ USER _ ID)会作为响应对象的一部分返回给您。这不是您尝试访问的日历的ID,而是与其他日历共享的主日历(您可以在< code>api/v2.0/meendpoint找到的日历)的概念。我见过的所有id都以一串由破折号分隔的字母和数字的形式出现。

CALENDAR_ID是您试图从中获取事件的共享日历的ID。如果您向< code >发出请求,就可以看到每个共享日历的id.../api/v2.0/me/calendars/这将返回与您共享的每个日历、所有者信息以及该日历的“ID”。

如果您插入这些id,并向上面的url发出请求,您应该能够从API获取日历事件。

彭风华
2023-03-14

REST API不支持以用户身份登录时访问其他用户的日历。您可以使用客户端凭据模型授予应用程序访问组织中所有日历的权限,并以这种方式访问它们。

 类似资料:
  • 假设我被授予访问其他用户日历的权限。我可以在Google calendar web UI的“其他日历”下成功地查看该日历。 该日历可以通过Caldav访问吗?如果是,怎么做? 我的CalDAV客户端开始查看https://apidata.googleusercontent.com/CalDAV/v2,并通过oauth2进行身份验证。它遵循当前用户主体URL,并从那里到日历主页集。在calendar

  • 有没有一种方法,因为我的用户对共享邮箱具有完全访问权限而不同意该权限?必须有一种方法来访问邮箱,而不需要在组织中具有管理权限? 我期待着看到一个答案:)谢谢

  • 使用Office 365 API,我们希望允许用户查看会议室日历,并根据他们在Office 365中的权限为活动预订它们。 我理解,使用服务应用程序可以获得管理员的同意,但这并不是我们所有的用例都可以做到的。我们需要使用用户的实际权限,而不是在后台使用管理员的权限来绕过它们。 我还根据这个问题和这个问题了解到,使用以前的Office 365 API是不可能的。 我的问题是现在是否可以使用新的 MS

  • 我正在阅读以前Office 365共享日历的问题 使用Oauth进行身份验证的用户现在可以访问共享日历了吗? 基本上,我尝试使用“OAuth2客户端凭据流”来实现一个服务,但是我希望只有当日历与使用rest api调用的特定用户共享时才能访问该日历:https://outlook.office365.com/api/v1.0/Users/"电子邮件id/calendar groups/" "其他日

  • 如何知道使用Exchange EWS API共享了哪个日历。

  • 问题内容: 我正在尝试编写一个Java应用程序,该应用程序将访问其他 共享 邮箱以阅读电子邮件并执行其他活动。我阅读自己的INBOX(或其文件夹和内容)没有问题,但是很难找到有关如何访问(并最终解析/读取)共享邮箱的信息。 问题答案: 在其他答案的帮助下,我找到了以下解决方案,该解决方案适用于com.sun.mail:javax.mail:1.6.2 使用javax.mail:mail:1.4.7