更新事件
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
更新 event 对象的属性。
更新特定属性的注释
更新相应属性时,请注意以下行为或建议:
与会者 属性和会议更新
- 在请求正文中仅包含 与会者 属性的事件更新仅向已更改的与会者发送会议更新。
- 删除指定为通讯组列表成员的与会者的事件更新会向所有与会者发送会议更新。
Body 属性和联机会议
在更新已设置为联机会议的事件的正文之前,请确保首先获取 Body 属性,对内容应用适当的更改,并保留联机会议的会议 blob。无意中从正文中删除会议 blob 会禁用联机会议。
结束 和 开始 属性及其时区
更新事件开始或结束时间的时区时,首先找到支持的时区,以确保仅设置针对用户的邮箱服务器配置的时区。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 | 权限(从最低特权到最高特权) |
|---|---|
| 委派(工作或学校帐户) | Calendars.ReadWrite |
| 委派(个人 Microsoft 帐户) | 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 | Attendee | 事件的与会者集合。 请参阅 其他有关更新特定属性的注释。 |
| body | ItemBody | 与事件相关联的邮件正文。 请参阅 其他有关更新特定属性的注释。 |
| categories | String collection | 与事件相关联的类别。 |
| end | DateTimeTimeZone | 事件结束的日期、时间和时区。 请参阅 其他有关更新特定属性的注释。 |
| hideAttendees | 布尔值 | 如果设置为 true,则每个与会者仅会在会议请求和会议 跟踪 列表中看到自己。默认值为 False。 |
| importance | String | 事件的重要性。可能的值为: low、 normal、 high。 |
| isAllDay | Boolean | 如果事件持续整天则设为 true。如果为 true,则无论是单天事件还是多天事件,都必须将开始和结束时间设置为午夜,并且必须处于同一时区。 |
| isOnlineMeeting | Boolean | 若此事件包含联机会议信息则为 True,反之则为 false。 默认为 false。 可选。 |
| isReminderOn | Boolean | 如果设置警报以提醒用户有事件,则设置为 true。 |
| 位置 | 位置 | 事件的位置。 |
| 位置 | 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 |
| start | DateTimeTimeZone | 事件的开始日期、时间和时区。 请参阅 其他有关更新特定属性的注释。 |
| subject | String | 事件的主题行文本。 |
由于 事件 资源支持 扩展,因此可以使用 PATCH 操作在现有 事件 实例的扩展自定义属性中添加、更新或删除自己的特定于应用的数据。
如果你正更新的 事件 是定期系列的主事件,包含多个与会者,并且具有已单独更新的实例,则将发送多个通知电子邮件:一个用于主系列,另一个用于已更新的实例。
响应
如果成功,此方法在响应正文中返回 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,
"uid": "iCalUId-value",
"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,
"uid": "iCalUId-value",
"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"
}
}
另请参阅
反馈
提交和查看相关反馈