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

Walmart v3 Bulk Item Setup

See more Walmart v3 Examples

Updates items in bulk.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
var
success: Integer;
http: TChilkatHttp;
req: TChilkatHttpRequest;
resp: TChilkatHttpResponse;
sbResponseBody: TChilkatStringBuilder;
xmlResponse: TChilkatXml;
FeedAcknowledgement_xmlns_ns2: WideString;
feedId: WideString;

begin
success := 0;

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

http := TChilkatHttp.Create(Self);

//  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

req := TChilkatHttpRequest.Create(Self);
req.HttpVerb := 'POST';
req.Path := '/v3/feeds?feedType=item';
req.ContentType := 'multipart/form-data';
success := req.AddFileForUpload2('feed','qa_data/walmart/itemFeed.xml','application/xml');

req.AddHeader('WM_QOS.CORRELATION_ID','b3261d2d-028a-4ef7-8602-633c23200af6');
req.AddHeader('Expect','100-continue');
req.AddHeader('Content-Type','multipart/form-data');
req.AddHeader('WM_SEC.ACCESS_TOKEN','eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....');
req.AddHeader('Accept','application/xml');
req.AddHeader('WM_SVC.NAME','Walmart Marketplace');

resp := TChilkatHttpResponse.Create(Self);
success := http.HttpSReq('marketplace.walmartapis.com',443,1,req.ControlInterface,resp.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(http.LastErrorText);
    Exit;
  end;

sbResponseBody := TChilkatStringBuilder.Create(Self);
resp.GetBodySb(sbResponseBody.ControlInterface);

xmlResponse := TChilkatXml.Create(Self);
xmlResponse.LoadSb(sbResponseBody.ControlInterface,1);
Memo1.Lines.Add(xmlResponse.GetXml());

//  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

FeedAcknowledgement_xmlns_ns2 := xmlResponse.GetAttrValue('xmlns:ns2');
feedId := xmlResponse.GetChildContent('feedId');