Sample code for 30+ languages & platforms
Perl

Faire - Get All Products

See more Faire Examples

Retrieves a list of products, ordered ascending by updated_at. By default, it only returns non-deleted products.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

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

$http = chilkat::CkHttp->new();

# Implements the following CURL command:

# curl -X GET -H "X-FAIRE-ACCESS-TOKEN: <access_token>" -d "limit=50" -d "page=1" https://www.faire.com/api/v1/products

# Use the following online tool to generate HTTP code from a CURL command
# Convert a cURL Command to HTTP Source Code

$queryParams = chilkat::CkJsonObject->new();
$queryParams->UpdateInt("limit",50);
$queryParams->UpdateInt("page",1);

$http->SetRequestHeader("X-FAIRE-ACCESS-TOKEN","<access_token>");

$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpParams("GET","https://www.faire.com/api/v1/products",$queryParams,$resp);
if ($success == 0) {
    print $http->lastErrorText() . "\r\n";
    exit;
}

$sbResponseBody = chilkat::CkStringBuilder->new();
$resp->GetBodySb($sbResponseBody);

$jResp = chilkat::CkJsonObject->new();
$jResp->LoadSb($sbResponseBody);
$jResp->put_EmitCompact(0);

print "Response Body:" . "\r\n";
print $jResp->emit() . "\r\n";

$respStatusCode = $resp->get_StatusCode();
print "Response Status Code = " . $respStatusCode . "\r\n";
if ($respStatusCode >= 400) {
    print "Response Header:" . "\r\n";
    print $resp->header() . "\r\n";
    print "Failed." . "\r\n";
    exit;
}

# Sample JSON response:
# (Sample code for parsing the JSON response is shown below)

# {
#   "page": 1,
#   "limit": 50,
#   "products": [
#     {
#       "id": "p_123",
#       "brand_id": "b_abc",
#       "short_description": "Our candles smell fantastic. Want to know how good? Read our description!",
#       "description": "Glad you decided to read our description! We have significantly more characters to describe to you just how good our candles smell.",
#       "wholesale_price_cents": 500,
#       "retail_price_cents": 1000,
#       "sale_state": "FOR_SALE",
#       "active": true,
#       "deleted": false,
#       "name": "Faire's fantastic candle",
#       "unit_multiplier": 8,
#       "taxonomy_type": {
#         "id": "tt_23nl3bzl00",
#         "name": "Votive Candle"
#       },
#       "options": [
#       ],
#       "created_at": "20190314T000915.000Z",
#       "updated_at": "20190315T000915.000Z"
#     }
#   ]
# }

# Sample code for parsing the JSON response...
# Use the following online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON

$page = $jResp->IntOf("page");
$limit = $jResp->IntOf("limit");
$i = 0;
$count_i = $jResp->SizeOfArray("products");
while ($i < $count_i) {
    $jResp->put_I($i);
    $id = $jResp->stringOf("products[i].id");
    $brand_id = $jResp->stringOf("products[i].brand_id");
    $short_description = $jResp->stringOf("products[i].short_description");
    $description = $jResp->stringOf("products[i].description");
    $wholesale_price_cents = $jResp->IntOf("products[i].wholesale_price_cents");
    $retail_price_cents = $jResp->IntOf("products[i].retail_price_cents");
    $sale_state = $jResp->stringOf("products[i].sale_state");
    $active = $jResp->BoolOf("products[i].active");
    $deleted = $jResp->BoolOf("products[i].deleted");
    $name = $jResp->stringOf("products[i].name");
    $unit_multiplier = $jResp->IntOf("products[i].unit_multiplier");
    $taxonomy_typeId = $jResp->stringOf("products[i].taxonomy_type.id");
    $taxonomy_typeName = $jResp->stringOf("products[i].taxonomy_type.name");
    $created_at = $jResp->stringOf("products[i].created_at");
    $updated_at = $jResp->stringOf("products[i].updated_at");
    $j = 0;
    $count_j = $jResp->SizeOfArray("products[i].options");
    while ($j < $count_j) {
        $jResp->put_J($j);
        $j = $j + 1;
    }

    $i = $i + 1;
}