Bid Manager
garf for Bid Manager API
Interacts with Bid Manager API.
Install
Install garf-bid-manager library
pip install garf-executors garf-bid-manager
uv pip install garf-executors garf-bid-manager
Usage
Prerequisites
- Bid Manager API enabled.
- Credentials configured, can be exposed as
GARF_BID_MANAGER_CREDENTIALS_FILEENV variable
echo """
SELECT
advertiser,
metric_clicks AS clicks
FROM standard
WHERE advertiser = 1
AND dataRange = LAST_7_DAYS
" > query.sql
garf query.sql --source bid-manager \
--output csv
import os
from garf_io import writer
from garf_bid_manager import BidManagerApiReportFetcher
query = """
SELECT
advertiser,
metric_clicks AS clicks
FROM standard
WHERE advertiser = 1
AND dataRange = LAST_7_DAYS
"""
fetched_report = (
BidManagerApiReportFetcher(
credentials_file=os.getenv('GARF_BID_MANAGER_CREDENTIALS_FILE')
)
.fetch(query)
)
csv_writer = writer.create_writer('csv')
csv_writer.write(fetched_report, 'query')
Available source parameters
| name | values | comments |
|---|---|---|
credentials_file |
File with Oauth or service account credentials | You can expose credentials_file as GARF_BID_MANAGER_CREDENTIALS_FILE ENV variable |
auth_mode |
Type of authentication: oauth or service_account |
oauth is the default mode |
Query syntax
garf-bid-manager uses simplified syntax for writing queries.
| area | Bid Manager | garf |
|---|---|---|
| filters and metrics case | upper (FILTER_ADVERTISER) | any (filter_advertiser) |
| prefix | mandatory (FILTER_ADVERTISER) | optional for filters (advertiser) |
| resource case | upper (STANDARD) | any (standard) |