Swift
Swift
Shopify Retrieve the item's inventory levels
See more Shopify Examples
After you have the inventory item ID, you can use it with the InventoryLevel resource to find the levels and locations for the inventory item:Chilkat Swift Downloads
func chilkatTest() {
var success: Bool = false
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let http = CkoHttp()!
http.login = "SHOPIFY_PRIVATE_API_KEY"
http.password = "SHOPIFY_PRIVATE_API_KEY"
http.accept = "application/json"
// How to get the inventory item ID
let resp = CkoHttpResponse()!
success = http.httpNoBody(verb: "GET", url: "https://{shop}.myshopify.com/admin/api/2020-04/inventory_levels.json?inventory_item_ids={inventory_item_id}", response: resp)
if success == false {
print("\(http.lastErrorText!)")
return
}
print("Response Status Code: \(resp.statusCode.intValue)")
let jsonResponse = CkoJsonObject()!
jsonResponse.load(json: resp.bodyStr)
jsonResponse.emitCompact = false
print("\(jsonResponse.emit()!)")
if resp.statusCode.intValue != 200 {
print("Failed.")
return
}
// Sample output...
// (See the parsing code below..)
//
// Use the this online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
// {
// "inventory_levels": [
// {
// "inventory_item_id": 12250274365496,
// "location_id": 6884556842,
// "available": 8,
// "updated_at": "2018-06-18T11:49:50-04:00",
// "admin_graphql_api_id": "gid://shopify/InventoryLevel/6485147690?inventory_item_id=12250274365496"
// },
// {
// "inventory_item_id": 12250274365496,
// "location_id": 13968834616,
// "available": 50,
// "updated_at": "2018-06-26T14:44:30-04:00",
// "admin_graphql_api_id": "gid://shopify/InventoryLevel/13570506808?inventory_item_id=12250274365496"
// },
// {
// "inventory_item_id": 12250274365496,
// "location_id": 13968867384,
// "available": 100,
// "updated_at": "2018-06-26T14:44:30-04:00",
// "admin_graphql_api_id": "gid://shopify/InventoryLevel/13570539576?inventory_item_id=12250274365496"
// }
// ]
// }
//
var inventory_item_id: Int
var location_id: Int
var available: Int
var updated_at: String?
var admin_graphql_api_id: String?
var i: Int = 0
var count_i: Int = jsonResponse.size(ofArray: "inventory_levels").intValue
while i < count_i {
jsonResponse.i = i
inventory_item_id = jsonResponse.int(of: "inventory_levels[i].inventory_item_id").intValue
location_id = jsonResponse.int(of: "inventory_levels[i].location_id").intValue
available = jsonResponse.int(of: "inventory_levels[i].available").intValue
updated_at = jsonResponse.string(of: "inventory_levels[i].updated_at")
admin_graphql_api_id = jsonResponse.string(of: "inventory_levels[i].admin_graphql_api_id")
i = i + 1
}
}