AutoIt
AutoIt
Walmart v3 Get a Feed Status
See more Walmart v3 Examples
This API returns the feed status for a specified Feed ID.Chilkat AutoIt Downloads
Local $bSuccess = False
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
$oHttp = ObjCreate("Chilkat.Http")
; 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'
$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 = ObjCreate("Chilkat.StringBuilder")
$bSuccess = $oHttp.QuickGetSb("https://marketplace.walmartapis.com/v3/feeds/{feedId}",$oSbResponseBody)
If ($bSuccess = False) Then
ConsoleWrite($oHttp.LastErrorText & @CRLF)
Exit
EndIf
$oXmlResponse = ObjCreate("Chilkat.Xml")
$oXmlResponse.LoadSb($oSbResponseBody,True)
; 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
Local $sPartnerFeedResponse_xmlns_ns2
Local $sFeedId
Local $sFeedStatus
Local $itemsReceived
Local $itemsSucceeded
Local $itemsFailed
Local $itemsProcessing
Local $iOffset
Local $iLimit
Local $i
Local $iCount_i
Local $iMartId
Local $sku
Local $index
Local $sIngestionStatus
$sPartnerFeedResponse_xmlns_ns2 = $oXmlResponse.GetAttrValue("xmlns:ns2")
$sFeedId = $oXmlResponse.GetChildContent("feedId")
$sFeedStatus = $oXmlResponse.GetChildContent("feedStatus")
$itemsReceived = $oXmlResponse.GetChildIntValue("itemsReceived")
$itemsSucceeded = $oXmlResponse.GetChildIntValue("itemsSucceeded")
$itemsFailed = $oXmlResponse.GetChildIntValue("itemsFailed")
$itemsProcessing = $oXmlResponse.GetChildIntValue("itemsProcessing")
$iOffset = $oXmlResponse.GetChildIntValue("offset")
$iLimit = $oXmlResponse.GetChildIntValue("limit")
$i = 0
$iCount_i = $oXmlResponse.NumChildrenHavingTag("itemDetails|itemIngestionStatus")
While $i < $iCount_i
$oXmlResponse.I = $i
$iMartId = $oXmlResponse.GetChildIntValue("itemDetails|itemIngestionStatus[i]|martId")
$sku = $oXmlResponse.GetChildContent("itemDetails|itemIngestionStatus[i]|sku")
$index = $oXmlResponse.GetChildIntValue("itemDetails|itemIngestionStatus[i]|index")
$sIngestionStatus = $oXmlResponse.GetChildContent("itemDetails|itemIngestionStatus[i]|ingestionStatus")
$i = $i + 1
Wend