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
(Xojo Plugin) Amazon SP-API Get OrdersSee more Amazon SP-API ExamplesDemonstrates Amazon SP-API Sellers API -- get orders. Returns orders created or updated during the time frame indicated by the specified parameters. For more information, see https://developer-docs.amazon.com/sp-api/docs/orders-api-v0-reference#getorders
// This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // IMPORTANT: // You'll need to make changes to use values specific to your own region and account. // // Here is a list of values you'll need to change or provide: // // 1) The access key. Change AWS_ACCESS_KEY to your actual access key. // 2) The secret key. Change AWS_SECRET_KEY to your actual access key. // 3) Your region. Change "ew-west-1" to your region. // 4) The domain to which you connect. Change sandbox.sellingpartnerapi-eu.amazon.com to non-sandbox by removing the "sandbox." // and change the "-eu" part of the domain to your region. See https://developer-docs.amazon.com/sp-api/docs/sp-api-endpoints // 5) Use the restricted data token (RDT) obtained from your code that previously obtained the RDT. // If you saved the RDT to a file, update the relative file path "qa_data/tokens/sp_api_rdt_token.json" to your actual file path. // 6) Update your Marketplace ID(s), such as ATVPDKIKX0DER // 7) If using the non-sandbox, change the CreatedAfter from "TEST_CASE_200" to an actual date, such as "2022-12-25" Dim authAws As New Chilkat.AuthAws authAws.AccessKey = "AWS_ACCESS_KEY" authAws.SecretKey = "AWS_SECRET_KEY" authAws.ServiceName = "execute-api" // Use the region that is correct for your needs. authAws.Region = "eu-west-1" Dim rest As New Chilkat.Rest Dim bTls As Boolean bTls = True Dim port As Int32 port = 443 Dim bAutoReconnect As Boolean bAutoReconnect = True // Make sure to use the correct domain. // This example is using the sandbox Dim success As Boolean success = rest.Connect("sandbox.sellingpartnerapi-eu.amazon.com",port,bTls,bAutoReconnect) If (success = False) Then System.DebugLog(rest.LastErrorText) Return End If success = rest.SetAuthAws(authAws) // Here's the example to get the RDT access token: Get SP-API Restricted Data Token // Load the previously obtained RDT access token. // See Fetch SP-API RDT Access Token Dim jsonToken As New Chilkat.JsonObject success = jsonToken.LoadFile("qa_data/tokens/sp_api_rdt_token.json") If (success = False) Then System.DebugLog("Failed to load RDT access token.") Return End If // Add the x-amz-access-token request header. Dim rdt_token As String rdt_token = jsonToken.StringOf("restrictedDataToken") success = rest.ClearAllHeaders() success = rest.AddHeader("x-amz-access-token",rdt_token) // Indicate the marketplace IDs. Use the marketplace ID for your needs. See https://developer-docs.amazon.com/sp-api/docs/marketplace-ids success = rest.ClearAllQueryParams() // When using the sandbox, use these params literally and exactly has shown here: success = rest.AddQueryParam("MarketplaceIds","ATVPDKIKX0DER") success = rest.AddQueryParam("CreatedAfter","TEST_CASE_200") Dim sbResponse As New Chilkat.StringBuilder Dim uri As String uri = "/orders/v0/orders" success = rest.FullRequestNoBodySb("GET",uri,sbResponse) If (success = False) Then System.DebugLog(rest.LastErrorText) Return End If // Examine the response status. Dim statusCode As Int32 statusCode = rest.ResponseStatusCode If (statusCode <> 200) Then System.DebugLog("Response status text: " + rest.ResponseStatusText) System.DebugLog("Response body: ") System.DebugLog(sbResponse.GetAsString()) System.DebugLog("Failed.") Return End If System.DebugLog(sbResponse.GetAsString()) // If successful, gets a JSON response such as the following: // { // "payload": { // "CreatedBefore": "1.569521782042E9", // "Orders": [ // { // "AmazonOrderId": "902-1845936-5435065", // "PurchaseDate": "1970-01-19T03:58:30Z", // "LastUpdateDate": "1970-01-19T03:58:32Z", // "OrderStatus": "Unshipped", // "FulfillmentChannel": "MFN", // "SalesChannel": "Amazon.com", // "ShipServiceLevel": "Std US D2D Dom", // "OrderTotal": { // "CurrencyCode": "USD", // "Amount": "11.01" // }, // "NumberOfItemsShipped": 0, // "NumberOfItemsUnshipped": 1, // "PaymentMethod": "Other", // "PaymentMethodDetails": [ // "Standard" // ], // "IsReplacementOrder": false, // "MarketplaceId": "ATVPDKIKX0DER", // "ShipmentServiceLevelCategory": "Standard", // "OrderType": "StandardOrder", // "EarliestShipDate": "1970-01-19T03:59:27Z", // "LatestShipDate": "1970-01-19T04:05:13Z", // "EarliestDeliveryDate": "1970-01-19T04:06:39Z", // "LatestDeliveryDate": "1970-01-19T04:15:17Z", // "IsBusinessOrder": false, // "IsPrime": false, // "IsGlobalExpressEnabled": false, // "IsPremiumOrder": false, // "IsSoldByAB": false, // "IsIBA": false, // "DefaultShipFromLocationAddress": { // "Name": "MFNIntegrationTestMerchant", // "AddressLine1": "2201 WESTLAKE AVE", // "City": "SEATTLE", // "StateOrRegion": "WA", // "PostalCode": "98121-2778", // "CountryCode": "US", // "Phone": "+1 480-386-0930 ext. 73824", // "AddressType": "Commercial" // }, // "FulfillmentInstruction": { // "FulfillmentSupplySourceId": "sampleSupplySourceId" // }, // "IsISPU": false, // "IsAccessPointOrder": false, // "AutomatedShippingSettings": { // "HasAutomatedShippingSettings": false // }, // "EasyShipShipmentStatus": "PendingPickUp", // "ElectronicInvoiceStatus": "NotRequired" // }, // { // "AmazonOrderId": "902-8745147-1934268", // "PurchaseDate": "1970-01-19T03:58:30Z", // "LastUpdateDate": "1970-01-19T03:58:32Z", // "OrderStatus": "Unshipped", // "FulfillmentChannel": "MFN", // "SalesChannel": "Amazon.com", // "ShipServiceLevel": "Std US D2D Dom", // "OrderTotal": { // "CurrencyCode": "USD", // "Amount": "11.01" // }, // "NumberOfItemsShipped": 0, // "NumberOfItemsUnshipped": 1, // "PaymentMethod": "Other", // "PaymentMethodDetails": [ // "Standard" // ], // "IsReplacementOrder": false, // "MarketplaceId": "ATVPDKIKX0DER", // "ShipmentServiceLevelCategory": "Standard", // "OrderType": "StandardOrder", // "EarliestShipDate": "1970-01-19T03:59:27Z", // "LatestShipDate": "1970-01-19T04:05:13Z", // "EarliestDeliveryDate": "1970-01-19T04:06:39Z", // "LatestDeliveryDate": "1970-01-19T04:15:17Z", // "IsBusinessOrder": false, // "IsPrime": false, // "IsAccessPointOrder": false, // "IsGlobalExpressEnabled": false, // "IsPremiumOrder": false, // "IsSoldByAB": false, // "IsIBA": false, // "EasyShipShipmentStatus": "PendingPickUp", // "ElectronicInvoiceStatus": "NotRequired" // } // ] // } // } // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON Dim json As New Chilkat.JsonObject success = json.LoadSb(sbResponse) Dim AmazonOrderId As String Dim PurchaseDate As String Dim LastUpdateDate As String Dim OrderStatus As String Dim FulfillmentChannel As String Dim SalesChannel As String Dim ShipServiceLevel As String Dim CurrencyCode As String Dim Amount As String Dim NumberOfItemsShipped As Int32 Dim NumberOfItemsUnshipped As Int32 Dim PaymentMethod As String Dim IsReplacementOrder As Boolean Dim MarketplaceId As String Dim ShipmentServiceLevelCategory As String Dim OrderType As String Dim EarliestShipDate As String Dim LatestShipDate As String Dim EarliestDeliveryDate As String Dim LatestDeliveryDate As String Dim IsBusinessOrder As Boolean Dim IsPrime As Boolean Dim IsGlobalExpressEnabled As Boolean Dim IsPremiumOrder As Boolean Dim IsSoldByAB As Boolean Dim IsIBA As Boolean Dim Name As String Dim AddressLine1 As String Dim City As String Dim StateOrRegion As String Dim PostalCode As String Dim CountryCode As String Dim Phone As String Dim AddressType As String Dim FulfillmentSupplySourceId As String Dim IsISPU As Boolean Dim IsAccessPointOrder As Boolean Dim HasAutomatedShippingSettings As Boolean Dim EasyShipShipmentStatus As String Dim ElectronicInvoiceStatus As String Dim j As Int32 Dim count_j As Int32 Dim strVal As String Dim CreatedBefore As String CreatedBefore = json.StringOf("payload.CreatedBefore") Dim i As Int32 i = 0 Dim count_i As Int32 count_i = json.SizeOfArray("payload.Orders") While i < count_i json.I = i AmazonOrderId = json.StringOf("payload.Orders[i].AmazonOrderId") PurchaseDate = json.StringOf("payload.Orders[i].PurchaseDate") LastUpdateDate = json.StringOf("payload.Orders[i].LastUpdateDate") OrderStatus = json.StringOf("payload.Orders[i].OrderStatus") FulfillmentChannel = json.StringOf("payload.Orders[i].FulfillmentChannel") SalesChannel = json.StringOf("payload.Orders[i].SalesChannel") ShipServiceLevel = json.StringOf("payload.Orders[i].ShipServiceLevel") CurrencyCode = json.StringOf("payload.Orders[i].OrderTotal.CurrencyCode") Amount = json.StringOf("payload.Orders[i].OrderTotal.Amount") NumberOfItemsShipped = json.IntOf("payload.Orders[i].NumberOfItemsShipped") NumberOfItemsUnshipped = json.IntOf("payload.Orders[i].NumberOfItemsUnshipped") PaymentMethod = json.StringOf("payload.Orders[i].PaymentMethod") IsReplacementOrder = json.BoolOf("payload.Orders[i].IsReplacementOrder") MarketplaceId = json.StringOf("payload.Orders[i].MarketplaceId") ShipmentServiceLevelCategory = json.StringOf("payload.Orders[i].ShipmentServiceLevelCategory") OrderType = json.StringOf("payload.Orders[i].OrderType") EarliestShipDate = json.StringOf("payload.Orders[i].EarliestShipDate") LatestShipDate = json.StringOf("payload.Orders[i].LatestShipDate") EarliestDeliveryDate = json.StringOf("payload.Orders[i].EarliestDeliveryDate") LatestDeliveryDate = json.StringOf("payload.Orders[i].LatestDeliveryDate") IsBusinessOrder = json.BoolOf("payload.Orders[i].IsBusinessOrder") IsPrime = json.BoolOf("payload.Orders[i].IsPrime") IsGlobalExpressEnabled = json.BoolOf("payload.Orders[i].IsGlobalExpressEnabled") IsPremiumOrder = json.BoolOf("payload.Orders[i].IsPremiumOrder") IsSoldByAB = json.BoolOf("payload.Orders[i].IsSoldByAB") IsIBA = json.BoolOf("payload.Orders[i].IsIBA") Name = json.StringOf("payload.Orders[i].DefaultShipFromLocationAddress.Name") AddressLine1 = json.StringOf("payload.Orders[i].DefaultShipFromLocationAddress.AddressLine1") City = json.StringOf("payload.Orders[i].DefaultShipFromLocationAddress.City") StateOrRegion = json.StringOf("payload.Orders[i].DefaultShipFromLocationAddress.StateOrRegion") PostalCode = json.StringOf("payload.Orders[i].DefaultShipFromLocationAddress.PostalCode") CountryCode = json.StringOf("payload.Orders[i].DefaultShipFromLocationAddress.CountryCode") Phone = json.StringOf("payload.Orders[i].DefaultShipFromLocationAddress.Phone") AddressType = json.StringOf("payload.Orders[i].DefaultShipFromLocationAddress.AddressType") FulfillmentSupplySourceId = json.StringOf("payload.Orders[i].FulfillmentInstruction.FulfillmentSupplySourceId") IsISPU = json.BoolOf("payload.Orders[i].IsISPU") IsAccessPointOrder = json.BoolOf("payload.Orders[i].IsAccessPointOrder") HasAutomatedShippingSettings = json.BoolOf("payload.Orders[i].AutomatedShippingSettings.HasAutomatedShippingSettings") EasyShipShipmentStatus = json.StringOf("payload.Orders[i].EasyShipShipmentStatus") ElectronicInvoiceStatus = json.StringOf("payload.Orders[i].ElectronicInvoiceStatus") j = 0 count_j = json.SizeOfArray("payload.Orders[i].PaymentMethodDetails") While j < count_j json.J = j strVal = json.StringOf("payload.Orders[i].PaymentMethodDetails[j]") j = j + 1 Wend i = i + 1 Wend System.DebugLog("Success!") |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.