Sample code for 30+ languages & platforms
Tcl

Walmart v3 Bulk Item Setup

See more Walmart v3 Examples

Updates items in bulk.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

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

set http [new_CkHttp]

# 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: multipart/form-data'
#   -H 'Accept: application/xml'
#   -F feed=@qa_data/walmart/itemFeed.xml

set req [new_CkHttpRequest]

CkHttpRequest_put_HttpVerb $req "POST"
CkHttpRequest_put_Path $req "/v3/feeds?feedType=item"
CkHttpRequest_put_ContentType $req "multipart/form-data"
set success [CkHttpRequest_AddFileForUpload2 $req "feed" "qa_data/walmart/itemFeed.xml" "application/xml"]

CkHttpRequest_AddHeader $req "WM_QOS.CORRELATION_ID" "b3261d2d-028a-4ef7-8602-633c23200af6"
CkHttpRequest_AddHeader $req "Expect" "100-continue"
CkHttpRequest_AddHeader $req "Content-Type" "multipart/form-data"
CkHttpRequest_AddHeader $req "WM_SEC.ACCESS_TOKEN" "eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM....."
CkHttpRequest_AddHeader $req "Accept" "application/xml"
CkHttpRequest_AddHeader $req "WM_SVC.NAME" "Walmart Marketplace"

set resp [new_CkHttpResponse]

set success [CkHttp_HttpSReq $http "marketplace.walmartapis.com" 443 1 $req $resp]
if {$success == 0} then {
    puts [CkHttp_lastErrorText $http]
    delete_CkHttp $http
    delete_CkHttpRequest $req
    delete_CkHttpResponse $resp
    exit
}

set sbResponseBody [new_CkStringBuilder]

CkHttpResponse_GetBodySb $resp $sbResponseBody

set xmlResponse [new_CkXml]

CkXml_LoadSb $xmlResponse $sbResponseBody 1
puts [CkXml_getXml $xmlResponse]

# Sample XML response:
# (Sample code for parsing the XML response is shown below)

# <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
# <FeedAcknowledgement xmlns:ns2="http://walmart.com/">
#     <feedId>E9C04D1FFD99479FBC1341D56DD5F930@AQMB_wA</feedId>
# </FeedAcknowledgement>

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

set FeedAcknowledgement_xmlns_ns2 [CkXml_getAttrValue $xmlResponse "xmlns:ns2"]
set feedId [CkXml_getChildContent $xmlResponse "feedId"]

delete_CkHttp $http
delete_CkHttpRequest $req
delete_CkHttpResponse $resp
delete_CkStringBuilder $sbResponseBody
delete_CkXml $xmlResponse