Добавление участника с помощью API отдыха Календаря Outlook удаляет старых участников
Я использую API календаря отдыха Outlook. При создании мероприятия участник успешно добавлен.
Позже, если я хочу обновить событие и добавить еще одного участника, я использую 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 для обновления события
PATCH 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" добавляется.
Пожалуйста, помогите мне решить эту проблему.
1 ответ
Да, это ожидаемое поведение. Если вы используете PATCH api, вам нужно указать список участников, которых вы добавили ранее. В противном случае он думает, что вы удалили их. Поэтому, когда вы используете API GET (для получения события), сохраните список участников и добавьте или удалите его из этого списка, а затем отправьте его с помощью вызова PATCH.