Sample code for 30+ languages & platforms
Ruby Requires Chilkat v11.0.0+

Shopify Query a variant for its inventory item ID

See more Shopify Examples

Query a product variant to find the ID of its inventory item.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

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

http = Chilkat::CkHttp.new()

http.put_Login("SHOPIFY_PRIVATE_API_KEY")
http.put_Password("SHOPIFY_PRIVATE_API_KEY")

http.put_Accept("application/json")

resp = Chilkat::CkHttpResponse.new()
success = http.HttpNoBody("GET","https://{shop}.myshopify.com/admin/api/2020-04/products/{product_id}/variants/{variant_id}.json",resp)
if (success == false)
    print http.lastErrorText() + "\n";
    exit
end

print "Response Status Code: " + resp.get_StatusCode().to_s() + "\n";

jsonResponse = Chilkat::CkJsonObject.new()
jsonResponse.Load(resp.bodyStr())
jsonResponse.put_EmitCompact(false)
print jsonResponse.emit() + "\n";

if (resp.get_StatusCode() != 200)
    print "Failed." + "\n";
    exit
end

#  Sample output...
#  (See the parsing code below..)
#  
#  Use the this online tool to generate parsing code from sample JSON: 
#  Generate Parsing Code from JSON

#  {
#    "id": 12195009364024,
#    "product_id": 1321541042232,
#    "title": "xs",
#  ...
#    "inventory_item_id": 12250274365496,
#  ...
#    "admin_graphql_api_id": "gid://shopify/ProductVariant/12195009364024"
#  }
#  

id = jsonResponse.IntOf("id")
product_id = jsonResponse.IntOf("product_id")
title = jsonResponse.stringOf("title")
inventory_item_id = jsonResponse.IntOf("inventory_item_id")
admin_graphql_api_id = jsonResponse.stringOf("admin_graphql_api_id")