filters to define the data returned — the output granularity is then determined by the dimensions you include in the request.
The endpoint supports asynchronous report generation and provides access to the full set of performance metrics and dimensions, including video, new-to-brand, and keyword data. Submit a request, poll for status, and download the output when ready.
Request
Required fields
filters (with exactly one scope filter), startDate, endDate, metrics, and dimensions are all required. Requests with no scope filter (or more than one) will return 400 Bad Request.
Optional fields
Example request
Response
A successful request returns200 OK with a reportId. Use this ID to poll for status and retrieve the output.
status is success or failure:
success:
format specified, the output defaults to json-compact — a columns/data array shape rather than an array of row objects:
Response Codes
For the full list of status and error codes for this endpoint — including404 (report not found) and 410 (report expired) — see Response Codes in the Overview.
Metrics
Fields marked Retailer catalog only are available only for retailers that provide a product catalog to Criteo. For retailers without a catalog, they are not populated.
The
winRate metric is meaningful only for Sponsored Products campaigns. For accounts that also run other campaign types, include campaignType in your dimensions (or filter to Sponsored Products) so winRate can be attributed to the right campaigns.Dimensions
Fields marked Retailer catalog only are available only for retailers that provide a product catalog to Criteo. For retailers without a catalog, they are not populated.
Data Retention
This endpoint supports a lookback window of up to 3 years (36 months). A request with astartDate older than that returns 400 Bad Request — StartDate cannot be older than 3 years. Separately, a single report may span at most 100 days between startDate and endDate, regardless of whether you scope by account, campaign, or line item.
Migrating from legacy endpoints
The full legacy → new mapping (all endpoints and everyreportType value) is documented in the Analytics Overview — Migrating from the legacy reporting API.