Events: import

导入活动。此操作用于将现有活动的私密副本添加到日历中。只能导入 eventTypedefault 的事件。

已弃用的行为:如果导入的事件不是 default 事件,其类型将更改为 default,并且它可能具有的任何特定于事件类型的属性都将被舍弃。

立即试用

请求

HTTP 请求

POST https://www.googleapis.com/calendar/v3/calendars/calendarId/events/import

参数

参数名称 说明
路径参数
calendarId string 日历标识符。如需检索日历 ID,请调用 calendarList.list 方法。如果您想访问当前登录用户的主日历,请使用“primary”关键字。
可选的查询参数
conferenceDataVersion integer API 客户端支持的会议数据的版本号。版本 0 假定不支持会议数据,并忽略活动正文中的会议数据。版本 1 支持复制 ConferenceData,以及使用 conferenceData 的 createRequest 字段创建新会议。默认值为 0。 可接受的值为 01(含)。
supportsAttachments boolean 执行操作的 API 客户端是否支持活动附件。可选。默认值为 False。

授权

此请求需要获得以下至少一个范围的授权:

范围
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events
https://www.googleapis.com/auth/calendar.app.created
https://www.googleapis.com/auth/calendar.events.owned

如需了解详情,请参阅身份验证和授权页面。

请求正文

在请求正文中,提供具有以下属性的 Events 资源

属性名称 说明 备注
必需属性
end nested object 活动的结束时间(不含)。对于周期性活动,这是第一个实例的结束时间。
iCalUID string RFC5545 中定义的活动唯一标识符。它用于在各个日历系统中唯一标识活动,并且必须在通过 import 方法导入活动时提供。

请注意,iCalUIDid 并不相同,在创建事件时只能提供其中一个。在语义上,它们的一个区别在于,在周期性活动中,一个活动的所有发生时间都具有不同的 id,但它们都具有相同的 iCalUID。如需使用活动的 iCalUID 检索活动,请使用 iCalUID 参数调用 events.list 方法。如需使用活动的 id 检索活动,请调用 events.get 方法。

start nested object 活动的开始时间(含)。对于周期性活动,这是第一个实例的开始时间。
可选属性
anyoneCanAddSelf boolean 是否允许任何人自行邀请自己参加活动(已弃用)。可选。默认值为 False。 可写入
attachments[].fileUrl string 附件的网址链接。

如需添加 Google 云端硬盘文件附件,请使用与 Drive API 中 Files 资源的 alternateLink 属性相同的格式。

添加附件时必须指定。

可写入
attendees[] list 活动的参加者。如需详细了解如何与其他日历用户安排活动,请参阅有参加者的活动指南。服务账号需要使用全网域授权来填充参会者名单。 可写入
attendees[].additionalGuests integer 额外房客人数。可选。默认值为 0。 可写入
attendees[].comment string 参加者的回答评论。可选。 可写入
attendees[].displayName string 参会者的姓名(如果有)。可选。 可写入
attendees[].email string 参会者的电子邮件地址(如有)。添加参会者时,必须提供此字段。必须是符合 RFC5322 的有效电子邮件地址。

添加参会者时必须指定这项设置。

可写入
attendees[].optional boolean 相应人员是否为可选参加者。可选。默认值为 False。 可写入
attendees[].resource boolean 相应出席者是否为资源。只能在首次将参会者添加到活动时设置。后续修改会被忽略。可选。默认值为 False。 可写入
attendees[].responseStatus string 参会者的回复状态。可能的值包括:
  • needsAction” - 受邀者尚未回复邀请(建议用于新活动)。
  • declined” - 相应参会者已拒绝邀请。
  • tentative” - 受邀者暂时接受了邀请。
  • accepted” - 受邀者已接受邀请。
可写入
attendeesOmitted boolean 是否可能已从活动的表示形式中省略了参加者。在检索活动时,这可能是由于 maxAttendee 查询参数指定的限制所致。更新活动时,此参数可用于仅更新参与者的回答。可选。默认值为 False。 可写入
colorId string 活动的颜色。这是指颜色定义 event 部分中的一个条目的 ID(请参阅 颜色端点)。可选。 可写入
conferenceData nested object 与会议相关的信息,例如 Google Meet 会议的详细信息。如需创建新的会议详细信息,请使用 createRequest 字段。如需保留所做更改,请务必将所有事件修改请求的 conferenceDataVersion 请求参数设置为 1 可写入
description string 活动的说明。可包含 HTML。可选。 可写入
end.date date 如果活动为全天活动,则为日期,格式为“yyyy-mm-dd”。 可写入
end.dateTime datetime 时间,以组合的日期时间值(根据 RFC3339 格式设置)表示。除非在 timeZone 中明确指定了时区,否则必须提供时区偏移量。 可写入
end.timeZone string 指定时间所用的时区。(格式采用 IANA 时区数据库名称,例如“Europe/Zurich”。)对于周期性活动,此字段是必需字段,用于指定展开周期性活动的时区。对于单次活动,此字段为可选字段,用于指明活动开始/结束时间的自定义时区。 可写入
extendedProperties.private object 相应活动副本(显示在此日历上)的私有属性。 可写入
extendedProperties.shared object 其他参加者日历中活动副本之间共享的属性。 可写入
focusTimeProperties nested object 专注时间活动数据。如果 eventTypefocusTime,则使用此字段。 可写入
gadget.display string 信息中心的显示模式。已弃用。可能的值包括:
  • icon” - 该微件会显示在日历视图中活动标题的旁边。
  • chip” - 点击相应活动时,微件会显示。
可写入
gadget.height integer 微件的高度(以像素为单位)。高度必须是大于 0 的整数。可选。已弃用。 可写入
gadget.preferences object 偏好设置。 可写入
gadget.title string 小工具的标题。已弃用。 可写入
gadget.type string 相应设备的类型。已弃用。 可写入
gadget.width integer 相应信息中心的宽度(以像素为单位)。宽度必须是大于 0 的整数。可选。已弃用。 可写入
guestsCanInviteOthers boolean 除组织者之外的参会者是否可以邀请他人参加活动。可选。默认值为 True。 可写入
guestsCanModify boolean 除组织者之外的参与者是否可以修改活动。可选。默认值为 False。 可写入
guestsCanSeeOtherGuests boolean 指定除组织者之外的参会者能否查看活动的参会者。可选。默认值为 True。 可写入
location string 活动的地理位置(自由格式文本)。可选。 可写入
organizer object 活动的组织者。如果组织者也是参会者,则 attendees 中会有一个单独的条目来指明这一点,并将 organizer 字段设置为 True。如需更改组织者,请使用转移操作。只读,导入活动时除外。 可写入
organizer.displayName string 组织者的名称(如果有)。 可写入
organizer.email string 组织者的电子邮件地址(如果有)。必须是符合 RFC5322 的有效电子邮件地址。 可写入
originalStartTime.date date 如果活动为全天活动,则为日期,格式为“yyyy-mm-dd”。 可写入
originalStartTime.dateTime datetime 时间,以组合的日期时间值(根据 RFC3339 格式设置)表示。除非在 timeZone 中明确指定了时区,否则必须提供时区偏移量。 可写入
originalStartTime.timeZone string 指定时间所用的时区。(格式采用 IANA 时区数据库名称,例如“Europe/Zurich”。)对于周期性活动,此字段是必需字段,用于指定展开周期性活动的时区。对于单次活动,此字段为可选字段,用于指明活动开始/结束时间的自定义时区。 可写入
outOfOfficeProperties nested object “不在办公室”活动数据。如果 eventTypeoutOfOffice,则使用此字段。 可写入
recurrence[] list 重复性活动的 RRULE、EXRULE、RDATE 和 EXDATE 行的列表,如 RFC5545 中所指定。请注意,此字段中不允许使用 DTSTART 和 DTEND 行;活动开始时间和结束时间在 startend 字段中指定。对于单次活动或周期性活动的实例,此字段会被省略。 可写入
reminders.overrides[] list 如果活动不使用默认提醒,则此属性会列出特定于活动的提醒;如果未设置,则表示未为此活动设置任何提醒。覆盖提醒的数量上限为 5 个。 可写入
reminders.overrides[].method string 相应提醒所用的方法。可能的值包括:
  • email” - 系统会通过电子邮件发送提醒。
  • popup” - 通过界面弹出式窗口发送提醒。

添加提醒时需要提供。

可写入
reminders.overrides[].minutes integer 提醒应在活动开始前多少分钟触发。有效值介于 0 到 40320 之间(以分钟为单位,相当于 4 周)。

添加提醒时需要提供。

可写入
reminders.useDefault boolean 日历的默认提醒是否适用于相应活动。 可写入
sequence integer iCalendar 中的序列号。 可写入
source.title string 来源的标题;例如网页的标题或电子邮件的主题。 可写入
source.url string 指向资源的来源的网址。网址方案必须是 HTTP 或 HTTPS。 可写入
start.date date 如果活动为全天活动,则为日期,格式为“yyyy-mm-dd”。 可写入
start.dateTime datetime 时间,以组合的日期时间值(根据 RFC3339 格式设置)表示。除非在 timeZone 中明确指定了时区,否则必须提供时区偏移量。 可写入
start.timeZone string 指定时间所用的时区。(格式采用 IANA 时区数据库名称,例如“Europe/Zurich”。)对于周期性活动,此字段是必需字段,用于指定展开周期性活动的时区。对于单次活动,此字段为可选字段,用于指明活动开始/结束时间的自定义时区。 可写入
status string 活动的状态。可选。可能的值包括:
  • confirmed”表示活动已确认。这是默认状态。
  • tentative” - 活动已暂时确认。
  • cancelled” - 活动已取消(已删除)。仅当进行增量同步(指定了 syncTokenupdatedMin)或将 showDeleted 标志设置为 true 时,list 方法才会返回已取消的活动。get 方法始终会返回这些值。

    “已取消”状态表示两种不同的状态,具体取决于活动类型:

    1. 未取消的周期性活动的已取消例外情况表示相应实例不应再向用户显示。客户端应在父周期性活动的整个生命周期内存储这些事件。

      已取消的异常仅保证填充了 idrecurringEventIdoriginalStartTime 字段的值。其他字段可能为空。

    2. 所有其他已取消的活动都表示已删除的活动。客户应移除本地同步的副本。此类已取消的活动最终会消失,因此请勿指望它们会无限期保留。

      已删除的事件仅保证填充了 id 字段。

    在组织者的日历中,已取消的活动会继续显示活动详情(摘要、地点等),以便恢复(取消删除)。同样,用户受邀参加但手动移除的活动也会继续提供详细信息。不过,如果将 showDeleted 设置为 false,增量同步请求将不会返回这些详细信息。

    如果活动的组织者发生更改(例如通过 move 操作),并且原始组织者不在参加者列表中,则会留下一个已取消的活动,其中只有 id 字段保证会填充。

可写入
summary string 活动的标题。 可写入
transparency string 活动是否会占用日历中的时间。可选。可能的值包括:
  • opaque” - 默认值。活动会占用日历中的时间。这相当于在日历界面中将显示为设置为忙碌
  • transparent” - 活动不会占用日历中的时间。这相当于在日历界面中将将我显示为设置为有空
可写入
visibility string 活动的公开范围。可选。可能的值包括:
  • default” - 使用日历中活动的默认公开范围。这是默认值。
  • public” - 活动是公开的,日历的所有读者都可以查看活动详情。
  • private” - 活动是不公开的,只有活动参会者可以查看活动详情。
  • confidential” - 活动是不公开的。提供此值是为了保持兼容性。
可写入

响应

如果成功,此方法将在响应正文中返回一项 Events 资源

试试看!

使用下面的 API Explorer 对实际数据调用此方法,然后查看响应。