Office 365 Calendar Rest API:会议与。约定

时间:2016-03-23 20:31:16

标签: api rest calendar office365 outlook-restapi

美好的一天,

为了只在需要时添加详细信息,我将描述我遇到的问题,然后根据需要提供示例来找到答案。

在Outlook中,我可以创建一个约会,这似乎只是一个会议,我是组织者,也是唯一没有邀请发送的与会者。

当我在Outlook中创建一个日历条目作为约会(没有邀请),然后在Outlook中编辑它时," To:"字段未显示,我可以点击邀请与会者。

在Outlook中,我还可以创建一个新的会议,这个会议似乎与约会相同,但是除了我自己之外的其他与会者会在此过程中收到邀请。

在此页面上:https://msdn.microsoft.com/en-us/office/office365/api/calendar-rest-operations它表示"事件操作事件表示用户日历上的约会或会议。事件可以是系列主数据(用于重复发生的事件),事件,单个实例或异常。"

如果我在Outlook客户端中创建会议和约会,然后使用API​​请求它们并比较事件的属性,我找不到它们之间的功能差异。他们都让我作为组织者,而我作为参与者,他们似乎都有相同的事件类型和其他属性。

如果我使用API​​创建一个新事件,并尝试离开" Attendees" null,它将无法使用"错误请求"创建。如果我把自己当作组织者和参加者(或者只是参加者),它会创建活动,但会在我的展望中显示为会议,并且没有回复"。

我无法弄清楚设置的组合,以使用API​​创建一个在outlook而非会议中显示为约会的事件。

在使用其余的api创建没有任何与会者/邀请的活动时,是否需要以某种方式发送的属性或设置?

谢谢!

史蒂夫

答案:

感谢Jeffrey Chen,我能够在发送的帖子数据中找到问题。

我为CalendarEvent创建了一个DTO,其中包含" Attendees"作为列表,但我没有初始化此列表。

如果我在没有参加者的情况下序列化为JSON,则此属性变为null而不是空数组[]。

事实证明,与会者属性可以完全省略,但如果包含它,则必须是空数组或包含实际与会者,null会导致错误请求。

谢谢!

1 个答案:

答案 0 :(得分:2)

  

我无法弄清楚设置的组合,以使用API​​创建一个在outlook而非会议中显示为约会的事件。

如果我理解正确,您希望通过Outlook REST API创建约会。如果是这样,您可以发布如下请求:

{
  "Subject": "Create from Office 365 API",
  "Start": {
    "DateTime": "2016-03-24T15:00:00",
    "TimeZone": "China Standard Time"
  },
  "End": {
    "DateTime": "2016-03-24T16:00:00",
    "TimeZone": "China Standard Time"
  }
}

enter image description here