Performance snapshot reports

Generate historical Display performance reports with customizable metrics and date ranges.

Overview

Performance Snapshots generate CSV reports containing campaign delivery, attribution, sales, and other report-specific metrics.

Use this endpoint to configure the reporting period, report type, and metrics needed for reporting and analytics workflows.

Availability

Supported for Onsite Display and Offsite Display (Walmart DSP only). Availability varies by report type and metric.

Report type availability

reportTypeDescriptionOnsiteOffsite
campaignAggregated campaign performance✅✅
lineitemAd group-level performance✅✅
tacticPerformance by targeting tactic✅❌
skuItem-level performance by sales channel✅✅
bidBid performance for Onsite auction campaigns✅❌
newBuyerNew buyer and purchase-frequency reporting✅✅
creativeCreative-level performance✅❌
basketAnalysisShows the top 10 online and top 10 in-store categories and sub-categories most frequently purchased together with advertised items in shopper baskets.✅❌
ivtViewabilityProvides MRC accredited Invalid Traffic & Viewability metrics.✅❌
salesLiftMeasures incrementality of sales after campaign exposure.✅✅

For available metrics and additional report types, see Report Types.

How it works

The Create Performance Snapshot endpoint submits an asynchronous reporting job.

A successful request returns a snapshotId. Use this identifier with the Retrieve Snapshots API to check processing status and obtain the generated file.

For the shared creation, retrieval, and download workflow, see Snapshot Reporting.

Before you begin

  • Valid advertiserId and reporting access
  • Supported reportType for the advertiser's media solution
  • Reporting date range
  • Required metrics and any report-specific parameters
  • Latest available reporting date, verified using Get Latest Report Date

Endpoint

POST /api/v1/snapshot/report


Request details

How this request is used

Use this endpoint to create a performance report for an advertiser, reporting period, and selected report type.

Key fields and behaviors

  • startDate
    Defines the beginning of the reporting period
  • endDate
    Defines the end of the reporting period.
  • reportType
    Determines the reporting breakdown and available metrics.
  • reportMetrics
    Specifies which metrics to return. If omitted, all available metrics for the report type will be returned.
  • scope
    Controls report scope where applicable.
  • attributionWindow
    Report-specific attribution window, used for supported report types as such as the SKU report.
  • itemsetType
    Selects Featured or Halo measurement where supported
  • salesChannel
    Selects the applicable sales channel for supported report types.

Select a report type

The reportType determines the level of detail returned.

For example:

  • campaign provides campaign-level reporting.
  • lineitem provides ad group-level reporting.
  • sku provides item-level performance.
  • creative provides creative-level reporting.
  • tactic provides targeting tactic performance.

Use the Report Types guide to review available report types and supported metrics.

Select reporting metrics

Use reportMetrics to request specific metrics instead of returning every available metric for the selected report type. If omitted, the API returns all available metrics for that report type.

Metric availability depends on the selected report type and media solution.

For field definitions and availability, see Dimensions and Metrics.

Configure the reporting period

Use startDate and endDate to define the reporting window.

Performance reporting data is refreshed daily and is typically available through T-1, subject to processing completion.

Check the latest processed reporting date before creating a snapshot.

SKU reporting considerations

SKU reports can produce large files, particularly for advertisers with extensive product catalogs.

Best practice

Use smaller reporting windows for SKU performance reports to reduce file size and processing time.

  • Use date ranges under 15 days.
  • Reduce the date range further for large Item Sets.
  • Allow additional processing time for large requests.

Sample requests

Basic report request
curl -X POST \ 'https://developer.api.us.stg.walmart.com/api-proxy/service/display/api/v1/api/v1/snapshot/report' \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <auth_token>' \ --header 'WM_SEC.AUTH_SIGNATURE: <signature>' \ --header 'WM_SEC.KEY_VERSION: 1' \ --header 'WM_CONSUMER.ID: <consumer_id>' \ --header 'WM_CONSUMER.intimestamp: <timestamp>' \ --data '{ "advertiserId": 600001, "startDate": "2024-07-19", "endDate": "2024-07-24", "reportType": "sku" }'
Request selected campaign metrics
{ "advertiserId": 678961, "startDate": "2024-07-19", "endDate": "2024-07-24", "reportType": "campaign", "reportMetrics": [ "haloPickupAttributedOrders14days", "featuredStoreAttributedSales14days", "haloDeliveryAttributedSales30days" ]
}
Request Featured SKU reporting
{ "reportType": "sku", "advertiserId": 600001, "attributionWindow": "days14", "itemsetType": "featured", "salesChannel": "online", "startDate": "2025-11-01", "endDate": "2025-11-10"
}

Response details

What this response returns

A successful request creates an asynchronous snapshot generation job.

  • code
    Indicates if submission was successful
  • snapshotId
    Identifier used to retrieve the snapshot job (save to use later).
  • jobStatus
    Current processing status
  • details
    Additional information associated with the request.

Sample response

Snapshot request accepted
[ { "code": "success", "snapshotId": "17", "details": "", "jobStatus": "pending" }
]

A successful creation response does not mean the report file is ready.

Common issues

  • Requesting a report type unavailable for the advertiser's media solution
  • Requesting metrics unsupported by the selected reportType
  • Selecting dates that have not completed reporting processing
  • Using unnecessarily large reporting windows for SKU reports
  • Requesting all metrics when only a subset is needed
  • Assuming the creation response contains the completed report

What happens next

Store the returned snapshotId and use Retrieve Snapshots to check job status and obtain the generated file.

When jobStatus=done, download the CSV output using the file URL returned in details.

Related pages


Did this page help you?