Xbase++
Xbase++
Walmart v3 Get All Feed Statuses
See more Walmart v3 Examples
Returns the feed statuses for all the specified Feed IDs.Chilkat Xbase++ Downloads
LOCAL nSuccess
LOCAL oHttp
LOCAL oSbResponseBody
LOCAL oXmlResponse
LOCAL cNs2_list_xmlns_ns2
LOCAL nNs2_totalResults
LOCAL nNs2_offset
LOCAL nNs2_limit
LOCAL i
LOCAL nCount_i
LOCAL cNs2_feedId
LOCAL cNs2_feedSource
LOCAL cNs2_feedType
LOCAL nNs2_partnerId
LOCAL nNs2_itemsReceived
LOCAL nNs2_itemsSucceeded
LOCAL nNs2_itemsFailed
LOCAL nNs2_itemsProcessing
LOCAL cNs2_feedStatus
LOCAL cNs2_feedDate
LOCAL cNs2_batchId
LOCAL cNs2_modifiedDtm
LOCAL cNs2_fileName
LOCAL nNs2_itemDataErrorCount
LOCAL nNs2_itemSystemErrorCount
LOCAL nNs2_itemTimeoutErrorCount
LOCAL cNs2_channelType
nSuccess := 0
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
oHttp := CreateObject("Chilkat.Http")
// Implements the following CURL command:
// curl -X GET \
// https://marketplace.walmartapis.com/v3/feeds?feedId={feedId}&limit={limit}&offset={offset} \
// -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'
oHttp:SetRequestHeader("WM_QOS.CORRELATION_ID", "b3261d2d-028a-4ef7-8602-633c23200af6")
oHttp:SetRequestHeader("Content-Type", "application/xml")
oHttp:SetRequestHeader("WM_SEC.ACCESS_TOKEN", "eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....")
oHttp:SetRequestHeader("Accept", "application/xml")
oHttp:SetRequestHeader("WM_SVC.NAME", "Walmart Marketplace")
oSbResponseBody := CreateObject("Chilkat.StringBuilder")
nSuccess := oHttp:QuickGetSb("https://marketplace.walmartapis.com/v3/feeds?feedId={feedId}&limit={limit}&offset={offset}", oSbResponseBody)
IF (nSuccess == 0)
? oHttp:LastErrorText
oHttp:destroy()
oSbResponseBody:destroy()
RETURN
ENDIF
oXmlResponse := CreateObject("Chilkat.Xml")
oXmlResponse:LoadSb(oSbResponseBody, 1)
// Sample XML response:
// (Sample code for parsing the XML response is shown below)
// <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
// <ns2:list xmlns:ns2="http://walmart.com/">
// <ns2:totalResults>2</ns2:totalResults>
// <ns2:offset>0</ns2:offset>
// <ns2:limit>50</ns2:limit>
// <ns2:results>
// <ns2:feed>
// <ns2:feedId>12234EGGT564YTEGFA@AQMBAQA</ns2:feedId>
// <ns2:feedSource>MARKETPLACE_PARTNER</ns2:feedSource>
// <ns2:feedType>item</ns2:feedType>
// <ns2:partnerId>1413254255</ns2:partnerId>
// <ns2:itemsReceived>1</ns2:itemsReceived>
// <ns2:itemsSucceeded>1</ns2:itemsSucceeded>
// <ns2:itemsFailed>0</ns2:itemsFailed>
// <ns2:itemsProcessing>0</ns2:itemsProcessing>
// <ns2:feedStatus>PROCESSED</ns2:feedStatus>
// <ns2:feedDate>2018-07-20T21:56:12.605Z</ns2:feedDate>
// <ns2:batchId>HP_REQUEST_BATCH</ns2:batchId>
// <ns2:modifiedDtm>2018-07-20T21:56:17.948Z</ns2:modifiedDtm>
// <ns2:fileName>ItemFeed99_ParadiseCounty_paperback.xml</ns2:fileName>
// <ns2:itemDataErrorCount>0</ns2:itemDataErrorCount>
// <ns2:itemSystemErrorCount>0</ns2:itemSystemErrorCount>
// <ns2:itemTimeoutErrorCount>0</ns2:itemTimeoutErrorCount>
// <ns2:channelType>WM_TEST</ns2:channelType>
// </ns2:feed>
// <ns2:feed>
// <ns2:feedId>12234EGGT564YTEGFA@AQMBAQA</ns2:feedId>
// <ns2:feedSource>MARKETPLACE_PARTNER</ns2:feedSource>
// <ns2:feedType>item</ns2:feedType>
// <ns2:partnerId>1413254255</ns2:partnerId>
// <ns2:itemsReceived>1</ns2:itemsReceived>
// <ns2:itemsSucceeded>1</ns2:itemsSucceeded>
// <ns2:itemsFailed>0</ns2:itemsFailed>
// <ns2:itemsProcessing>0</ns2:itemsProcessing>
// <ns2:feedStatus>PROCESSED</ns2:feedStatus>
// <ns2:feedDate>2018-07-20T21:56:12.605Z</ns2:feedDate>
// <ns2:batchId>HP_REQUEST_BATCH</ns2:batchId>
// <ns2:modifiedDtm>2018-07-20T21:56:17.948Z</ns2:modifiedDtm>
// <ns2:fileName>ItemFeed99_ParadiseCounty_paperback.xml</ns2:fileName>
// <ns2:itemDataErrorCount>0</ns2:itemDataErrorCount>
// <ns2:itemSystemErrorCount>0</ns2:itemSystemErrorCount>
// <ns2:itemTimeoutErrorCount>0</ns2:itemTimeoutErrorCount>
// <ns2:channelType>WM_TEST</ns2:channelType>
// </ns2:feed>
// </ns2:results>
// </ns2:list>
// Sample code for parsing the XML response...
// Use the following online tool to generate parsing code from sample XML:
// Generate Parsing Code from XML
cNs2_list_xmlns_ns2 := oXmlResponse:GetAttrValue("xmlns:ns2")
nNs2_totalResults := oXmlResponse:GetChildIntValue("ns2:totalResults")
nNs2_offset := oXmlResponse:GetChildIntValue("ns2:offset")
nNs2_limit := oXmlResponse:GetChildIntValue("ns2:limit")
i := 0
nCount_i := oXmlResponse:NumChildrenHavingTag("ns2:results|ns2:feed")
DO WHILE i < nCount_i
oXmlResponse:I := i
cNs2_feedId := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:feedId")
cNs2_feedSource := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:feedSource")
cNs2_feedType := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:feedType")
nNs2_partnerId := oXmlResponse:GetChildIntValue("ns2:results|ns2:feed[i]|ns2:partnerId")
nNs2_itemsReceived := oXmlResponse:GetChildIntValue("ns2:results|ns2:feed[i]|ns2:itemsReceived")
nNs2_itemsSucceeded := oXmlResponse:GetChildIntValue("ns2:results|ns2:feed[i]|ns2:itemsSucceeded")
nNs2_itemsFailed := oXmlResponse:GetChildIntValue("ns2:results|ns2:feed[i]|ns2:itemsFailed")
nNs2_itemsProcessing := oXmlResponse:GetChildIntValue("ns2:results|ns2:feed[i]|ns2:itemsProcessing")
cNs2_feedStatus := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:feedStatus")
cNs2_feedDate := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:feedDate")
cNs2_batchId := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:batchId")
cNs2_modifiedDtm := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:modifiedDtm")
cNs2_fileName := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:fileName")
nNs2_itemDataErrorCount := oXmlResponse:GetChildIntValue("ns2:results|ns2:feed[i]|ns2:itemDataErrorCount")
nNs2_itemSystemErrorCount := oXmlResponse:GetChildIntValue("ns2:results|ns2:feed[i]|ns2:itemSystemErrorCount")
nNs2_itemTimeoutErrorCount := oXmlResponse:GetChildIntValue("ns2:results|ns2:feed[i]|ns2:itemTimeoutErrorCount")
cNs2_channelType := oXmlResponse:GetChildContent("ns2:results|ns2:feed[i]|ns2:channelType")
i := i + 1
ENDDO
oHttp:destroy()
oSbResponseBody:destroy()
oXmlResponse:destroy()