Api 未在Office 365中正确创建全天事件

Api 未在Office 365中正确创建全天事件,api,rest,office365,Api,Rest,Office365,我正在尝试通过其REST API将某些事件导出到Office 365中的日历 我将IsAllDay设置为true,并在UTC中将开始和结束设置为午夜 有效载荷如下所示: { “正文”:{ “内容”:“议程”, “ContentType”:“HTML” }, “结束”:“2015-02-01T00:00:00Z”, “ShowAs”:“忙”, “开始”:“2015-01-30T00:00:00Z”, “变更键”:“X2+akAeClEa0OJ8r6nC5QgABW30vaQ=”, “地点”:{ “

我正在尝试通过其REST API将某些事件导出到Office 365中的日历

我将
IsAllDay
设置为true,并在UTC中将开始和结束设置为午夜

有效载荷如下所示:

{
“正文”:{
“内容”:“议程”,
“ContentType”:“HTML”
},
“结束”:“2015-02-01T00:00:00Z”,
“ShowAs”:“忙”,
“开始”:“2015-01-30T00:00:00Z”,
“变更键”:“X2+akAeClEa0OJ8r6nC5QgABW30vaQ=”,
“地点”:{
“DisplayName”:“VesterProgade”
},
“主题”:“更新标题”,
“IsAllDay”:真的吗
}
这看起来很好,如果我再次获得该事件,有效负载将恢复为设置。但是,当我转到outlook.office365.com时,事件现在跨越2天,而不是预期的1天。但是,持续时间显示为1天。打开Outlook中的“全天”显示了问题所在。因为我在中欧时间,所以比UTC早了一个小时。开始显示为2015-01-30 01:00,结束显示为2015-02-01 00:59。所以在我的时区里,在被子下面,它似乎并没有作为一个全天的活动来存储

当你使用f.ex。EWS,您通常设置会议的时区,但这似乎不可能

我试图用时区信息给出开始和结束,但我得到一个400,告诉我它必须以UTC提供。据我所知,我无能为力,希望微软能解决这个问题。还是我遗漏了什么


编辑:该事件实际上在Outlook for Mac中正确显示,因此这可能只是Outlook.office365.com上OWA中的一个问题

API现在支持时区。您在这里要做的不是将
开始
结束
指定为UTC(由末尾的“Z”前缀指示),而是在时区中指定它。然后将
StartTimeZone
EndTimeZone
值设置为“中欧时间”。比如说:

{
“正文”:{
“内容”:“议程”,
“ContentType”:“HTML”
},
“开始”:“2015-01-30T00:00:00+01:00”,
“结束”:“2015-02-01T00:00:00+01:00”,
“ShowAs”:“忙”,
“地点”:{
“DisplayName”:“VesterProgade”
},
“主题”:“更新标题”,
“IsAllDay”:没错,
“StartTimeZone”:“中欧标准时间”,
“结束时区”:“中欧标准时间”
}

有人向我指出,API实际上现在支持时区,因此我更改了答案:)。太棒了!我到处找,因为我觉得它一定在某个地方,但在任何Office 365文档中都找不到。非常感谢,没问题!它还没有在文档中,所以我一开始也不知道!我会把它加上去的。我帮不上忙me@JasonJohnston,如果一个事件是全天持续一天,那么它将是相同的日期和时间,对吗?那么我应该在结束日期中手动添加一天吗?