每个事件都属于一个日历,因此当我从Outlook API管理系统收到有关日历事件的webhook时,我希望还会收到此事件的容器ID,但不会。我得到的关于这个日历活动的信息很少,但仍然有一个ID。问题是如何获取保存此事件的日历本身的ID?
我使用统一的API来查询这个,到目前为止我得到的只是
GET https://graph.microsoft.com/beta/me/Events/< ID >
但是猜猜看,在这个回复中我找不到日历ID。 &LT;生病了&gt;
有人能告诉我如何从事件ID中检索日历ID吗?
答案 0 :(得分:1)
问题看起来很旧,但如果有人遇到同样的问题,会有一些好消息和坏消息。
好消息:图形实体,无异常事件,具有所谓的关系(请参阅docs)。要获取关系数据,您只需将关系名称附加到请求路径的末尾即可。在我们的案例中:
GET https://graph.microsoft.com/beta/me/Events/< ID >/calendar
坏消息:在这种特殊情况下,它将始终返回用户的日历。在某些情况下可能没问题,但如果您正在玩组日历,那么它将无济于事。似乎O365正在为用户日历创建“克隆”事件。尝试从Outlook(至少尝试在线版本)修改它,你会看到,现在你有两个不同的事件 - 一个在用户的日历中,另一个在一个组中。一种奇怪的逻辑,但可能它有一些基本原理。什么是真的很糟糕 - 似乎没有办法获得团体活动的“主”实例(有个人事件“克隆”)。
答案 1 :(得分:1)
是的,您不使用Beta API即可实现此目的。
https://graph.microsoft.com/v1.0/me/events/<event-id>
您也可以在此
中应用过滤器 https://graph.microsoft.com/v1.0/me/events/<eventid>/?startDateTime=<startDate> &endDateTime=<endDate>
答案 2 :(得分:0)
你是对的,API目前没有公开这个。我认为这是一个很好的建议,你应该在http://officespdev.uservoice.com/发布反馈。