Sample code for 30+ languages & platforms
B4X

Etsy: Get the Inventory for a Listing

See more Etsy Examples

Gets the inventory for a listing.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

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

Dim http As ChilkatHttp
http.Initialize("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 ChilkatStringBuilder
sbResponseBody.Initialize
success = http.QuickGetSb("https://openapi.etsy.com/v2/listings/listing_id/inventory?api_key=MY_ETSY_KEYSTRING", sbResponseBody)
If success = False Then
    Log(http.LastErrorText)
    Return
End If


Dim jResp As ChilkatJsonObject
jResp.Initialize
jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False

Log("Response Body:")
Log(jResp.Emit)

Dim respStatusCode As Int = http.LastStatus
Log("Response Status Code = " & respStatusCode)
If respStatusCode >= 400 Then
    Log("Response Header:")
    Log(http.LastHeader)
    Log("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 Int
Dim j As Int
Dim count_j As Int
Dim offering_id As Int
Dim priceAmount As Int
Dim priceDivisor As Int
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 Int

Dim count As Int = jResp.IntOf("count")
Dim paramsListing_id As String = jResp.StringOf("params.listing_id")
Dim paramsWrite_missing_inventory As Boolean = jResp.BoolOf("params.write_missing_inventory")
Dim v_type As String = jResp.StringOf("type")
Dim i As Int = 0
Dim count_i As Int = jResp.SizeOfArray("results.products")
Do 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")
    Do While j < count_j
        jResp.J = j
        j = j + 1
    Loop
    j = 0
    count_j = jResp.SizeOfArray("results.products[i].offerings")
    Do 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
    Loop
    i = i + 1
Loop