Update promotional pricing for multiple items in bulk (New)

Call this API to create, update, or delete promotional pricing for multiple SKUs in one bulk request.

  • To add a new promotion, set the promotionSettingAction attribute to Create.
  • To update an existing promotion, set the promotionSettingAction attribute to Create with promoId.
  • To delete a promotional price, set the promotionSettingAction attribute to Delete.
  • To delete all promotions for a SKU, set the promotionSettingAction attribute to replaceAll.
The effective start date for a given promotion should be within 365 days from the current date and time. The end date of a given promotion should be within 180 days from the start date and time. Any promotions beyond 180 days will result in an error.

Endpoint

POST https://marketplace.walmartapis.com/v3/feeds?feedType=PRICE_AND_PROMOTION

Sample request

This sample request demonstrates how to update the promotional price for multiple SKUs.

curl --request POST \ --url 'https://marketplace.walmartapis.com/v3/feeds?feedType=PRICE_AND_PROMOTION' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --header 'WM_SEC.ACCESS_TOKEN: <access_token>' \ --header 'WM_QOS.CORRELATION_ID: <uuid>' \ --header 'WM_SVC.NAME: Walmart Marketplace' \ --data '
{ "MPItemFeedHeader": { "businessUnit": "WALMART_US", "version": "2.0.20240126-12_25_52-api", "locale": "en" }, "MPItem": [ { "Promo&Discount": { "sku": "SKU00638931255307", "price": 11, "msrp": 15, "promoid": "28cc0144-5d70-4acb-b366-98a07c3ac671", "promotionInformation": { "promotionSettingAction": "Create", "promotionPlacement": "MAP Cart", "promotionType": "Clearance", "promotionPrice": 8.5, "promotionPriceStartDateTime": "2024-10-01T20:52:46Z", "promotionPriceEndDateTime": "2024-10-22T20:52:46Z" } } } ]
}
'
import requests url = "https://marketplace.walmartapis.com/v3/feeds"
params = {"feedType": "PRICE_AND_PROMOTION"}
headers = { "WM_SEC.ACCESS_TOKEN": "<access_token>", "WM_QOS.CORRELATION_ID": "<uuid>", "WM_SVC.NAME": "Walmart Marketplace", "Content-Type": "application/json", "Accept": "application/json",
} body = { "MPItemFeedHeader": { "businessUnit": "WALMART_US", "version": "2.0.20240126-12_25_52-api", "locale": "en" }, "MPItem": [ { "Promo&Discount": { "sku": "SKU00638931255307", "price": 11, "msrp": 15, "promoid": "28cc0144-5d70-4acb-b366-98a07c3ac671", "promotionInformation": { "promotionSettingAction": "Create", "promotionPlacement": "MAP Cart", "promotionType": "Clearance", "promotionPrice": 8.5, "promotionPriceStartDateTime": "2024-10-01T20:52:46Z", "promotionPriceEndDateTime": "2024-10-22T20:52:46Z" } } } ]
} response = requests.post(url, headers=headers, params=params, json=body, timeout=30)
response.raise_for_status()
print(response.json()) 
const url = new URL("https://marketplace.walmartapis.com/v3/feeds");
url.searchParams.set("feedType", "PRICE_AND_PROMOTION"); const res = await fetch(url, { method: "POST", headers: { "WM_SEC.ACCESS_TOKEN": "<access_token>", "WM_QOS.CORRELATION_ID": "<uuid>", "WM_SVC.NAME": "Walmart Marketplace", "Content-Type": "application/json", "Accept": "application/json" }, body: JSON.stringify({ MPItemFeedHeader: { businessUnit: "WALMART_US", version: "2.0.20240126-12_25_52-api", locale: "en" }, MPItem: [ { "Promo&Discount": { sku: "SKU00638931255307", price: 11, msrp: 15, promoid: "28cc0144-5d70-4acb-b366-98a07c3ac671", promotionInformation: { promotionSettingAction: "Create", promotionPlacement: "MAP Cart", promotionType: "Clearance", promotionPrice: 8.5, promotionPriceStartDateTime: "2024-10-01T20:52:46Z", promotionPriceEndDateTime: "2024-10-22T20:52:46Z" } } } ] })
}); if (!res.ok) throw new Error(`HTTP ${res.status}: ${await res.text()}`);
const data = await res.json();
console.log(data); 

Modify your code

  • Use a unique WM_QOS.CORRELATION_ID for each request.
  • Replace WM_SEC.ACCESS_TOKEN with your valid access token obtained through authentication.

Sample response

The sample response shows the unique ID for the feed submission; using which you check the status of promotions.

{ "feedId": "609B1E4C0B3E48989690263DEAC85C63@AVUBAQA"
}

Result

If successful, the API response returns a feedID indicating that the promotions will be applied.

You can use this feed ID with the Feed Status API or All Feed Statuses API to monitor the progress of your submission and see the line-item status.