Sample code for 30+ languages & platforms
Go

Etsy: Get the Inventory for a Listing

See more Etsy Examples

Gets the inventory for a listing.

Chilkat Go Downloads

Go
    success := false

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

    http := chilkat.NewHttp()

    // Implements the following CURL command:

    // curl -X GET \
    //   https://openapi.etsy.com/v2/listings/listing_id/inventory?api_key=MY_ETSY_KEYSTRING

    sbResponseBody := chilkat.NewStringBuilder()
    success = http.QuickGetSb("https://openapi.etsy.com/v2/listings/listing_id/inventory?api_key=MY_ETSY_KEYSTRING",sbResponseBody)
    if success == false {
        fmt.Println(http.LastErrorText())
        http.DisposeHttp()
        sbResponseBody.DisposeStringBuilder()
        return
    }

    jResp := chilkat.NewJsonObject()
    jResp.LoadSb(sbResponseBody)
    jResp.SetEmitCompact(false)

    fmt.Println("Response Body:")
    fmt.Println(*jResp.Emit())

    respStatusCode := http.LastStatus()
    fmt.Println("Response Status Code = ", respStatusCode)
    if respStatusCode >= 400 {
        fmt.Println("Response Header:")
        fmt.Println(http.LastHeader())
        fmt.Println("Failed.")
        http.DisposeHttp()
        sbResponseBody.DisposeStringBuilder()
        jResp.DisposeJsonObject()
        return
    }

    // 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

    var product_id int
    var j int
    var count_j int
    var offering_id int
    var priceAmount int
    var priceDivisor int
    var priceCurrency_code *string = new(string)
    var priceCurrency_formatted_short *string = new(string)
    var priceCurrency_formatted_long *string = new(string)
    var priceCurrency_formatted_raw *string = new(string)
    var quantity int

    count := jResp.IntOf("count")
    paramsListing_id := jResp.StringOf("params.listing_id")
    paramsWrite_missing_inventory := jResp.BoolOf("params.write_missing_inventory")
    v_type := jResp.StringOf("type")
    i := 0
    count_i := jResp.SizeOfArray("results.products")
    for i < count_i {
        jResp.SetI(i)
        product_id = jResp.IntOf("results.products[i].product_id")
        j = 0
        count_j = jResp.SizeOfArray("results.products[i].property_values")
        for j < count_j {
            jResp.SetJ(j)
            j = j + 1
        }

        j = 0
        count_j = jResp.SizeOfArray("results.products[i].offerings")
        for j < count_j {
            jResp.SetJ(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
        }

        i = i + 1
    }


    http.DisposeHttp()
    sbResponseBody.DisposeStringBuilder()
    jResp.DisposeJsonObject()