GET /api/v2/buyer/reporting/metrics
Returns delivery metrics rolled up across the advertiser → campaign → media buy → package tree. Choose a hierarchical summary or flat timeseries view, scope with advertiserId and campaignId, and set the window with days or an explicit startDate/endDate. This endpoint is day-grain only — for hourly counts use Get event summary.
Request
Parameters
| Param | Type | Required | Notes |
|---|---|---|---|
advertiserId | string | No | Filter to one advertiser (seat ID) |
campaignId | string | No | Filter to one campaign. Must belong to advertiserId if both are passed |
startDate | string | No | YYYY-MM-DD. Overrides the days window when set |
endDate | string | No | YYYY-MM-DD. Defaults to today |
days | integer | No | 0–90, default 7. Use 0 for the full campaign timeframe |
view | enum | No | summary (default) or timeseries |
download | boolean | No | Default false. When true, returns a signed CSV URL instead of JSON |
demo | boolean | No | Default false. When true, returns auto-generated demo data instead of real data |
Response
download=true, the response is instead { downloadUrl, expiresAt, fileName, rowCount } with a signed URL that expires in 7 days. Treat that URL as a bearer credential.
Errors
400 VALIDATION_ERROR— malformedstartDate/endDate,daysoutside0–90, or acampaignIdthat does not belong to the givenadvertiserId.
Related
Reporting tasks
All reporting operations
Reporting overview guide
Hierarchy, metrics, CSV export, delivery flow
Get event summary
Hourly event counts by type