Sample code for 30+ languages & platforms
Perl 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 Perl Downloads

Perl
use chilkat();

$success = 0;

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

$http = chilkat::CkHttp->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
#        }
#      }
#    ]
#  }

$json = chilkat::CkJsonObject->new();
$json->UpdateString("MPItemFeedHeader.version","3.2.1");
$json->UpdateString("MPItem[0].sku","setup_by_ref");
$json->UpdateString("MPItem[0].productIdentifiers[0].productIdType","GTIN");
$json->UpdateString("MPItem[0].productIdentifiers[0].productId","05518319011365");
$json->UpdateString("MPItem[0].MPProduct.category","Electronics");
$json->UpdateString("MPItem[0].MPProduct.subCategory","ElectronicsAccessories");
$json->UpdateNumber("MPItem[0].MPOffer.price","12.00");
$json->UpdateNumber("MPItem[0].MPOffer.shippingWeight.measure","0.5");
$json->UpdateString("MPItem[0].MPOffer.shippingWeight.unit","lb");
$json->UpdateInt("MPItem[0].MPOffer.productTaxCode",2038710);

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

$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpJson("POST","https://marketplace.walmartapis.com/v3/feeds?feedType=item",$json,"application/json",$resp);
if ($success == 0) {
    print $http->lastErrorText() . "\r\n";
    exit;
}

$sbResponseBody = chilkat::CkStringBuilder->new();
$resp->GetBodySb($sbResponseBody);
$jResp = chilkat::CkJsonObject->new();
$jResp->LoadSb($sbResponseBody);
$jResp->put_EmitCompact(0);

print "Response Body:" . "\r\n";
print $jResp->emit() . "\r\n";

$respStatusCode = $resp->get_StatusCode();
print "Response Status Code = " . $respStatusCode . "\r\n";
if ($respStatusCode >= 400) {
    print "Response Header:" . "\r\n";
    print $resp->header() . "\r\n";
    print "Failed." . "\r\n";
    exit;
}

#  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

$feedId = $jResp->stringOf("feedId");