Обновление события
Пространство имен: microsoft.graph
Важно!
API версии /beta
в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Обновление свойств объекта event.
Этот API доступен в следующих национальных облачных развертываниях.
Глобальная служба | Правительство США L4 | Правительство США L5 (DOD) | Китай управляется 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Примечания для обновления определенных свойств
Обратите внимание на следующие действия и рекомендации при обновлении соответствующих свойств.
Свойство attendees и обновления собраний
- Обновление события, которое включает только свойство attendees в тексте запроса, отправляет обновление собрания только измененным участникам.
- Обновление события, которое удаляет участника, указанного в списке рассылки, отправляет обновление собрания всем участникам.
Свойство body и собрания по сети
Перед обновлением текста события, настроенного в качестве собрания по сети, сначала получите свойство body, примените соответствующие изменения к содержимому и сохраните BLOB-объект собрания для собрания по сети. Случайное удаление BLOB-объекта собрания из текста отключит собрание по сети.
Свойства end и start, а также соответствующие часовые пояса
При обновлении часового пояса начала или завершения события сначала найдите поддерживаемые часовые пояса, чтобы устанавливать только часовые пояса, настроенные для сервера почтового ящика пользователя.
Разрешения
Для вызова этого API требуется одно из следующих разрешений. Дополнительные сведения, включая сведения о том, как выбрать разрешения, см. в статье Разрешения.
Тип разрешения | Разрешения (в порядке повышения привилегий) |
---|---|
Делегированные (рабочая или учебная учетная запись) | Calendars.ReadWrite |
Делегированные (личная учетная запись Майкрософт) | Calendars.ReadWrite |
Для приложений | Calendars.ReadWrite |
HTTP-запрос
PATCH /me/events/{id}
PATCH /users/{id | userPrincipalName}/events/{id}
PATCH /groups/{id}/events/{id}
PATCH /me/calendar/events/{id}
PATCH /users/{id | userPrincipalName}/calendar/events/{id}
PATCH /groups/{id}/calendar/events/{id}
PATCH /me/calendars/{id}/events/{id}
PATCH /users/{id | userPrincipalName}/calendars/{id}/events/{id}
PATCH /me/calendarGroups/{id}/calendars/{id}/events/{id}
PATCH /users/{id | userPrincipalName}/calendarGroups/{id}/calendars/{id}/events/{id}
Заголовки запросов
Имя | Тип | Описание |
---|---|---|
Authorization | string | Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации. |
Текст запроса
В тексте запроса укажите значения для соответствующих полей, которые необходимо обновить. Предыдущие значения существующих свойств, не включенных в текст запроса, останутся прежними или будут повторно вычислены с учетом измененных значений других свойств. Для достижения оптимальной производительности не следует включать существующие значения, которые не изменились.
Свойство | Тип | Описание |
---|---|---|
attendees | Участник | Коллекция участников события. Дополнительные примечания об обновлении определенных свойств см. в дополнительных примечаниях. |
body | ItemBody | Текст сообщения, связанного с событием. Дополнительные примечания об обновлении определенных свойств см. в дополнительных примечаниях. |
categories | Коллекция String | Категории, связанные с событием. |
end | DateTimeTimeZone | Дата, время и часовой пояс завершения события. Дополнительные примечания об обновлении определенных свойств см. в дополнительных примечаниях. |
hideAttendees | Boolean | Если присвоено значение true , каждый участник видит только себя в приглашении на собрание и списке собрания Отслеживание. Значение по умолчанию: false. |
importance | String | Важность события. Возможные значения: low , normal , high . |
isAllDay | Boolean | Задайте значение true, если событие длится весь день. Если значение равно true, то независимо от того, один или несколько дней длится событие, время его начала и окончания должно быть установлено на полночь в одном и том же часовом поясе. |
isOnlineMeeting | Boolean |
True , если это событие содержит информацию о собраниях по сети; в противном случае — false . Значение по умолчанию: false. Необязательно. |
isReminderOn | Boolean | Задайте значение true, если установлено напоминание пользователю о событии. |
location | Расположение | Место проведения события. |
locations | Коллекция Location | Места проведения события или участия в нем. Свойства location и locations всегда совпадают друг с другом. Если вы обновите свойство location, предыдущие места в коллекции locations будут удалены и заменены новым значением location. |
onlineMeetingProvider | onlineMeetingProviderType | Представляет поставщика службы собраний по сети. Возможные значения: teamsForBusiness , skypeForBusiness и skypeForConsumer . Необязательно. |
recurrence | PatternedRecurrence | Расписание повторения события. |
reminderMinutesBeforeStart | Int32 | Позволяет указать, за сколько минут до начала события появляется напоминание. |
responseRequested | Boolean | Задайте значение true, если отправитель желает получить сообщение о согласии участвовать в событии или отклонении соответствующего приглашения. |
sensitivity | String | Возможные значения: normal , personal , private , confidential . |
showAs | String | Отображаемое состояние. Возможные значения: free , tentative , busy , oof , workingElsewhere , . unknown |
начать | DateTimeTimeZone | Дата, время и часовой пояс начала события. Дополнительные примечания об обновлении определенных свойств см. в дополнительных примечаниях. |
subject | String | Текст в строке темы сообщения о событии. |
Так как ресурс event поддерживает расширения, с помощью операции PATCH
можно добавлять, обновлять или удалять собственные данные, касающиеся определенных приложений, в настраиваемых свойствах расширения в существующем экземпляре event.
Если обновляемый ресурс event является главным событием повторяющегося ряда, содержит несколько участников и экземпляры, обновленные отдельно, отправляется несколько сообщений электронной почты с уведомлениями: одно для главного ряда и по одному для каждого обновленного экземпляра.
Отклик
В случае успеха этот метод возвратит код отклика 200 OK
и обновленный объект event в теле отклика.
Примечание. Этот метод может вернуть отклик "HTTP 400 — ошибочный запрос" с кодом ошибки
ErrorOccurrenceCrossingBoundary
и следующим сообщением об ошибке: "Измененная копия пересекается со смежной копией или перекрывает ее". Это означает, что обновление нарушает следующее ограничение Outlook для повторяющихся исключений: повторение нельзя перемещать на день предыдущего повторения или до него, а также на день следующего повторения или после него.
Пример
Запрос
Ниже показан пример запроса.
PATCH https://graph.microsoft.com/beta/me/events/{id}
Content-type: application/json
{
"originalStartTimeZone": "originalStartTimeZone-value",
"originalEndTimeZone": "originalEndTimeZone-value",
"responseStatus": {
"response": "",
"time": "2016-10-19T10:37:00Z"
},
"recurrence": null,
"reminderMinutesBeforeStart": 99,
"isOnlineMeeting": true,
"onlineMeetingProvider": "teamsForBusiness",
"isReminderOn": true,
"hideAttendees": false,
"categories": ["Red category"]
}
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-type: application/json
{
"originalStartTimeZone": "originalStartTimeZone-value",
"originalEndTimeZone": "originalEndTimeZone-value",
"responseStatus": {
"response": "",
"time": "2016-10-19T10:37:00Z"
},
"recurrence": null,
"iCalUId": "040000008200E00074=",
"uid": "040000008200E00074=",
"reminderMinutesBeforeStart": 99,
"isOnlineMeeting": true,
"onlineMeetingProvider": "teamsForBusiness",
"isReminderOn": true,
"hideAttendees": false,
"onlineMeeting": {
"joinUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_NzIyNzhlMGEtM2YyZC00ZmY0LTlhNzUtZmZjNWFmZGNlNzE2%40thread.v2/0?context=%7b%22Tid%22%3a%2272f988bf-86f1-41af-91ab-2d7cd011db47%22%2c%22Oid%22%3a%22bc55b173-cff6-457d-b7a1-64bda7d7581a%22%7d",
"conferenceId": "177513992",
"tollNumber": "+91 22 6241 6885"
}
}