airflow.providers.facebook.ads.hooks.ads

This module contains Facebook Ads Reporting hooks

Module Contents

class airflow.providers.facebook.ads.hooks.ads.JobStatus[source]

Bases: enum.Enum

Available options for facebook async task status

COMPLETED = Job Completed[source]
STARTED = Job Started[source]
RUNNING = Job Running[source]
FAILED = Job Failed[source]
SKIPPED = Job Skipped[source]
class airflow.providers.facebook.ads.hooks.ads.FacebookAdsReportingHook(facebook_conn_id: str = default_conn_name, api_version: str = 'v6.0')[source]

Bases: airflow.hooks.base.BaseHook

Hook for the Facebook Ads API

See also

For more information on the Facebook Ads API, take a look at the API docs: https://developers.facebook.com/docs/marketing-apis/

Parameters
  • facebook_conn_id (str) -- Airflow Facebook Ads connection ID

  • api_version (str) -- The version of Facebook API. Default to v6.0

conn_name_attr = facebook_conn_id[source]
default_conn_name = facebook_default[source]
conn_type = facebook_social[source]
hook_name = Facebook Ads[source]
_get_service(self)[source]

Returns Facebook Ads Client using a service account

facebook_ads_config(self)[source]

Gets Facebook ads connection from meta db and sets facebook_ads_config attribute with returned config file

bulk_facebook_report(self, params: Dict[str, Any], fields: List[str], sleep_time: int = 5)[source]

Pulls data from the Facebook Ads API

Parameters
Returns

Facebook Ads API response, converted to Facebook Ads Row objects

Return type

List[AdsInsights]

Was this entry helpful?