Drop Ship Vendors can generate an Item Report that provides information about all of the vendor’s items that are set up on Walmart.com.
To get a DSV Item Report:
- Call the GET Item Report API and specify the required query parameters:
type
andversion
in your request.- Specify the report type:
vendor_item
. - Specify the current report version,
2
.
- Specify the report type:
- For example, call:
/v3/getReport?type=vendor_item&version=2
The response provides an Item report in CSV format with all the field values per the Response schema.
Origin of Report Content: Walmart or DSV
Some of the information in the Item report comes from the vendor, and some originates from Walmart. The DSV Item Report Fields table shows the fields in the report that originate from Walmart or DSV.
DSV Item Report Fields | |
---|---|
Origin: Walmart | Origin: DSV |
Vendor ID, Availability Status, Lifecycle Status, Publish Status, BuyBox Shipping Price, BuyBox Item Price, WPID, Item ID, WM#, GTIN, UPC, Primary Image URL, Shelf Name, Primary Cat Path,Item Creation Date, Last Updation Date, Item Page URL, Reviews Count, Average Rating, Status Change Reason, Available Inventory Units | SKU, Product Name, Product Category, Short Description, Long Description, Cost, Price, Currency, Ship Methods, Offer Start Date, Offer End Date, Product Tax Code, Shipping Weight, Shipping Weight Unit, |
To view descriptions for each field, see Response Schema in the Item Report API Reference.
What’s in the Item Report CSV file?
The API response contains the compressed CSV file as an attachment with values for all of the fields listed in the Response Schema section of the Item Report API Reference.
The Content-Disposition header contains the name of the report (e.g. filename=ItemReport_742202_2020-03-31T012243.0960000.zip).
The Report file title includes your Vendor ID (e.g. 742202) and the file generation time stamp.
OPTIONAL: Parse CSV File with Java
To format the CSV file, you can this Java code to parse your response to a CSV file. This example demonstrates the use of the header and the body to process the response.
Example: Java code to parse CSV file
if (response.getStatus() == Response.Status.OK.getStatusCode() && response.hasEntity()) {
InputStream inputStream = (InputStream)response.getEntity();
try {
String header = response.getHeaderString("Content-Disposition");
if(header != null && !("").equals(header)) {
if(header.contains("filename")){
//header value will be something like:
//attachment; filename=10000000354_2016-01-15T23:09:54.438+0000.zip
int length = header.length();
String fileName = header.substring(header.indexOf("filename="),length);
System.out.println("filenameText " + fileName);
String [] str = fileName.split("=");
System.out.println("fileName: " + str[1]);
//replace "/Users/anauti1/Documents/" below with your values
File reportFile = new File("/Users/anauti1/Documents/" + str[1].toString());
OutputStream outStream = new FileOutputStream(reportFile);
byte[] buffer = new byte[8 * 1024];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outStream.write(buffer, 0, bytesRead);
}
IOUtils.closeQuietly(inputStream);
IOUtils.closeQuietly(outStream);
}
}
}
catch (Exception ex){
System.out.print("Exception: " + ex.getMessage());
}
}