airflow.providers.google.common.hooks.discovery_api

此模組允許您連線到 Google Discovery API 服務並查詢它。

GoogleDiscoveryApiHook

用於使用 Google API Discovery 服務的 Hook。

模組內容

class airflow.providers.google.common.hooks.discovery_api.GoogleDiscoveryApiHook(api_service_name, api_version, gcp_conn_id='google_cloud_default', impersonation_chain=None)[source]

基類:airflow.providers.google.common.hooks.base_google.GoogleBaseHook

用於使用 Google API Discovery 服務的 Hook。

引數:
  • api_service_name (str) – 需要獲取資料的 API 服務名稱,例如“youtube”。

  • api_version (str) – 將請求的 API 版本,例如“v3”。

  • gcp_conn_id (str) – 獲取連線資訊時使用的連線 ID。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務帳號,用於使用短期憑據進行模擬,或者獲取列表中最後一個帳號(將在請求中被模擬)的 access_token 所需的帳號鏈列表。如果設定為字串,該帳號必須授予原始帳號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須授予 Service Account Token Creator IAM 角色給直接在其之前的身份,列表中第一個帳號授予原始帳號此角色。

api_service_name[source]
api_version[source]
get_conn()[source]

為給定的 API 服務名稱和憑據建立經身份驗證的 API 客戶端。

返回:

經身份驗證的 API 服務。

返回型別:

googleapiclient.discovery.Resource

query(endpoint, data, paginate=False, num_retries=0)[source]

建立一個動態 API 呼叫,呼叫 Google API 客戶端庫中註冊的任何 Google API 並查詢它。

引數:
  • endpoint (str) –

    API 呼叫執行方法在客戶端庫中的路徑。例如:“analyticsreporting.reports.batchGet”

    另請參閱

    https://developers.google.com/apis-explorer 獲取有關可用方法的更多資訊。

  • data (dict) – 給定端點的特定請求所需的資料(端點引數)。

  • paginate (bool) – 如果設定為 True,它將收集所有頁的資料。

  • num_retries (int) – 定義請求失敗時的重試次數。

返回:

從傳入的端點獲得的 API 響應。

返回型別:

dict

此條目有幫助嗎?