
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
walmart-mws
Advanced tools
This is a wrapper sdk around the Walmart Marketplace API. To used this sdk you will need an developer account with the ClientId and ClientSecret keys.
npm install walmart-mws
var walmartMws = require('walmart-mws')(
'WAL_CLIENT_ID',
'WAL_SECRET_KEY',
'HOST',
'VERSION',
'NAME'
);
Returns the feed status for a specified Feed ID.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| feedId | String | Yes | |
| includeDetails | Boolean | No | false |
| limit | Number | No | 50 |
| offset | Number | No | 0 |
Usage:
try {
const result = await walmartMws.feeds.getFeedStatus('5EF8AB43C8B949EAA6DFCDE98FCB3017@AQkBCgB');
} catch (error) {
}
Response:
{
feedDate:1596738014958
feedId:'5EF8AB43C8B949EAA6DFCDE98FCB3017@AQkBCgB'
feedSource:'SELLER'
feedStatus:'PROCESSED'
feedType:'inventory'
itemDataErrorCount:1
itemsFailed:1
itemsProcessing:0
itemsReceived:5118
itemsSucceeded:5117
itemSystemErrorCount:0
itemTimeoutErrorCount:0
modifiedDtm:1596738053539
orgId:'8744aa2f-3a1f-4e37-8a99-1bef6567f92e'
partnerId:'10000010921'
}
Returns the feed statuses for all the specified Feed IDs.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| feedId | String | No | |
| limit | Number | No | 50 |
| offset | Number | No | 0 |
Usage:
try {
const result = await walmartMws.feeds.getAllFeedStatus();
} catch (error) {
}
Response:
{
totalResults: 2,
offset: 0,
limit: 50,
results: {
feed: [
{
feedDate:1596738014958
feedId:'5EF8AB43C8B949EAA6DFCDE98FCB3017@AQkBCgB'
feedSource:'SELLER'
feedStatus:'PROCESSED'
feedType:'inventory'
itemDataErrorCount:1
itemsFailed:1
itemsProcessing:0
itemsReceived:5118
itemsSucceeded:5117
itemSystemErrorCount:0
itemTimeoutErrorCount:0
modifiedDtm:1596738053539
orgId:'8744aa2f-3a1f-4e37-8a99-1bef6567f92e'
partnerId:'10000010921'
},
{
...
}
]
}
}
Displays a list of all items.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| nextCursor | String | No | |
| sku | String | No | |
| limit | Number | No | 20 |
| offset | Number | No | 0 |
| lifecycleStatus | String | No | |
| publishedStatus | String | No |
Usage:
try {
const result = await walmartMws.items.getAllItems();
} catch (error) {
}
Response:
{
ItemResponse: [
{
gtin:'00192339211111'
lifecycleStatus:'ACTIVE'
mart:'WALMART_US'
price:{currency: 'USD', amount: 20.21}
productName:'Product Name'
productType:'Product Type'
publishedStatus:'UNPUBLISHED'
shelf:["Home Page","Sports & Outdoors","Sports","Golf Equipment","Golf Clothing","Women's Golf Shorts"]
sku:'192339252042022'
unpublishedReasons:{
reason: [
"Reason 1", "Reason 2"
]
}
upc:'192339252042022'
wpid:'0RCN8JI3SKJY'
},
{
...
}
],
nextCursor:'AoE/GjBSQ1MyQjJHV1BWODBTRUxMRVJfT0ZGRVJERDhGODVEM0U2ODU0RDRDOEQ2MDAwQTI4MzQzMDhDMw=='
totalItems:100
}
Retrieves an item and displays the item details
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| sku | String | Yes |
Usage:
try {
const result = await walmartMws.items.getItem('192339252042022');
} catch (error) {
}
Response:
{
gtin:'00192503120223'
lifecycleStatus:'ACTIVE'
mart:'WALMART_US',
price: {
amount:40.12
currency:'USD'
},
productName:'Product name',
productType:'Product type'
publishedStatus:'PUBLISHED'
shelf: [
"Shelf1",
"Shelf2",
],
sku:'192503120222'
upc:'192503120222'
wpid:'3MH4ITZKQ2A3'
}
The Taxonomy API exposes the category taxonomy that Walmart.com uses to categorize items. It describes the Departments, Categories, and Subcategories levels available on Walmart.com. You can specify the exact category as a parameter when using any of the following APIs:
For example, you can restrict the Search API to search within a category by supplying the ID through the taxonomy. Similarly, you can use the Feed API to download category-specific feeds by specifying a category ID.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| category | String | Yes | |
| subcategory | String | No | |
| subcategoryName | String | No | |
| subcategoryId | String | No |
Usage:
try {
const result = await walmartMws.items.getTaxonomy('Search');
} catch (error) {
}
Response:
{
status: "SUCCESS",
payload: [
{
category: "Animal",
subcategory: [
{
subCategoryName: "Animal Accessories",
subCategoryId: "559c5d924fff3d64de18bf45"
},
{
subCategoryName: "Animal Food",
subCategoryId: "559c5d8f4fff3d64de18bf3d"
},
{
subCategoryName: "Animal Health & Grooming",
subCategoryId: "559c5d90ed25b136f13a05df"
},
{
subCategoryName: "Animal Other",
subCategoryId: "56f2eb66208f9a06158f1748"
}
]
},
{
category: "Art & Craft",
subcategory: [
{
subCategoryName: "Art & Craft",
subCategoryId: "571fdff7208f9a0cdb760a7f"
}
]
}
]
}
Completely deactivates and unpublishes an item from the site.
Retired items are not displayed on Walmart.com, but their content stays intact in our system. You can republish an item by providing future discontinue date for the item.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| sku | String | Yes |
Note: You can't reuse the SKU or Product ID from a retired item. If you need to change the SKU or Product ID, see Product ID & SKU section.
try {
const result = await walmartMws.items.retireItem('97964898989');
} catch (error) {
}
Response:
{
sku: "97964898989",
message: "Thank you. Your item has been submitted for retirement from Walmart Catalog. Please note that it can take up to 48 hours for items to be retired from our catalog.",
additionalAttributes: null,
errors: null
}
Completely deactivates and unpublishes items in bulk from the site.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| feedType | String | Yes | |
| file | String | Yes |
Usage:
try {
const result = await walmartMws.items.bulkRetireItem('RETIRE_ITEM', file);
} catch (error) {
}
Response:
{
feedId: "F129C19240844B97A3C6AD8F1A2C4997@AU8BAQA",
additionalAttributes: null,
errors: null
}
Retrieves a list of promotional prices for a single SKU.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| sku | String | Yes |
Usage:
try {
const result = await walmartMws.promotions.getPromotionalPrices('97964787878');
} catch (error) {
}
Response:
{
status: "OK",
header: {
headerAttributes: null
},
payload: {
itemIdentifier: {
sku: "97964787878"
},
pricingList: {
pricing: [
{
currentPrice: {
value: {
value: null,
currency: "USD",
amount: 4.00
},
uomType: null,
minValue: null,
maxValue: null,
perUnitValue: null,
minUnitValue: null,
maxUnitValue: null
},
currentPriceType: "REDUCED",
comparisonPrice: {
value: {
value: null,
currency: "USD",
amount: 4.00
},
uomType: null,
minValue: null,
maxValue: null,
perUnitValue: null,
minUnitValue: null,
maxUnitValue: null
},
comparisonPriceType: "BASE",
savingsAmount: 0.00,
savingsPercent: 0.00,
priceDisplayCodes: {
isRollback: false,
isStrikethrough: true,
isReducedPrice: true,
isClearance: false,
hidePriceForSOI: null,
isEligibleForAssociateDiscount: null,
submapType: null
},
effectiveDate: 1572774597943,
expirationDate: 1575366597943,
promoId: "ce9dfbce-4043-442c-8cb9-77d39d0f727f",
processMode: null
}
],
replaceAll: false
},
maxSalesRetailPrice: null,
minAdvtPrice: null,
rebate: null
}
}
Updates the promotional price. Sellers can update or delete an existing promotional price as well as set up a new promotional price.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| promo | Boolean | Yes | |
| data | Object | Yes |
let data = {
sku: "97964_KFTest",
pricing: [{
currentPrice: {
currency: "USD",
amount: 4
},
currentPriceType: "REDUCED",
comparisonPriceType: "BASE",
comparisonPrice: {
currency: "USD",
amount: 4
},
priceDisplayCodes: "CART",
effectiveDate: "2019-11-03T09:49:57.943Z",
expirationDate: "2019-12-03T09:49:57.943Z",
processMode: "UPSERT"
}]
}
Usage:
try {
const result = await walmartMws.promotions.updatePromotionalPrice(true, data)
} catch (error) {
}
Sample of Response
{
PriceHeader: {
version: "1.7"
},
Price: [{
sku: "30348_KFTest",
pricing: [{
currentPrice: {
currency: "USD",
amount: 4
},
currentPriceType: "REDUCED",
comparisonPriceType: "BASE",
comparisonPrice: {
currency: "USD",
amount: 4
},
priceDisplayCodes: "CART",
effectiveDate:"2019-11-09T21:29:39.420Z",
expirationDate:"2019-12-09T21:29:39.420Z",
processMode: "DELETE"
}]
}]
}
Return the inventory for a given item
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| sku | String | Yes |
Usage:
try {
const result = await walmartMws.inventory.getItemInventory('192503120522');
} catch (error) {
}
Response:
{
sku:'192503120522',
quantity:{
unit: 'EACH',
amount: 30
}
}
Updates the inventory for a given item.
Available Parameters:
| Name | Type | Required | Default |
|---|---|---|---|
| sku | String | Yes | |
| data | Object | Yes |
Usage:
let data = {
sku:'192503120522',
quantity:{
unit: 'EACH',
amount: 0
}
};
try {
const result = await walmartMws.inventory.updateItemInventory('192503120522', data);
} catch (error) {
}
Response:
{
sku:'192503120522',
quantity:{
unit: 'EACH',
amount: 0
}
}
| Package | Version |
|---|---|
| axios | 0.19.2 |
| moment | 2.27.0 |
| querystring | 0.2.0 |
Prices:
Commission Adjustment Program:
Reports:
Reconciliation Management:
If this project help you reduce time to develop, you can give me a cup of coffee :)
FAQs
Walmart Marketplace SDK
We found that walmart-mws demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.