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
(Visual Basic 6.0) Walmart V3 API - Get All Released OrdersRetrieves all the orders with line items that are in the "created" status, that is, these orders have been released from the Walmart Order Management System to the seller for processing. The released orders are the orders that are ready for a seller to fulfill. For more information, see https://developer.walmart.com/#/apicenter/marketPlace/latest#getAllReleasedOrders
' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As New ChilkatHttp http.Accept = "application/json" ' Setting the Login and Password properties to the clientId and clientSecret ' will cause the Basic Auth header to be added (i.e. BaseEncode64(clientId:clientSecret)) http.Login = "clientId" http.Password = "clientSecret" http.BasicAuth = 1 http.SetRequestHeader "Content-Type","application/json" http.SetRequestHeader "WM_QOS.CORRELATION_ID","b3261d2d-028a-4ef7-8602-633c23200af6" ' Use the access token obtained from this example: Walmart v3 API Get OAuth2 Access Token using Client Credentials http.SetRequestHeader "WM_SEC.ACCESS_TOKEN","eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM....." http.SetRequestHeader "WM_SVC.NAME","Walmart Marketplace" success = http.SetUrlVar("createdStartDate","2020-01-16T10:30:15Z") success = http.SetUrlVar("limit","200") ' Can also be 3PLFulfilled success = http.SetUrlVar("shippingProgramType","SellerFulfilled") success = http.SetUrlVar("shipNodeType","TWO_DAY") Dim resp As ChilkatHttpResponse Set resp = http.QuickRequest("GET","/v3/orders/released?createdStartDate={$createdStartDate}&limit={$limit}&shippingProgramType={$shippingProgramType}&shipNodeType={$shipNodeType}") If (http.LastMethodSuccess <> 1) Then Debug.Print http.LastErrorText Exit Sub End If Debug.Print "Response Status Code: " & resp.StatusCode Dim jsonResponse As New ChilkatJsonObject success = jsonResponse.Load(resp.BodyStr) jsonResponse.EmitCompact = 0 Debug.Print jsonResponse.Emit() If (resp.StatusCode <> 200) Then Debug.Print "Failed." Exit Sub End If ' Sample output... ' (See the parsing code below..) ' ' Use the this online tool to generate parsing code from sample JSON: ' Generate Parsing Code from JSON ' { ' "list": { ' "meta": { ' "totalCount": 25228, ' "limit": 10, ' "nextCursor": "?limit=10&hasMoreElements=true&soIndex=25228&poIndex=10&sellerId=152&createdStartDate=2019-04-02T00:00:00.000Z&createdEndDate=2019-09-26T16:05:49.648Z" ' }, ' "elements": { ' "order": [ ' { ' "purchaseOrderId": "4792701510371", ' "customerOrderId": "5401973367419", ' "customerEmailId": "47B81ACD2C62434DBE64F47B9E1F7630@relay.walmart.com", ' "orderDate": 1569513584000, ' "shippingInfo": { ' "phone": "2134488377", ' "estimatedDeliveryDate": 1569870000000, ' "estimatedShipDate": 1569553200000, ' "methodCode": "Express", ' "postalAddress": { ' "name": "Julio Hernandez", ' "address1": "9713 pleasant view dr", ' "address2": null, ' "city": "Rancho Cucamonga", ' "state": "CA", ' "postalCode": "91701", ' "country": "USA", ' "addressType": "RESIDENTIAL" ' } ' }, ' "orderLines": { ' "orderLine": [ ' { ' "lineNumber": "1", ' "item": { ' "productName": "Refurbished Lenovo YB1-X90F Grey Yoga Book with WiFi 10.1\" Touchscreen Tablet Android 6.0.1", ' "sku": "VO190403007727R" ' }, ' "charges": { ' "charge": [ ' { ' "chargeType": "PRODUCT", ' "chargeName": "ItemPrice", ' "chargeAmount": { ' "currency": "USD", ' "amount": 259 ' }, ' "tax": { ' "taxName": "Tax1", ' "taxAmount": { ' "currency": "USD", ' "amount": 20.07 ' } ' } ' }, ' { ' "chargeType": "FEE", ' "chargeName": "Fee", ' "chargeAmount": { ' "currency": "USD", ' "amount": 0 ' }, ' "tax": { ' "taxName": "Electronic Waste Recycling Fee", ' "taxAmount": { ' "currency": "USD", ' "amount": 5 ' } ' } ' } ' ] ' }, ' "orderLineQuantity": { ' "unitOfMeasurement": "EACH", ' "amount": "1" ' }, ' "statusDate": 1569513724000, ' "orderLineStatuses": { ' "orderLineStatus": [ ' { ' "status": "Acknowledged", ' "statusQuantity": { ' "unitOfMeasurement": "EACH", ' "amount": "1" ' }, ' "cancellationReason": null, ' "trackingInfo": null, ' "returnCenterAddress": null ' } ' ] ' }, ' "refund": null, ' "fulfillment": { ' "fulfillmentOption": "S2H", ' "shipMethod": "EXPEDITED", ' "storeId": null, ' "pickUpDateTime": 1569870000000, ' "pickUpBy": null, ' "shippingProgramType": "TWO_DAY" ' } ' } ' ] ' }, ' "shipNode": { ' "type": "3PLFulfilled" ' } ' } ' ] ' } ' } ' } ' Dim purchaseOrderId As String Dim customerOrderId As String Dim customerEmailId As String Dim orderDate As Long Dim shippingInfoPhone As String Dim shippingInfoEstimatedDeliveryDate As Long Dim shippingInfoEstimatedShipDate As Long Dim shippingInfoMethodCode As String Dim shippingInfoPostalAddressName As String Dim shippingInfoPostalAddressAddress1 As String Dim shippingInfoPostalAddressAddress2 As String Dim shippingInfoPostalAddressCity As String Dim shippingInfoPostalAddressState As String Dim shippingInfoPostalAddressPostalCode As String Dim shippingInfoPostalAddressCountry As String Dim shippingInfoPostalAddressAddressType As String Dim shipNodeType As String Dim j As Long Dim count_j As Long Dim lineNumber As String Dim itemProductName As String Dim itemSku As String Dim orderLineQuantityUnitOfMeasurement As String Dim orderLineQuantityAmount As String Dim statusDate As Long Dim refund As String Dim fulfillmentFulfillmentOption As String Dim fulfillmentShipMethod As String Dim fulfillmentStoreId As String Dim fulfillmentPickUpDateTime As Long Dim fulfillmentPickUpBy As String Dim fulfillmentShippingProgramType As String Dim k As Long Dim count_k As Long Dim chargeType As String Dim chargeName As String Dim chargeAmountCurrency As String Dim chargeAmountAmount As Long Dim taxTaxName As String Dim taxTaxAmountCurrency As String Dim taxTaxAmountAmount As String Dim status As String Dim statusQuantityUnitOfMeasurement As String Dim statusQuantityAmount As String Dim cancellationReason As String Dim trackingInfo As String Dim returnCenterAddress As String Dim listMetaTotalCount As Long listMetaTotalCount = jsonResponse.IntOf("list.meta.totalCount") Dim listMetaLimit As Long listMetaLimit = jsonResponse.IntOf("list.meta.limit") Dim listMetaNextCursor As String listMetaNextCursor = jsonResponse.StringOf("list.meta.nextCursor") Dim i As Long i = 0 Dim count_i As Long count_i = jsonResponse.SizeOfArray("list.elements.order") Do While i < count_i jsonResponse.I = i purchaseOrderId = jsonResponse.StringOf("list.elements.order[i].purchaseOrderId") customerOrderId = jsonResponse.StringOf("list.elements.order[i].customerOrderId") customerEmailId = jsonResponse.StringOf("list.elements.order[i].customerEmailId") orderDate = jsonResponse.IntOf("list.elements.order[i].orderDate") shippingInfoPhone = jsonResponse.StringOf("list.elements.order[i].shippingInfo.phone") shippingInfoEstimatedDeliveryDate = jsonResponse.IntOf("list.elements.order[i].shippingInfo.estimatedDeliveryDate") shippingInfoEstimatedShipDate = jsonResponse.IntOf("list.elements.order[i].shippingInfo.estimatedShipDate") shippingInfoMethodCode = jsonResponse.StringOf("list.elements.order[i].shippingInfo.methodCode") shippingInfoPostalAddressName = jsonResponse.StringOf("list.elements.order[i].shippingInfo.postalAddress.name") shippingInfoPostalAddressAddress1 = jsonResponse.StringOf("list.elements.order[i].shippingInfo.postalAddress.address1") shippingInfoPostalAddressAddress2 = jsonResponse.StringOf("list.elements.order[i].shippingInfo.postalAddress.address2") shippingInfoPostalAddressCity = jsonResponse.StringOf("list.elements.order[i].shippingInfo.postalAddress.city") shippingInfoPostalAddressState = jsonResponse.StringOf("list.elements.order[i].shippingInfo.postalAddress.state") shippingInfoPostalAddressPostalCode = jsonResponse.StringOf("list.elements.order[i].shippingInfo.postalAddress.postalCode") shippingInfoPostalAddressCountry = jsonResponse.StringOf("list.elements.order[i].shippingInfo.postalAddress.country") shippingInfoPostalAddressAddressType = jsonResponse.StringOf("list.elements.order[i].shippingInfo.postalAddress.addressType") shipNodeType = jsonResponse.StringOf("list.elements.order[i].shipNode.type") j = 0 count_j = jsonResponse.SizeOfArray("list.elements.order[i].orderLines.orderLine") Do While j < count_j jsonResponse.J = j lineNumber = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].lineNumber") itemProductName = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].item.productName") itemSku = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].item.sku") orderLineQuantityUnitOfMeasurement = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].orderLineQuantity.unitOfMeasurement") orderLineQuantityAmount = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].orderLineQuantity.amount") statusDate = jsonResponse.IntOf("list.elements.order[i].orderLines.orderLine[j].statusDate") refund = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].refund") fulfillmentFulfillmentOption = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].fulfillment.fulfillmentOption") fulfillmentShipMethod = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].fulfillment.shipMethod") fulfillmentStoreId = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].fulfillment.storeId") fulfillmentPickUpDateTime = jsonResponse.IntOf("list.elements.order[i].orderLines.orderLine[j].fulfillment.pickUpDateTime") fulfillmentPickUpBy = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].fulfillment.pickUpBy") fulfillmentShippingProgramType = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].fulfillment.shippingProgramType") k = 0 count_k = jsonResponse.SizeOfArray("list.elements.order[i].orderLines.orderLine[j].charges.charge") Do While k < count_k jsonResponse.K = k chargeType = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].charges.charge[k].chargeType") chargeName = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].charges.charge[k].chargeName") chargeAmountCurrency = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].charges.charge[k].chargeAmount.currency") chargeAmountAmount = jsonResponse.IntOf("list.elements.order[i].orderLines.orderLine[j].charges.charge[k].chargeAmount.amount") taxTaxName = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].charges.charge[k].tax.taxName") taxTaxAmountCurrency = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].charges.charge[k].tax.taxAmount.currency") taxTaxAmountAmount = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].charges.charge[k].tax.taxAmount.amount") k = k + 1 Loop k = 0 count_k = jsonResponse.SizeOfArray("list.elements.order[i].orderLines.orderLine[j].orderLineStatuses.orderLineStatus") Do While k < count_k jsonResponse.K = k status = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].orderLineStatuses.orderLineStatus[k].status") statusQuantityUnitOfMeasurement = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].orderLineStatuses.orderLineStatus[k].statusQuantity.unitOfMeasurement") statusQuantityAmount = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].orderLineStatuses.orderLineStatus[k].statusQuantity.amount") cancellationReason = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].orderLineStatuses.orderLineStatus[k].cancellationReason") trackingInfo = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].orderLineStatuses.orderLineStatus[k].trackingInfo") returnCenterAddress = jsonResponse.StringOf("list.elements.order[i].orderLines.orderLine[j].orderLineStatuses.orderLineStatus[k].returnCenterAddress") k = k + 1 Loop j = j + 1 Loop i = i + 1 Loop |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.