- 打印
谷歌日历连接器
将郁金香与谷歌日历集成
简介
谷歌日历应用程序接口(Google Calendar API)允许用户通过对其谷歌账户设置正确的访问权限来创建、读取和编辑谷歌日历事件。该连接器的目标是使用 OAuth 身份验证,并通过 HTTP连接器与谷歌日历 V3 Api 和 Tulip 集成,为客户提供一个可导入其实例的开箱即用连接器。
目的
本文档重点介绍了不同的 HTTP 连接器功能,这些功能可通过 HTTP 调用谷歌日历 V3 API 端点来与谷歌日历进行交互,从而尝试对日历进行各种读写操作,这些操作可用于各种用例。
API 文档
前提条件
- 在 Google 云控制台创建账户并配置 OAuth 2.0 凭据。更多信息请参阅 Google 的 API 文档。
- 在 Google API 控制台中激活 Google Calendar API。
郁金香连接详情
需要在 Tulip 连接器上配置以下信息。
- 运行于:云连接器主机
- 主机:www.googleapis.com
- 端口:443
- TLS: 是
- 连接器身份验证:OAuth2.0(管理员/操作员)
- 以下是需要传递的作用域:
- https://www.googleapis.com/auth/calendar
- https://www.googleapis.com/auth/calendar.events
连接器功能
获取所有日历
目的
此连接器将获取用户 google 日历中的所有日历。
端点
HTTP GET 调用端点 https://www.googleapis.com:443/calendar/v3/users/me/calendarList
所需输入
无需输入
所需输出提取器
- 日历 ID:日历的唯一标识符,用于执行其他任务
- 标题:日历标题
- 随响应返回的其他参数可作为输出参数的一部分
获取所有事件
目的
此连接器将获取特定日历的所有事件。
端点
HTTP GET 调用端点 -https://www.googleapis.com:443/calendar/v3/calendars/{CalendarID}/events
所需输入
以下是需要传递的 URL 参数
- 日历 ID - 日历 ID/在日历 ID 参数中输入 "Primary "作为值。指定 "Primary "可获取用户主日历上的所有事件。
所需输出提取器
- 日历 ID:用于执行其他任务的日历的唯一标识符
- 事件 ID:事件的唯一标识符,用于提取特定事件的详细信息。
- 标题:事件的标题
- 随响应返回的其他参数可作为输出参数的一部分包含在内
通过过滤器获取事件
用途
该连接器获取查询参数指定日期范围内的所有事件。
端点
HTTP GET 调用端点 -https://www.googleapis.com:443/calendar/v3/calendars/{CalendarID}/events?maxResults={MaxResults}&orderBy=updated&timeMax={MaxTime}&timeMin={MinTime}&singleEvents=true
必须输入
以下是需要传递的 URL 参数
- 日历 ID:日历 ID
- MaxResults: 最大结果数要获取的记录数
- MinTime:要获取的事件的开始日期时间
- MaxTime:要获取的事件的结束日期时间
所需输出提取器
- 日历 ID:日历的唯一标识符,用于执行其他任务
- 事件 ID:事件 ID: 用于执行其他任务的事件的唯一标识符
- 标题:事件标题
- 随响应返回的其他参数可作为输出参数的一部分包含在内
为单个/组/多个用户创建新事件
目的
- 用户可将事件标题、描述、开始日期时间、结束日期时间作为输入,Tulip 将根据所提供的事件标题创建一个新事件。API 的响应将是文件的元数据和各种属性。
- 从 Google Calendar V3 API 提取的信息可在 Tulip 应用程序、Tulip 表或 Tulip 变量中进一步使用,这些变量将被输送到其他连接器功能中。
端点
HTTP POST 调用端点 https://www.googleapis.com:443/calendar/v3/calendars/{CalendarID}/events
所需输入
以下是作为请求体发送的参数
- 日历 ID - 选定的日历 ID
- 事件标题 - 事件标题
- 开始日期时间 - 事件开始日期时间
- 结束日期 时间 - 事件结束日期 时间
- 时区 - 事件时区
- 出席者 - 活动出席者
- 地点--活动地点
- Description - 活动描述
所需的输出提取器
- 事件 ID:事件的唯一标识符,用于执行其他任务
- 事件标题:活动标题
- 组织者:活动组织者名称
- 随响应返回的其他参数可作为输出参数的一部分
为单个/群组/多个用户创建新的重复事件
目的
- 用户可将事件标题、描述、开始日期时间、结束日期时间、重复发生结束日期时间、重复发生类型和其他参数作为输入,Tulip 将根据提供的事件标题创建一个新事件。API 的响应将是文件的元数据和各种属性。
- 从 Google Calendar V3 API 提取的信息可在 Tulip 应用程序、Tulip 表或 Tulip 变量中进一步使用,这些变量将被输送到其他连接器功能中。
端点
HTTP POST 调用端点 https://www.googleapis.com:443/calendar/v3/calendars/{CalendarID}/events
所需输入
以下是作为请求体发送的参数
- 日历 ID - 选定的日历 ID
- 事件标题 - 事件标题
- 开始日期时间 - 事件开始日期时间
- 结束日期 时间 - 事件结束日期 时间
- 时区 - 事件时区
- 出席者 - 活动出席者
- Description - 活动描述
- 地点--活动地点
- 重现规则-- 重现规则包含事件重现的方式和时间的所有细节。以下是在应用程序中添加的一些递归规则(参见 [RFC5545](https://tools.ietf.org/html/rfc5545
第 3.8.5 节)文件了解详细的重现规则):
出现的每日事件:
Rrule:freq=daily;count=
例如:RRULE:FREQ=DAILY;COUNT=5
事件从事件开始日期起 5 天内发生,开始时间和结束时间相同。
每天一次,直至 :
Rrule:FREQ=DAILY;ILET=
Ex:RRULE:FREQ=DAILY;UNTIL=20210924T000000Z
事件从事件开始日期起每天发生,直到 "9 月 24 2021",开始时间和结束时间相同。
每周发生一次, :
Rrule:freq=weekly;count=
例如:RRULE:FREQ=WEEKLY;COUNT=3
事件每周发生一次,连续 3 周,事件开始日期为工作日的同一天,开始时间和结束时间相同。
每周一次,直至 :
Rrule:FREQ=WEEKLY;until=
Ex:RRULE:FREQ=WEEKLY;UNTIL=20210924T000000Z
事件每周发生一次,直至 "2021 年 9 月 24 日",事件开始日期为工作日的同一天,开始时间和结束时间相同
隔月的每个星期二:(this)
rrule:freq=monthly;interval=;byday=
例如:RRULE:FREQ=MONTHLY;INTERVAL=2;BYDAY=TU
事件每隔一个月的星期二发生一次,开始时间和结束时间相同。
所需输出提取器
- 事件 ID:事件的唯一标识符,用于执行其他任务
- 事件标题:活动标题
- 组织者:活动组织者名称
- 随响应返回的其他参数可作为输出参数的一部分
更新事件元数据
目的
- 用户可将事件标题、描述、开始日期时间、结束日期时间和其他参数作为输入,郁金香会根据所提供的输入更新现有事件。API 的响应将是文件的元数据和各种属性。
- 从 Google Calendar V3 API 提取的信息可在 Tulip 应用程序、Tulip 表或 Tulip 变量中进一步使用,这些变量将被输送到其他连接器功能中。
端点
HTTP PATCH 调用端点https://www.googleapis.com:443/calendar/v3/calendars/{CalendarID}/events/{EventID}?sendUpdates=all&fields=*
所需输入
以下是作为请求正文发送的参数
- 日历 ID - 选定的日历 ID
- 事件 ID - 选定的事件 ID
- 事件标题 - 事件标题
- 开始日期时间 - 事件开始日期时间
- 结束日期 时间 - 事件结束日期 时间
- 时区 - 事件时区
- 地点 - 事件地点
- Description - 事件描述
所需的输出提取器
- 事件 ID:事件的唯一标识符,用于执行其他任务
- 事件标题:事件标题
- 事件描述:事件标题
- 随响应返回的其他参数可作为输出参数的一部分
更新重复事件
目的
- 用户可将事件标题、描述、开始日期时间、结束日期时间、重现规则和其他参数作为输入,Tulip 将根据所提供的输入更新现有事件。API 的响应将是文件的元数据和各种属性。
- 从 Google Calendar V3 API 提取的信息可在 Tulip 应用程序、Tulip 表或 Tulip 变量中进一步使用,这些变量将被输送到其他连接器功能中。
端点
HTTP PATCH 调用端点https://www.googleapis.com:443/calendar/v3/calendars/{CalendarID}/events/{EventID}?sendUpdates=all&fields=*
所需输入
以下是作为请求正文发送的参数
- 日历 ID - 选定的日历 ID
- 事件 ID - 选定的事件 ID
- 事件标题 - 事件标题
- 开始日期时间 - 事件开始日期时间
- 结束日期 时间 - 事件结束日期 时间
- 时区 - 事件时区
- Location(位置)- 事件位置
- Description- 事件描述
- 重现规则-- 重现规则包含事件重现的方式和时间的所有细节。有关详细的重现规则,请参阅上述文件中提到的在应用程序中添加的几个重现规则列表)。
所需输出提取器
- 事件 ID:事件的唯一标识符,用于执行其他任务
- 事件标题:事件标题
- 事件描述:事件标题
- 随响应返回的其他参数可作为输出参数的一部分
删除事件
目的
- 用户可将日历 ID 和事件 ID 作为输入,Tulip 将删除谷歌日历中的事件。
端点
调用 HTTP DELETE 端点-https://www.googleapis.com:443/calendar/v3/calendars/{CalendarID}/events/{EventID}
所需输入
以下是作为请求体发送的参数
- 日历 ID - 所选日历 ID
- 事件 ID - 选定的事件 ID