| :py:mod:`airflow.providers.google.ads.transfers.ads_to_gcs` |
| =========================================================== |
| |
| .. py:module:: airflow.providers.google.ads.transfers.ads_to_gcs |
| |
| |
| Module Contents |
| --------------- |
| |
| Classes |
| ~~~~~~~ |
| |
| .. autoapisummary:: |
| |
| airflow.providers.google.ads.transfers.ads_to_gcs.GoogleAdsToGcsOperator |
| |
| |
| |
| |
| .. py:class:: GoogleAdsToGcsOperator(*, client_ids, query, attributes, bucket, obj, gcp_conn_id = 'google_cloud_default', google_ads_conn_id = 'google_ads_default', page_size = 10000, gzip = False, impersonation_chain = None, api_version = None, **kwargs) |
| |
| Bases: :py:obj:`airflow.models.BaseOperator` |
| |
| Fetches the daily results from the Google Ads API for 1-n clients |
| Converts and saves the data as a temporary CSV file |
| Uploads the CSV to Google Cloud Storage |
| |
| .. seealso:: |
| For more information on the Google Ads API, take a look at the API docs: |
| https://developers.google.com/google-ads/api/docs/start |
| |
| .. seealso:: |
| For more information on how to use this operator, take a look at the guide: |
| :ref:`howto/operator:GoogleAdsToGcsOperator` |
| |
| :param client_ids: Google Ads client IDs to query |
| :param query: Google Ads Query Language API query |
| :param attributes: List of Google Ads Row attributes to extract |
| :param bucket: The GCS bucket to upload to |
| :param obj: GCS path to save the object. Must be the full file path (ex. `path/to/file.txt`) |
| :param gcp_conn_id: Airflow Google Cloud connection ID |
| :param google_ads_conn_id: Airflow Google Ads connection ID |
| :param page_size: The number of results per API page request. Max 10,000 |
| :param gzip: Option to compress local file or file data for upload |
| :param impersonation_chain: Optional service account to impersonate using short-term |
| credentials, or chained list of accounts required to get the access_token |
| of the last account in the list, which will be impersonated in the request. |
| If set as a string, the account must grant the originating account |
| the Service Account Token Creator IAM role. |
| If set as a sequence, the identities from the list must grant |
| Service Account Token Creator IAM role to the directly preceding identity, with first |
| account from the list granting this role to the originating account (templated). |
| :param api_version: Optional Google Ads API version to use. |
| |
| .. py:attribute:: template_fields |
| :annotation: :Sequence[str] = ['client_ids', 'query', 'attributes', 'bucket', 'obj', 'impersonation_chain'] |
| |
| |
| |
| .. py:method:: execute(self, context) |
| |
| This is the main method to derive when creating an operator. |
| Context is the same dictionary used as when rendering jinja templates. |
| |
| Refer to get_template_context for more context. |
| |
| |
| |