通过Microsoft Outlook Calendar API从重复事件中排除日期

时间:2017-08-08 15:58:37

标签: outlook calendar microsoft-graph rrule

我正在Outlook日历中创建一个重复发生的事件,并希望通过API检索其完整规范。

例如,该事件每个周末重复一年。 但是,我从时间线中删除了一些周末,为重复规则创建了一个例外。

如何通过API获取这些排除日期?当我收到包含Outlook Calendar API事件的回复时,我找不到包含排除日期的条目。

Outlook Calendar API重复出现的响应:

"recurrence": {
                "pattern": {
                    "type": "weekly",
                    "interval": 1,
                    "month": 0,
                    "dayOfMonth": 0,
                    "daysOfWeek": [
                        "saturday",
                        "sunday"
                    ],
                    "firstDayOfWeek": "monday",
                    "index": "first"
                },
                "range": {
                    "type": "endDate",
                    "startDate": "2017-08-19",
                    "endDate": "2018-01-30",
                    "recurrenceTimeZone": "FLE Standard Time",
                    "numberOfOccurrences": 0
                }
            },

1 个答案:

答案 0 :(得分:0)

event object上,有type个属性,其值包括SingleInstanceOccurrenceExceptionSeriesMaster

如果你有系列的事件ID,你应该能够查询这样的异常: https://graph.microsoft.com/v1.0/me/events/[series id]/instances?startdatetime=2017-08-14T16:35:08.284Z&enddatetime=2017-08-18T16:35:08.284Z&$filter=type eq 'Exception'

根据docs for listing event instances,它返回“指定时间范围内事件的发生和例外”。

更新:这可能实际上无效。我现在正在测试它,调用返回200状态代码,但是一个空数组的事件异常。当我了解更多内容时,我会调查并更新。