使用 Outlook Calendar rest API 添加与会者会删除较旧的与会者

Adding attendee using Outlook Calendar rest API removes older attendees

我正在使用 Outlook 日历休息 API。 创建活动时,参与者已成功添加。

稍后,如果我想更新活动并再添加一名与会者,我将使用 PATCH。但它会删除该事件的所有先前参与者。

URL 创建事件

POST https://outlook.office.com/api/v2.0/me/events

正文参数

{
  "Subject": "Discuss the Calendar REST API 2",
  "Body": {
    "ContentType": "HTML",
    "Content": "I think it will meet our requirements!"
  },
  "Start": {
      "DateTime": "2017-04-25T18:00:00",
      "TimeZone": "Asia/Kolkata"
  },
  "End": {
      "DateTime": "2017-04-25T19:00:00",
      "TimeZone": "Asia/Kolkata"
  },
  "Attendees": [
    {
      "EmailAddress": {
        "Address": "abc@xyz.com",
        "Name": "ABC"
      },
      "Type": "Required"
    }
  ]
}

URL 更新事件

补丁 https://outlook.office.com/api/v2.0/me/events/{eventId}

正文参数

{
  "Attendees": [
    {
      "EmailAddress": {
        "Address": "def@xyz.com",
        "Name": "def"
      },
      "Type": "Required"
    }
 ]
}

执行此操作后,先前的与会者 "abc@xyz.com" 被删除并收到取消的活动邮件,新的与会者 "def@xyz.com" 被添加。

请帮我解决这个问题。

是的,这是预期的行为。如果您使用 PATCH api,您需要将您之前添加的与会者列表提供给它。否则,它认为您已删除它们。因此,当您使用 GET api(获取事件)时,保存与会者列表并从该列表中添加或删除,然后使用 PATCH 调用发送它。