Chilkat Examples

ChilkatHOMEAndroid™Classic ASPCC++C#Mono C#.NET Core C#C# UWP/WinRTDataFlexDelphi ActiveXDelphi DLLVisual FoxProJavaLianjaMFCObjective-CPerlPHP ActiveXPHP ExtensionPowerBuilderPowerShellPureBasicCkPythonChilkat2-PythonRubySQL ServerSwift 2Swift 3/4TclUnicode CUnicode C++Visual Basic 6.0VB.NETVB.NET UWP/WinRTVBScriptXojo PluginNode.jsExcelGo

VBScript Web API Examples

Primary Categories

Facebook
GeoOp
Jira
PayPal
Peoplevox
QuickBooks

Shopify
Stripe
SugarCRM
Twitter
VoiceBase
Walmart
Xero
eBay
effectconnect

 

 

 

(VBScript) Walmart - Get a FeedItem's Status

Demonstrates how to get a Walmart feedItem's status.

Note: This example requires Chilkat v9.5.0.67 or greater.

Chilkat ActiveX Downloads

ActiveX for 32-bit and 64-bit Windows

Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set outFile = fso.CreateTextFile("output.txt", True)

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

' Sends the following GET request:
' GET https://marketplace.walmartapis.com/v2/feeds/feeditems/{feedId}?includeDetails={includeDetails}&limit={limit}

set sbUrl = CreateObject("Chilkat_9_5_0.StringBuilder")
success = sbUrl.Append("https://marketplace.walmartapis.com/v2/feeds/feeditems/{feedId}?includeDetails={includeDetails}&limit={limit}")
numReplaced = sbUrl.Replace("{feedId}","AAAA7F0345E9403C91223F7139FFC341@AQsBAQA")
numReplaced = sbUrl.Replace("{includeDetails}","true")
numReplaced = sbUrl.ReplaceI("{limit}",3)

requestMethod = "GET"

' First we need to generate a signature for our request.
' The signature needs to be re-generated for each new Walmart HTTP request.
set authUtil = CreateObject("Chilkat_9_5_0.AuthUtil")

wmConsumerId = "WALMART_CONSUMER_ID"
wmPrivateKey = "WALMART_PRIVATE_KEY"
jsonStr = authUtil.WalmartSignature(sbUrl.GetAsString(),wmConsumerId,wmPrivateKey,requestMethod)
If (authUtil.LastMethodSuccess <> 1) Then
    outFile.WriteLine(authUtil.LastErrorText)
    WScript.Quit
End If

' The JSON returned by WalmartSignature contains the values to be used in the following
' header fields: WM_SEC.AUTH_SIGNATURE, WM_SEC.TIMESTAMP, and WM_QOS.CORRELATION_ID
set json = CreateObject("Chilkat_9_5_0.JsonObject")
success = json.Load(jsonStr)

set http = CreateObject("Chilkat_9_5_0.Http")
http.SetRequestHeader "WM_SVC.NAME","Walmart Marketplace"
http.SetRequestHeader "WM_QOS.CORRELATION_ID",json.StringOf("correlation_id")
http.SetRequestHeader "WM_SEC.TIMESTAMP",json.StringOf("timestamp")
http.SetRequestHeader "WM_SEC.AUTH_SIGNATURE",json.StringOf("signature")
http.SetRequestHeader "WM_CONSUMER.ID",wmConsumerId
http.Accept = "application/xml"

' Note: Do not explicitly set the "Host" header.  Chilkat will set it automatically.

xmlStr = http.QuickGetStr(sbUrl.GetAsString())
If (http.LastMethodSuccess <> 1) Then
    outFile.WriteLine(http.LastErrorText)
    WScript.Quit
End If

set xml = CreateObject("Chilkat_9_5_0.Xml")
success = xml.LoadXml(xmlStr)

' A successful response should have a 200 response status
If (http.LastStatus <> 200) Then
    outFile.WriteLine(xml.GetXml())
    outFile.WriteLine("Response Status Code: " & http.LastStatus)
    outFile.WriteLine("Failed.")
    WScript.Quit
End If

' A sample XML response is shown below..
outFile.WriteLine(xml.GetXml())
outFile.WriteLine("--")

' To iterate over the ingestion statuses:
numIngestionStatuses = xml.NumChildrenAt("ns2:elements|ns2:itemDetails")
i = 0
Do While i < numIngestionStatuses
    xml.I = i

    outFile.WriteLine("sku: " & xml.GetChildContent("ns2:elements|ns2:itemDetails|ns2:itemIngestionStatus[i]|ns2:sku"))
    outFile.WriteLine("status: " & xml.GetChildContent("ns2:elements|ns2:itemDetails|ns2:itemIngestionStatus[i]|ns2:ingestionStatus"))
    outFile.WriteLine("--")

    i = i + 1
Loop

outFile.WriteLine("Success.")

' ---------------------------------------
' Sample XML response
' ---------------------------------------

' <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
' <ns2:ItemStatusDetail xmlns:ns2="http://walmart.com/">
'     <ns2:meta>
'         <ns2:feedId>AAAAF0345E9403C91223F7139FFC341@AQsBAQA</ns2:feedId>
'         <ns2:feedStatus>PROCESSED</ns2:feedStatus>
'         <ns2:ingestionErrors />
'         <ns2:itemsReceived>130088</ns2:itemsReceived>
'         <ns2:itemsSucceeded>113154</ns2:itemsSucceeded>
'         <ns2:itemsFailed>16934</ns2:itemsFailed>
'         <ns2:itemsProcessing>0</ns2:itemsProcessing>
'         <ns2:limit>3</ns2:limit>
'         <ns2:totalCount>3</ns2:totalCount>
'         <ns2:nextCursor>includeDetails=true&amp;limit=3&amp;skuOffset=ENC%28%2F8D%2FyDen1ByXGA7EsWkArA%3D%3D%29</ns2:nextCursor>
'     </ns2:meta>
'     <ns2:elements>
'         <ns2:itemDetails>
'             <ns2:itemIngestionStatus>
'                 <ns2:martId>0</ns2:martId>
'                 <ns2:sku>0000~0~00141</ns2:sku>
'                 <ns2:index>0</ns2:index>
'                 <ns2:ingestionStatus>DATA_ERROR</ns2:ingestionStatus>
'                 <ns2:ingestionErrors>
'                     <ns2:ingestionError>
'                         <ns2:type>DATA_ERROR</ns2:type>
'                         <ns2:code>PIVI_021</ns2:code>
'                         <ns2:description>No item found with the given SKU.</ns2:description>
'                     </ns2:ingestionError>
'                 </ns2:ingestionErrors>
'             </ns2:itemIngestionStatus>
'             <ns2:itemIngestionStatus>
'                 <ns2:martId>0</ns2:martId>
'                 <ns2:sku>0000~0~03472</ns2:sku>
'                 <ns2:index>1</ns2:index>
'                 <ns2:ingestionStatus>SUCCESS</ns2:ingestionStatus>
'                 <ns2:ingestionErrors />
'             </ns2:itemIngestionStatus>
'             <ns2:itemIngestionStatus>
'                 <ns2:martId>0</ns2:martId>
'                 <ns2:sku>0000~0~08540</ns2:sku>
'                 <ns2:index>2</ns2:index>
'                 <ns2:ingestionStatus>SUCCESS</ns2:ingestionStatus>
'                 <ns2:ingestionErrors />
'             </ns2:itemIngestionStatus>
'         </ns2:itemDetails>
'     </ns2:elements>
' </ns2:ItemStatusDetail>

outFile.Close

 

© 2000-2019 Chilkat Software, Inc. All Rights Reserved.