Create Report Snapshot
You can request a snapshot file for all performance reporting data available (until the date before current date) for a given advertiser using this method
Reporting data may be delayed by 24 to 48 hours from the time of the request.
Note: The POST functionality is similar for both Onsite and Offsite display
Definition of Retrievable Reports
The following table lists all supported reportType values and whether the report can be retrieved for Onsite Display and Offsite Display (TTD) campaigns.
| reportType | Report Name on UI | Onsite Display | Offsite Display |
|---|---|---|---|
| campaign | Provides overall performance metrics at the campaign level | ✅ Yes | ✅ Yes |
| lineItem | Provides ad group level performance metrics. | ✅ Yes | ✅ Yes |
| tactic | Provides tactic level performance metrics. | ✅ Yes | ✅ Yes |
| sku | Provides item level performance for items in the campaign's itemset | ✅ Yes | ✅ Yes |
| bid | The performance of bids for on-site display auction campaigns | ✅ Yes | ❌ No |
| newBuyer | Analyzes buying frequency of ad exposed shoppers | ✅ Yes | ✅ Yes |
| creative | Provides performance insights at the creative level | ✅ Yes | ❌ No |
| basketAnalysis | Shows the top 10 online and top 10 in-store categories and sub-categories most frequently purchased together with advertised items in shopper baskets. Report applicable only for Onsite display Note: this report is available only in End of Campaign reporting starting 30 days after the campaign ends and is not available for campaigns with spend below $150K | ✅ Yes | ❌ No |
| ivtViewability | Provides MRC accredited Invalid Traffic & Viewability metrics. Report applicable only for Onsite display | ✅ Yes | ❌ No |
Note:SKU reports can produce very large files. We strongly recommend using a date range of 15 days or fewer (vs. the 60-day limit for other reports); if your ad campaign includes many items, reduce the date range even further to ensure the report completes reliably
Request Parameters
| Parameter | Description | Type | Required | Possible Values |
|---|---|---|---|---|
| advertiserId | The ID of the advertiser | integer | Y | Unique numeric identifier |
| startDate | The first day to be considered in the performance report snapshot. It cannot be the current date Note: The reports encompass data starting from midnight (00:00:00 hrs ET) on this particular date | date | Y | Date should be in format: `yyyy-MM-dd` |
| endDate | The last day to be considered in the performance report snapshot. It cannot be the current date. Note:
| date | Y | Date should be in format: `yyyy-MM-dd` |
| attributionWindow | Window for attribution Note: attributionWindow is applicable only when reportType = sku | string | Optional and applicable only for `sku` report | Allowed Values:
|
| salesChannel | Sales channel for the transaction Note: salesChannel is applicable only when reportType = sku | string | Optional and applicable only for `sku` report | If specified, the metrics applicable for the specified sales channel are returned. Allowed Values: `stores`, `online`, `acc`
|
| itemsetType | Type of item set Note: itemsetType is applicable only when reportType = sku | string | Optional and applicable only for `sku` report | If specified, the metrics applicable for the specified itemsetType are returned. Allowed Values: `halo`, `featured`, `total`
|
| reportType | Type of report to be retrieved | string | Y | Types of Report: `campaign`, `lineItem`, `tactic`, `sku`, `bid`, `newBuyer`, `creative`, `basketAnalysis`, `ivtViewability` Note: basketAnalysis, ivtViewability reports are available only for Onsite display |
| reportMetrics | Choose the metrics type for your snapshot Note: If you omit this parameter in your request, you will receive all the metrics that are relevant to the selected report type | string | N | Please refer to the table **“**[**Definition of Various Parameters Generated Across the Snapshot Reports**](https://developer.walmart.com/advertising-partners/docs/definition-of-various-parameters-generated-across-the-snapshot-reports)**”** for detailed information on report metrics |
| scope | Controls the aggregation level at which report metrics are returned. | string | N | Possible values: `CAMPAIGN`, `CAMPAIGN_GROUP`
|
| buyerLookbackWindow | Lookback time frame used to define New Buyers as ad-exposed buyers who have not purchased featured or halo items during that period, measured from the first attributed transaction. Note: applicable only for New Buyer reports | string | N | Allowed Values: `months6`, `months12`, `months18`, `months24`, `months36` |
Notes on scope parameter
scope parameter- When
scope = campaign_group, the API returns rows only for campaigns that belong to a campaign group. Standalone campaigns, that are not part of any groups, are excluded. - Campaign groups can span multiple advertisers. You can retrieve a group report only if you have view access to all campaigns in that group.
- New buyer Report: For campaigns that are in a group, when
scope = campaign_groupmetrics are returned at thecampaign_grouplevel and are identical across all campaigns in that group.
To downloadnewBuyerreports for campaigns that are not in any campaign group, usescope = campaign
- No-data behavior: If a report is generated successfully but no data is available for a metric or field, the report displays
0. - Date range behavior: Reporting data is returned for the
startDateandendDatespecified in the request, except where a report-specific rule states otherwise. - Unsupported field usage: Optional fields are only valid for the report types explicitly listed in this section. If an optional field is provided for an unsupported
reportType, the request should return a validation error. - Report type values:
-
reportTypemust be one of the supported enum values:campaign,lineitem,tactic,sku,newBuyer,bid,creative,ivtViewability,salesLift,basketAnalysis bidreports are refreshed near real-time.
-
- Field applicability and defaults:
Field Applies To Allowed Values Default Validation / Behavior itemsetTypeskuonlyfeatured,halo,totalNone Optional. If provided for any report type other than sku, return a validation error.attributionWindowskuonlydays14,days30None Optional. If provided for any report type other than sku, return a validation error.salesChannelskuonlyonline,stores,accNone Optional. If provided for any report type other than sku, return a validation error.buyerLookbackWindownewBuyeronlymonths6,months12,months18,months24,months36months12Optional. If omitted for newBuyer,months12is used. If provided for any report type other thannewBuyer, return a validation error.scopeVaries by reportTypeCAMPAIGN,CAMPAIGN_GROUPCAMPAIGNOptional. If omitted, the default value CAMPAIGNis used for those reports for whichscopeis supported -
buyerLookbackWindowRules:buyerLookbackWindowis optional and is supported only whenreportType = newBuyer.- Default Behavior: If
buyerLookbackWindowis omitted for a New Buyer report, the default value is:"buyerLookbackWindow": ["months12"] - Supported Values:
["months6", "months12", "months18", "months24", "months36"] - Eligibility Rules:
- The following buyer lookback windows are supported only for eligible new campaigns
(start date is on or after 2026-06-01, using last_touch attribution):["months6", "months18", "months24", "months36"] - For older campaigns, the New Buyer report continues to use the default 12-month buyer lookback window, even if another
buyerLookbackWindowvalue is provided in the request.
- The following buyer lookback windows are supported only for eligible new campaigns
- Date Range Behavior for New Buyer Reports:
-
Campaign Type Behavior Eligible new campaigns (start date >= 2026-06-01)using last-touch attributionNew Buyer data is returned for the startDateandendDatespecified in the request.Older or ineligible campaigns New Buyer data is returned as campaign-to-date metrics for the lifetime of the line item.
-
-
scopeRules- The
scopefield determines whether the report is generated at the campaign level or campaign group level. - Default value: If
scopeis omitted, the following defaults apply:-
Report Type Default Scope campaignCAMPAIGNlineitemCAMPAIGNskuCAMPAIGNnewBuyerCAMPAIGNsalesLiftCAMPAIGN
-
- Unsupported
CAMPAIGN_GROUPScope- The following report types do not support
scope = CAMPAIGN_GROUP:creative,tactic,bid,ivtViewability,basketAnalysis - If
scope = CAMPAIGN_GROUPis provided for any of these report types, the request returns a validation error.
- The following report types do not support
- Report-Specific Scope Behavior:
- New Buyer Report
- For
reportType = newBuyer, bothCAMPAIGNandCAMPAIGN_GROUPscope may be supported. - New buyer report are generated at both campaign and campaign groups levels.
- Hence, when
scope = CAMPAIGN_GROUP, campaigns that belong to the same campaign group will show the same New Buyer metric values.
- For
- Sales Lift Report
- Sales lift studies are run for campaign groups and standalone campaigns.
- Sales Lift report behavior depends on whether the campaign belongs to a campaign group:
-
Campaign Scenario Behavior Campaign is part of a campaign group Sales Lift results are available at the campaign group level and can be downloaded with scope = CAMPAIGN_GROUP
Campaigns in the same campaign group may show identical Sales Lift values because the underlying study is run at the campaign group level.Campaign is not part of any campaign group Sales Lift results are available at the campaign level and can be downloaded with scope = CAMPAIGN.
-
- Basket Analysis Report:
- Basket Analysis reports have special availability and scope rules.
- Availability: Basket Analysis reports are available only if the below conditions are met for a campaign, else basket analysis data is not available:
-
Requirement Rule Reporting phase End-of-campaign reporting only Timing Starting 30 days after the campaign ends Minimum spend Campaign spend must be at least $150,000
-
- Scope Behavior:
- The
scopeparameter is not applicable for Basket Analysis reports. - Basket Analysis reports are generated as combined reports and include both campaign and campaign group details, as applicable.
- Do not apply a
scopefilter forreportType = basketAnalysis - Basket Analysis reports are generated for campaign groups and standalone campaigns.
-
Campaign Scenario Behavior Campaign is part of a campaign group Basket Analysis is generated at the campaign group level, not as an individual campaign-level report. Campaign is not part of any campaign group Basket Analysis is available for the individual campaign, subject to availability rules.
-
- The
- New Buyer Report
- The
Response
| Element | Description | Type |
|---|---|---|
| code | The response code can have following values:
| string |
| details | Details of the error if value of response code is failure | string |
| snapshotId | ID of the snapshot | string |
| jobStatus | It is an indicator to confirm status of snapshot generation.The possible values of jobStatus are: pending, processing, done, failed, expired | string |
Troubleshooting Tip:Slow Report Generation: If your report is taking a long time to generate or if the API response times out, try reducing the date range
