我正在尝试使用端点GET:https://graph.microsoft.com/v1.0/users/{UserEmail}/calendarView?startDateTime=2020-09-25T19:00:00-08:00&endDateTime=2020-10-02T19:00:00-08:00检索用户的日历视图,并且返回
`{
"error": {
"code": "ErrorItemNotFound",
"message": "The specified object was not found in the store.",
"innerError": {
"date": "2020-10-23T15:11:51",
"request-id": "20409ad4-2f27-48bd-8fe8-690580ccd4e9"
}
}
}`
这仅在我们客户端环境中的某些用户上发生。 最初我们认为,这是一个与权限或访问令牌相关的问题,但是看起来都不错,就像用户拥有读取/写入日历的所有权限一样,访问令牌也看起来很有效,因为其他一些端点使用相同的访问令牌也可以得出有效的结果。 / p>
因此,我尝试进一步进行调查,结果发现,如果用户的Outlook日历上有事件的异常类型,则仅/ CalendarView端点返回404。
例如:该特定用户在其日期为10/01/2020的日历上具有事件的异常类型。因此,如果我查询具有不同日期范围的相同终点的Graph(例如GET:https://graph.microsoft.com/v1.0/users/{email}/calendarView?startDateTime=2020-09-25T19:00:00-08:00&endDateTime=2020-09-29T19:00:00-08:00),它可以正常工作,并且给出日期范围之间的所有事件,但是如果我更改endDateTime = 2020-10-02T19:00:00- 08:00给出404响应。
为了验证这一点,我尝试切换其他端点 GET:https://graph.microsoft.com/v1.0/users/{email}/calendar/events?$filter=start/datetime ge'2020-10-01'和end / dateTime lt'2020-10-02' 效果不错,就像它给了我系列大师赛
因此,我想使用实例终点 GET:https://graph.microsoft.com/v1.0/users/{UserEmail}/events/{EventId}/instances?startDateTime=2020-09-29T19:00:00-08:00&endDateTime=2020-10-26T19:00:00-08:00 来获取Series Master Event的所有实例,但令人惊讶的是,它也未能从该终点返回Exception类型的事件。 According to their documentation it supposed to return Occurrences and Exception of Series Master,但是对于此用户,它仅返回事件的所有发生类型,而未能返回10/01上的事件的异常类型。
此后,我又尝试了一个端点POST:https://graph.microsoft.com/v1.0/me/calendar/getSchedule,发现该特定事件已安排在他的日历上。 但是它只提供有关事件的一些信息。
有人知道如何解决吗?