Sample code for 30+ languages & platforms
Lua Requires Chilkat v11.0.0+

Walmart v3 Item Setup by Match

See more Walmart v3 Examples

Provides a quick and convenient way to set up items by matching your items to existing item content on Walmart.com.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.

local http = chilkat.Http.new()

-- Implements the following CURL command:

-- curl -X POST \
--   https://marketplace.walmartapis.com/v3/feeds?feedType=item \
--   -H 'WM_SVC.NAME: Walmart Marketplace'
--   -H 'WM_SEC.ACCESS_TOKEN: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....'
--   -H 'WM_QOS.CORRELATION_ID: b3261d2d-028a-4ef7-8602-633c23200af6'
--   -H 'Content-Type: application/json'
--   -H 'Accept: application/json'
--   -d '{
--     "MPItemFeedHeader": {
--         "version": "3.2.1"
--     },
--     "MPItem": [
--         {
--             "sku": "setup_by_ref",
--             "productIdentifiers": [
--                 {
--                     "productIdType": "GTIN",
--                     "productId": "05518319011365"
--                 }
--             ],
--             "MPProduct": {
--                 "category": "Electronics",
--                 "subCategory": "ElectronicsAccessories"
--             },
--             "MPOffer": {
--                 "price": 12.00,
--                 "shippingWeight": {
--                     "measure": 0.5,
--                     "unit": "lb"
--                 },
--                 "productTaxCode": 2038710
--             }
--         }
--     ]
-- }'

-- Use this online tool to generate code from sample JSON:
-- Generate Code to Create JSON

-- The following JSON is sent in the request body.

-- {
--   "MPItemFeedHeader": {
--     "version": "3.2.1"
--   },
--   "MPItem": [
--     {
--       "sku": "setup_by_ref",
--       "productIdentifiers": [
--         {
--           "productIdType": "GTIN",
--           "productId": "05518319011365"
--         }
--       ],
--       "MPProduct": {
--         "category": "Electronics",
--         "subCategory": "ElectronicsAccessories"
--       },
--       "MPOffer": {
--         "price": 12.00,
--         "shippingWeight": {
--           "measure": 0.5,
--           "unit": "lb"
--         },
--         "productTaxCode": 2038710
--       }
--     }
--   ]
-- }

local json = chilkat.JsonObject.new()
json:update_string("MPItemFeedHeader.version", "3.2.1")
json:update_string("MPItem[0].sku", "setup_by_ref")
json:update_string("MPItem[0].productIdentifiers[0].productIdType", "GTIN")
json:update_string("MPItem[0].productIdentifiers[0].productId", "05518319011365")
json:update_string("MPItem[0].MPProduct.category", "Electronics")
json:update_string("MPItem[0].MPProduct.subCategory", "ElectronicsAccessories")
json:update_number("MPItem[0].MPOffer.price", "12.00")
json:update_number("MPItem[0].MPOffer.shippingWeight.measure", "0.5")
json:update_string("MPItem[0].MPOffer.shippingWeight.unit", "lb")
json:update_int("MPItem[0].MPOffer.productTaxCode", 2038710)

http:set_request_header("WM_QOS.CORRELATION_ID", "b3261d2d-028a-4ef7-8602-633c23200af6")
http:set_request_header("Content-Type", "application/json")
http:set_request_header("WM_SEC.ACCESS_TOKEN", "eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....")
http:set_request_header("Accept", "application/json")
http:set_request_header("WM_SVC.NAME", "Walmart Marketplace")

local resp = chilkat.HttpResponse.new()
local success = http:http_json("POST", "https://marketplace.walmartapis.com/v3/feeds?feedType=item", json, "application/json", resp)
if not success then
    print(http.last_error_text)
    return
end

local sbResponseBody = chilkat.StringBuilder.new()
resp:get_body_sb(sbResponseBody)
local jResp = chilkat.JsonObject.new()
jResp:load_sb(sbResponseBody)
jResp.emit_compact = false

print("Response Body:")
print(jResp:emit())

local respStatusCode = resp.status_code
print("Response Status Code = " .. respStatusCode)
if respStatusCode >= 400 then
    print("Response Header:")
    print(resp.header)
    print("Failed.")
    return
end

-- Sample JSON response:
-- (Sample code for parsing the JSON response is shown below)

-- {
--   "feedId": "BC141881F6BB4B5891F084B225581BF2@AUUBAQA"
-- }

-- Sample code for parsing the JSON response...
-- Use the following online tool to generate parsing code from sample JSON:
-- Generate Parsing Code from JSON

local feedId = jResp:string_of("feedId")