POST /reports/performance.
Primary audience: Engineers and ops teams diagnosing delivery shortfalls. Not a campaign performance reporting surface.
The endpoint supports asynchronous report generation. Submit a request, poll for status, and download the output when ready.
Request
Required fields
startDate, endDate, filters, dimensions, and metrics are all required. filters must contain exactly one scope filter (filters.accountIds[], filters.campaignIds[], or filters.lineItemIds[]).
Optional fields
Example request
Response
A successful request returns200 OK with a reportId. Poll for status until status is success or failure:
success:
Metrics
Select metrics using themetrics[] array in your request. metrics is required.
All “missed” estimates are modeled — they represent what the line item would have delivered had it participated in all eligible auctions.
Dimensions
Select grouping dimensions using thedimensions[] array in your request. dimensions is required.
Migrating from reportType: capout
Replace your existing call on /reports/campaigns or /reports/line-items with a call to this endpoint. The underlying data is unchanged.
Endpoint change:
- Replace the top-level
accountId/campaignId/lineItemIdfields with afiltersobject containingaccountIds[],campaignIds[], orlineItemIds[]arrays. - Add required
dimensions[]andmetrics[]arrays to select output columns. startDateandendDateare now required (date-onlyYYYY-MM-DD; timestamps are rejected).- Remove
reportType: capout— it is not accepted on this endpoint.
Dimension changes:
daypartingScheduled has moved from a dimension to a metric in this endpoint. Add it to your metrics[] array instead of dimensions[].