airflow.providers.google.suite.hooks.calendar
¶
该模块包含一个 Google 日历 API 钩子。
模块内容¶
类¶
通过 Google Cloud 连接与 Google 日历进行交互。 |
- class airflow.providers.google.suite.hooks.calendar.GoogleCalendarHook(api_version, gcp_conn_id='google_cloud_default', impersonation_chain=None)[源代码]¶
基类:
airflow.providers.google.common.hooks.base_google.GoogleBaseHook
通过 Google Cloud 连接与 Google 日历进行交互。
在 Google 表格中读取和写入单元格:https://developers.google.com/calendar/api/v3/reference
- 参数
gcp_conn_id (str) – 获取连接信息时使用的连接 ID。
api_version (str) – API 版本。例如 v3
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐户,用于使用短期凭据进行模拟,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中被模拟。 如果设置为字符串,则该帐户必须授予发起帐户“服务帐户令牌创建者”IAM 角色。 如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧邻的前一个标识,其中列表中的第一个帐户将此角色授予发起帐户。
- get_events(calendar_id='primary', i_cal_uid=None, max_attendees=None, max_results=None, order_by=None, private_extended_property=None, q=None, shared_extended_property=None, show_deleted=False, show_hidden_invitation=False, single_events=False, sync_token=None, time_max=None, time_min=None, time_zone=None, updated_min=None)[源代码]¶
从单个 calendar_id 获取 Google 日历中的事件。
https://developers.google.com/calendar/api/v3/reference/events/list
- 参数
calendar_id (str) – 要与之交互的 Google 日历 ID
i_cal_uid (str | None) – 可选。指定响应中
iCalendar
格式的事件 ID。max_attendees (int | None) – 可选。如果与会者人数超过指定人数,则仅返回参与者。
max_results (int | None) – 可选。在一个结果页面中返回的最大事件数。可以通过响应中的非空
nextPageToken
字段检测不完整的页面。默认情况下,该值为 250 个事件。页面大小永远不能大于 2500 个事件order_by (str | None) – 可选。可接受的值为
"startTime"
或 “updated”private_extended_property (str | None) – 可选。扩展属性约束指定为
propertyName=value
。仅匹配私有属性。此参数可以重复多次,以返回与所有给定约束匹配的事件。q (str | None) – 可选。自由文本搜索。
shared_extended_property (str | None) – 可选。扩展属性约束指定为
propertyName=value
。仅匹配共享属性。此参数可以重复多次,以返回与所有给定约束匹配的事件。show_deleted (bool | None) – 可选。默认为 False
show_hidden_invitation (bool | None) – 可选。默认为 False
single_events (bool | None) – 可选。默认为 False
sync_token (str | None) – 可选。从返回的
nextSyncToken
字段获取的令牌time_max (datetime.datetime | None) – 可选。事件开始时间的上限(不包含)。默认情况下没有过滤器
time_min (datetime.datetime | None) – 可选。事件结束时间的下限(不包含)。默认情况下没有过滤器
time_zone (str | None) – 可选。在响应中使用的时区。默认为日历时区。
- create_event(event, calendar_id='primary', conference_data_version=0, max_attendees=None, send_notifications=False, send_updates='false', supports_attachments=False)[源代码]¶
在指定的日历上创建事件。
https://developers.google.com/calendar/api/v3/reference/events/insert.
- 参数
calendar_id (str) – 要与之交互的 Google 日历 ID
conference_data_version (int | None) – 可选。API 客户端支持的会议数据版本号。
max_attendees (int | None) – 可选。如果与会者人数超过指定人数,则仅返回参与者。
send_updates (str | None) – 可选。默认为“false”。可接受的值为“all”、“none”、
"externalOnly"
https://developers.google.com/calendar/api/v3/reference/events#resource