Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) Walmart v3 Get a Feed StatusThis API returns the feed status for a specified Feed ID. For more information, see https://developer.walmart.com/#/apicenter/marketPlace/latest#getAFeedStatus
IncludeFile "CkHttp.pb" IncludeFile "CkStringBuilder.pb" IncludeFile "CkXml.pb" Procedure ChilkatExample() ; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. http.i = CkHttp::ckCreate() If http.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i ; Implements the following CURL command: ; curl -X GET \ ; https://marketplace.walmartapis.com/v3/feeds/{feedId} \ ; -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/xml' ; -H 'Accept: application/xml' CkHttp::ckSetRequestHeader(http,"WM_QOS.CORRELATION_ID","b3261d2d-028a-4ef7-8602-633c23200af6") CkHttp::ckSetRequestHeader(http,"Content-Type","application/xml") CkHttp::ckSetRequestHeader(http,"WM_SEC.ACCESS_TOKEN","eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....") CkHttp::ckSetRequestHeader(http,"Accept","application/xml") CkHttp::ckSetRequestHeader(http,"WM_SVC.NAME","Walmart Marketplace") sbResponseBody.i = CkStringBuilder::ckCreate() If sbResponseBody.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success = CkHttp::ckQuickGetSb(http,"https://marketplace.walmartapis.com/v3/feeds/{feedId}",sbResponseBody) If success = 0 Debug CkHttp::ckLastErrorText(http) CkHttp::ckDispose(http) CkStringBuilder::ckDispose(sbResponseBody) ProcedureReturn EndIf xmlResponse.i = CkXml::ckCreate() If xmlResponse.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkXml::ckLoadSb(xmlResponse,sbResponseBody,1) ; Sample XML response: ; (Sample code for parsing the XML response is shown below) ; <?xml version="1.0" encoding="UTF-8"?> ; <PartnerFeedResponse xmlns:ns2="http://walmart.com/"> ; <feedId>1c349f8f-aec0-411f-8454-ead47d12946f</feedId> ; <feedStatus>PROCESSED</feedStatus> ; <ingestionErrors/> ; <itemsReceived>11</itemsReceived> ; <itemsSucceeded>11</itemsSucceeded> ; <itemsFailed>0</itemsFailed> ; <itemsProcessing>0</itemsProcessing> ; <offset>0</offset> ; <limit>0</limit> ; <itemDetails> ; <itemIngestionStatus> ; <martId>0</martId> ; <sku>sku1</sku> ; <index>8</index> ; <ingestionStatus>SUCCESS</ingestionStatus> ; <ingestionErrors/> ; </itemIngestionStatus> ; <itemIngestionStatus> ; <martId>0</martId> ; <sku>sku2</sku> ; <index>6</index> ; <ingestionStatus>SUCCESS</ingestionStatus> ; <ingestionErrors/> ; </itemIngestionStatus> ; <itemIngestionStatus> ; <martId>0</martId> ; <sku>sku3</sku> ; <index>9</index> ; <ingestionStatus>SUCCESS</ingestionStatus> ; <ingestionErrors/> ; </itemIngestionStatus> ; </itemDetails> ; </PartnerFeedResponse> ; Sample code for parsing the XML response... ; Use the following online tool to generate parsing code from sample XML: ; Generate Parsing Code from XML PartnerFeedResponse_xmlns_ns2.s feedId.s feedStatus.s itemsReceived.i itemsSucceeded.i itemsFailed.i itemsProcessing.i offset.i limit.i i.i count_i.i martId.i sku.s index.i ingestionStatus.s PartnerFeedResponse_xmlns_ns2 = CkXml::ckGetAttrValue(xmlResponse,"xmlns:ns2") feedId = CkXml::ckGetChildContent(xmlResponse,"feedId") feedStatus = CkXml::ckGetChildContent(xmlResponse,"feedStatus") itemsReceived = CkXml::ckGetChildIntValue(xmlResponse,"itemsReceived") itemsSucceeded = CkXml::ckGetChildIntValue(xmlResponse,"itemsSucceeded") itemsFailed = CkXml::ckGetChildIntValue(xmlResponse,"itemsFailed") itemsProcessing = CkXml::ckGetChildIntValue(xmlResponse,"itemsProcessing") offset = CkXml::ckGetChildIntValue(xmlResponse,"offset") limit = CkXml::ckGetChildIntValue(xmlResponse,"limit") i = 0 count_i = CkXml::ckNumChildrenHavingTag(xmlResponse,"itemDetails|itemIngestionStatus") While i < count_i CkXml::setCkI(xmlResponse, i) martId = CkXml::ckGetChildIntValue(xmlResponse,"itemDetails|itemIngestionStatus[i]|martId") sku = CkXml::ckGetChildContent(xmlResponse,"itemDetails|itemIngestionStatus[i]|sku") index = CkXml::ckGetChildIntValue(xmlResponse,"itemDetails|itemIngestionStatus[i]|index") ingestionStatus = CkXml::ckGetChildContent(xmlResponse,"itemDetails|itemIngestionStatus[i]|ingestionStatus") i = i + 1 Wend CkHttp::ckDispose(http) CkStringBuilder::ckDispose(sbResponseBody) CkXml::ckDispose(xmlResponse) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.