Xojo Plugin
Xojo Plugin
Etsy: Get the Inventory for a Listing
See more Etsy Examples
Gets the inventory for a listing.Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Dim http As New Chilkat.Http
// Implements the following CURL command:
// curl -X GET \
// https://openapi.etsy.com/v2/listings/listing_id/inventory?api_key=MY_ETSY_KEYSTRING
Dim sbResponseBody As New Chilkat.StringBuilder
success = http.QuickGetSb("https://openapi.etsy.com/v2/listings/listing_id/inventory?api_key=MY_ETSY_KEYSTRING",sbResponseBody)
If (success = False) Then
System.DebugLog(http.LastErrorText)
Return
End If
Dim jResp As New Chilkat.JsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False
System.DebugLog("Response Body:")
System.DebugLog(jResp.Emit())
Dim respStatusCode As Int32
respStatusCode = http.LastStatus
System.DebugLog("Response Status Code = " + Str(respStatusCode))
If (respStatusCode >= 400) Then
System.DebugLog("Response Header:")
System.DebugLog(http.LastHeader)
System.DebugLog("Failed.")
Return
End If
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// {
// "count": 1,
// "results": {
// "products": [
// {
// "product_id": 3361120103,
// "property_values": [
// ],
// "offerings": [
// {
// "offering_id": 3579642570,
// "price": {
// "amount": 16000,
// "divisor": 100,
// "currency_code": "USD",
// "currency_formatted_short": "$160.00",
// "currency_formatted_long": "$160.00 USD",
// "currency_formatted_raw": "160.00"
// },
// "quantity": 1
// }
// ]
// }
// ]
// },
// "params": {
// "listing_id": "720138253",
// "write_missing_inventory": false
// },
// "type": "ListingInventory",
// "pagination": {}
// }
// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
Dim product_id As Int32
Dim j As Int32
Dim count_j As Int32
Dim offering_id As Int32
Dim priceAmount As Int32
Dim priceDivisor As Int32
Dim priceCurrency_code As String
Dim priceCurrency_formatted_short As String
Dim priceCurrency_formatted_long As String
Dim priceCurrency_formatted_raw As String
Dim quantity As Int32
Dim count As Int32
count = jResp.IntOf("count")
Dim paramsListing_id As String
paramsListing_id = jResp.StringOf("params.listing_id")
Dim paramsWrite_missing_inventory As Boolean
paramsWrite_missing_inventory = jResp.BoolOf("params.write_missing_inventory")
Dim v_type As String
v_type = jResp.StringOf("type")
Dim i As Int32
i = 0
Dim count_i As Int32
count_i = jResp.SizeOfArray("results.products")
While i < count_i
jResp.I = i
product_id = jResp.IntOf("results.products[i].product_id")
j = 0
count_j = jResp.SizeOfArray("results.products[i].property_values")
While j < count_j
jResp.J = j
j = j + 1
Wend
j = 0
count_j = jResp.SizeOfArray("results.products[i].offerings")
While j < count_j
jResp.J = j
offering_id = jResp.IntOf("results.products[i].offerings[j].offering_id")
priceAmount = jResp.IntOf("results.products[i].offerings[j].price.amount")
priceDivisor = jResp.IntOf("results.products[i].offerings[j].price.divisor")
priceCurrency_code = jResp.StringOf("results.products[i].offerings[j].price.currency_code")
priceCurrency_formatted_short = jResp.StringOf("results.products[i].offerings[j].price.currency_formatted_short")
priceCurrency_formatted_long = jResp.StringOf("results.products[i].offerings[j].price.currency_formatted_long")
priceCurrency_formatted_raw = jResp.StringOf("results.products[i].offerings[j].price.currency_formatted_raw")
quantity = jResp.IntOf("results.products[i].offerings[j].quantity")
j = j + 1
Wend
i = i + 1
Wend