Office365 API-管理员访问其他用户/房间的日历事件

问题描述:

通过点击此请求: https://outlook .office365.com/api/v1.0/users/room @ email.com/events 在浏览器中,我可以输入管理员用户名和密码,并获取该特定房间的日历事件. 但是,当我尝试通过经过身份验证的管理员从本机应用程序发出此调用时,会收到以下响应: reason =该呼叫应访问oauth令牌中指定的邮箱."; error_category ="invalid_grant" 如何获得经过身份验证为管理员的特定会议室的日历事件?

By hitting this request: https://outlook.office365.com/api/v1.0/users/room@email.com/events in a browser I can enter my admin username and password and get Calendar Events for that specific room. However when I try making this call from a native app with the admin authenticated I get this response: reason="The call should access the mailbox specified in the oauth token.";error_category="invalid_grant" How can I get calendar events for a specific room authenticated as the admin?

目前,我们仅允许访问属于已认证用户的邮件,日历和联系人.因此,您的管理员访问conf的情况.目前不支持会议室日历.访问属于其他用户的资源,例如conf.房间日历是我们支持的路线图,但我们尚无时间表与您分享.

At present we only allow access to mail, calendar and contacts belonging to the authenticated user. So, your scenario of an admin accessing the conf. room calendar is not supported at this time. Access to resources belonging to other users e.g. conf. room calendar is on our roadmap to support but we don't yet have a timeframe to share with you.

在此期间,您有两个选择.

In the meantime, you have two options.

选项#1::如果您能够在服务器上运行该应用程序,则可以构建一个需要管理员同意但有权访问Office 365租户中任何邮箱的服务应用程序.您将需要使本机应用程序与服务器上运行的应用程序对话.请参阅此

Option #1: If you are able to run the app on a server, you can build a service app that requires admin consent, but is authorized to access any mailbox in the Office 365 tenant. You will need to make your native app talk to the app running on the server. See this blog for more details.

选项2::您可以使用我们的Exchange Web服务SOAP API来实现您的方案.有关此选项的更多详细信息,请参见 Office 365共享日历.相关链接.

Option #2: You can use our Exchange Web Services SOAP API to implement your scenario. See Office 365 shared calendars for more details on this option and relevant links.