airflow.providers.google.suite.hooks.calendar¶
此模組包含一個 Google 日曆 API hook。
類¶
透過 Google Cloud 連線與 Google 日曆互動。 |
模組內容¶
- class airflow.providers.google.suite.hooks.calendar.GoogleCalendarHook(api_version, gcp_conn_id='google_cloud_default', impersonation_chain=None)[source]¶
基類:
airflow.providers.google.common.hooks.base_google.GoogleBaseHook透過 Google Cloud 連線與 Google 日曆互動。
Google 日曆 API 參考: 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 所需的鏈式賬號列表。如果設定為字串,該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須授予緊接前一個身份 Service Account Token Creator 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)[source]¶
從單個 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) – 可選。響應中使用的時區。預設為日曆的時區。
updated_min (datetime.datetime | None) – 可選。事件上次修改時間的下限
- create_event(event, calendar_id='primary', conference_data_version=0, max_attendees=None, send_notifications=False, send_updates='false', supports_attachments=False)[source]¶
在指定的日曆上建立事件。
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_notifications (bool | None) – 可選。預設為 False
send_updates (str | None) – 可選。預設為 “false”。可接受的值為 “all”、“none”、
"externalOnly"https://developers.google.com/calendar/api/v3/reference/events#resource