Request an inventory report
Use the inventory report to view a complete snapshot of your SKUs across all fulfillment centers (ship nodes). Each row in the CSV represents one item at one fulfillment center. After you request the report, track status until it is ready, then download the file.
Tip: If you prefer not to download and parse CSV files yourself, you can use an app to parse the report programmatically. See parse reports CSV file with Java.
When to use this report
- Reconcile your inventory across ship nodes with a single export.
- Audit input quantity versus available-to-sell quantity.
- Compare inventory across fulfillment centers for the same item.
Endpoint
POST /v3/reports/reportRequests
Creates a new report request. Use reportType=INVENTORY and specify a supported reportVersion (for example, v1).
Required headers
Authorization: Bearer <access_token>Accept: application/jsonContent-Type: application/json
Request body
{ "reportType": "INVENTORY", "reportVersion": "v1"
}
Sample request
curl --request POST --url 'https://marketplace.walmartapis.com/v3/reports/reportRequests' --header 'Authorization: Bearer <ACCESS_TOKEN>' --header 'Accept: application/json' --header 'Content-Type: application/json' --data '{ "reportType": "INVENTORY", "reportVersion": "v1" }'
Track status
Check whether your report is ready to download.
List requests (optional):
curl --request GET --url 'https://marketplace.walmartapis.com/v3/reports/reportRequests?reportType=INVENTORY' --header 'Accept: application/json'
Get a single request by ID:
curl --request GET --url 'https://marketplace.walmartapis.com/v3/reports/reportRequests/{requestId}' --header 'Accept: application/json'
When requestStatus is READY, the response includes a downloadUrl to retrieve the file.
Download the report
Use the downloadUrl from the READY response to download the CSV (often returned as a ZIP).
curl --request GET --url '<downloadUrl>' --output inventory_report.csv
Report fields
These fields appear in the CSV file.
| Field | Description |
|---|---|
| SKU | Seller-specified unique identifier for the item. |
| Item ID | Walmart-specified identifier for the item. |
| Product Name | Name of the item. |
| Ship Node ID | Identifier for the fulfillment center (ship node). |
| Ship Node Name | Seller-defined name for the fulfillment center or ship node; for example, TwoDay_WestCoast or CA_Standard. |
| Input Quantity | Total inventory the seller input for the item, including units already committed to unshipped orders. |
| AvailToSell Quantity | In-stock quantity currently available to sell, excluding units committed to open, undelivered orders. |
Special case: zero inventory with N/A ship node
If a row contains these values, it means the item has not been updated since ingestion:
- Ship Node ID =
N/A - Ship Node Name =
N/A - Input Quantity =
0 - AvailToSell Quantity =
0
To update an item’s inventory, see update item inventory per ship node.
Next steps
- Use report filters (optional) to narrow scope where supported.
- Set up report status notifications to receive a webhook when status changes to READY.
- Schedule recurring reports to automate delivery on a cadence.
See also
- Retrieve inventory data for real-time API snapshots.
- Update item inventory per ship node to correct quantities.
- On-request reports overview for retention, limits, and general flow.
Updated 2 days ago
