Objective-C
Objective-C
Etsy: Get the Inventory for a Listing
See more Etsy Examples
Gets the inventory for a listing.Chilkat Objective-C Downloads
#import <CkoHttp.h>
#import <CkoStringBuilder.h>
#import <CkoJsonObject.h>
#import <NSString.h>
BOOL success = NO;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoHttp *http = [[CkoHttp alloc] init];
// Implements the following CURL command:
// curl -X GET \
// https://openapi.etsy.com/v2/listings/listing_id/inventory?api_key=MY_ETSY_KEYSTRING
CkoStringBuilder *sbResponseBody = [[CkoStringBuilder alloc] init];
success = [http QuickGetSb: @"https://openapi.etsy.com/v2/listings/listing_id/inventory?api_key=MY_ETSY_KEYSTRING" sbContent: sbResponseBody];
if (success == NO) {
NSLog(@"%@",http.LastErrorText);
return;
}
CkoJsonObject *jResp = [[CkoJsonObject alloc] init];
[jResp LoadSb: sbResponseBody];
jResp.EmitCompact = NO;
NSLog(@"%@",@"Response Body:");
NSLog(@"%@",[jResp Emit]);
int respStatusCode = [http.LastStatus intValue];
NSLog(@"%@%d",@"Response Status Code = ",respStatusCode);
if (respStatusCode >= 400) {
NSLog(@"%@",@"Response Header:");
NSLog(@"%@",http.LastHeader);
NSLog(@"%@",@"Failed.");
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
int product_id;
int j;
int count_j;
int offering_id;
int priceAmount;
int priceDivisor;
NSString *priceCurrency_code = 0;
NSString *priceCurrency_formatted_short = 0;
NSString *priceCurrency_formatted_long = 0;
NSString *priceCurrency_formatted_raw = 0;
int quantity;
int count = [[jResp IntOf: @"count"] intValue];
NSString *paramsListing_id = [jResp StringOf: @"params.listing_id"];
BOOL paramsWrite_missing_inventory = [jResp BoolOf: @"params.write_missing_inventory"];
NSString *v_type = [jResp StringOf: @"type"];
int i = 0;
int count_i = [[jResp SizeOfArray: @"results.products"] intValue];
while (i < count_i) {
jResp.I = [NSNumber numberWithInt: i];
product_id = [[jResp IntOf: @"results.products[i].product_id"] intValue];
j = 0;
count_j = [[jResp SizeOfArray: @"results.products[i].property_values"] intValue];
while (j < count_j) {
jResp.J = [NSNumber numberWithInt: j];
j = j + 1;
}
j = 0;
count_j = [[jResp SizeOfArray: @"results.products[i].offerings"] intValue];
while (j < count_j) {
jResp.J = [NSNumber numberWithInt: j];
offering_id = [[jResp IntOf: @"results.products[i].offerings[j].offering_id"] intValue];
priceAmount = [[jResp IntOf: @"results.products[i].offerings[j].price.amount"] intValue];
priceDivisor = [[jResp IntOf: @"results.products[i].offerings[j].price.divisor"] intValue];
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"] intValue];
j = j + 1;
}
i = i + 1;
}