Sample code for 30+ languages & platforms
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

AutoIt
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