run_performance_report
Submit a performance report, poll until ready, then download and parse the CSV to return rows inline.
Instructions
Run a performance report end-to-end and return the parsed rows.
Unlike a raw submit, this submits the report, polls until it is ready, downloads the CSV, and parses it — so the rows come back inline.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| columns | No | Optional explicit column list; a sensible default is used per report type. | |
| end_date | No | Custom range end "YYYY-MM-DD" (pair with start_date). | |
| account_id | No | Report on this account instead of the configured one. | |
| date_range | No | A predefined range, e.g. "LastWeek", "LastMonth", "LastThreeMonths", "ThisYear", "LastYear". Ignored when start_date/end_date are given. | LastMonth |
| start_date | No | Custom range start "YYYY-MM-DD" (pair with end_date). | |
| ad_group_id | No | Narrow the report to a single ad group (keyword/search_query/geographic reports only). Requires campaign_id as well — the report scope needs the parent campaign to identify the ad group. | |
| campaign_id | No | Narrow the report to a single campaign. | |
| report_type | No | One of "campaign", "keyword", "search_query", "geographic". | campaign |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rows | Yes | ||
| columns | Yes | ||
| row_count | Yes | ||
| date_range | Yes | ||
| report_type | Yes |