Sample code for 30+ languages & platforms
React Native

Shopify Get all products that belong to a certain collection

See more Shopify Examples

Get all products that belong to a certain collection

Chilkat React Native Downloads

React Native
import { JsonObject, Rest, StringBuilder } from '@chilkat/react-native'

async function chilkatExample() {
  const rest = new Rest();

  rest.setAuthBasic('SHOPIFY_PRIVATE_API_KEY', 'SHOPIFY_PRIVATE_API_KEY');

  try {
    await rest.connectAsync('chilkat.myshopify.com', 443, true, true);
  } catch {
    console.log(rest.lastErrorText);
    return;
  }

  const sbJson = new StringBuilder();
  try {
    await rest.fullRequestNoBodySbAsync('GET', '/admin/products.json?collection_id=841564295', sbJson);
  } catch {
    console.log(rest.lastErrorText);
    return;
  }

  if (rest.responseStatusCode !== 200) {
    console.log(`Received error response code: ${rest.responseStatusCode}`);
    console.log('Response body:');
    console.log(sbJson.getAsString());
    return;
  }

  const json = new JsonObject();
  json.loadSb(sbJson);

  // The following code parses the JSON response.
  // A sample JSON response is shown below the sample code.
  let i = 0;
  let id = 0;
  let title = '';
  let bodyHtml = '';
  let vendor = '';
  let productType = '';
  let createdAt = '';
  let handle = '';
  let updatedAt = '';
  let publishedAt = '';
  let publishedScope = '';
  let tags = '';
  let imageId = 0;
  let imageProductId = 0;
  let imagePosition = 0;
  let imageCreatedAt = '';
  let imageUpdatedAt = '';
  let imageWidth = 0;
  let imageHeight = 0;
  let imageSrc = '';
  let j = 0;
  let countJ = 0;
  let productId = 0;
  let price = '';
  let sku = '';
  let position = 0;
  let grams = 0;
  let inventoryPolicy = '';
  let fulfillmentService = '';
  let inventoryManagement = '';
  let option1 = '';
  let barcode = '';

  let inventoryQuantity = 0;
  let weight = 0;
  let weightUnit = '';
  let oldInventoryQuantity = 0;
  let name = '';
  let k = 0;
  let countK = 0;
  let strVal = '';
  let width = 0;
  let height = 0;
  let src = '';
  let intVal = 0;

  i = 0;
  const countI = json.sizeOfArray('products');
  while (i < countI) {
    json.i = i;
    id = json.intOf('products[i].id');
    title = json.stringOf('products[i].title');
    bodyHtml = json.stringOf('products[i].body_html');
    vendor = json.stringOf('products[i].vendor');
    productType = json.stringOf('products[i].product_type');
    createdAt = json.stringOf('products[i].created_at');
    handle = json.stringOf('products[i].handle');
    updatedAt = json.stringOf('products[i].updated_at');
    publishedAt = json.stringOf('products[i].published_at');
    json.isNullOf('products[i].template_suffix');
    publishedScope = json.stringOf('products[i].published_scope');
    tags = json.stringOf('products[i].tags');
    imageId = json.intOf('products[i].image.id');
    imageProductId = json.intOf('products[i].image.product_id');
    imagePosition = json.intOf('products[i].image.position');
    imageCreatedAt = json.stringOf('products[i].image.created_at');
    imageUpdatedAt = json.stringOf('products[i].image.updated_at');
    imageWidth = json.intOf('products[i].image.width');
    imageHeight = json.intOf('products[i].image.height');
    imageSrc = json.stringOf('products[i].image.src');
    j = 0;
    countJ = json.sizeOfArray('products[i].variants');
    while (j < countJ) {
      json.j = j;
      id = json.intOf('products[i].variants[j].id');
      productId = json.intOf('products[i].variants[j].product_id');
      title = json.stringOf('products[i].variants[j].title');
      price = json.stringOf('products[i].variants[j].price');
      sku = json.stringOf('products[i].variants[j].sku');
      position = json.intOf('products[i].variants[j].position');
      grams = json.intOf('products[i].variants[j].grams');
      inventoryPolicy = json.stringOf('products[i].variants[j].inventory_policy');
      json.isNullOf('products[i].variants[j].compare_at_price');
      fulfillmentService = json.stringOf('products[i].variants[j].fulfillment_service');
      inventoryManagement = json.stringOf('products[i].variants[j].inventory_management');
      option1 = json.stringOf('products[i].variants[j].option1');
      json.isNullOf('products[i].variants[j].option2');
      json.isNullOf('products[i].variants[j].option3');
      createdAt = json.stringOf('products[i].variants[j].created_at');
      updatedAt = json.stringOf('products[i].variants[j].updated_at');
      json.boolOf('products[i].variants[j].taxable');
      barcode = json.stringOf('products[i].variants[j].barcode');
      imageId = json.intOf('products[i].variants[j].image_id');
      inventoryQuantity = json.intOf('products[i].variants[j].inventory_quantity');
      weight = json.intOf('products[i].variants[j].weight');
      weightUnit = json.stringOf('products[i].variants[j].weight_unit');
      oldInventoryQuantity = json.intOf('products[i].variants[j].old_inventory_quantity');
      json.boolOf('products[i].variants[j].requires_shipping');
      j++;
    }

    j = 0;
    countJ = json.sizeOfArray('products[i].options');
    while (j < countJ) {
      json.j = j;
      id = json.intOf('products[i].options[j].id');
      productId = json.intOf('products[i].options[j].product_id');
      name = json.stringOf('products[i].options[j].name');
      position = json.intOf('products[i].options[j].position');
      k = 0;
      countK = json.sizeOfArray('products[i].options[j].values');
      while (k < countK) {
        json.k = k;
        strVal = json.stringOf('products[i].options[j].values[k]');
        k++;
      }

      j++;
    }

    j = 0;
    countJ = json.sizeOfArray('products[i].images');
    while (j < countJ) {
      json.j = j;
      id = json.intOf('products[i].images[j].id');
      productId = json.intOf('products[i].images[j].product_id');
      position = json.intOf('products[i].images[j].position');
      createdAt = json.stringOf('products[i].images[j].created_at');
      updatedAt = json.stringOf('products[i].images[j].updated_at');
      width = json.intOf('products[i].images[j].width');
      height = json.intOf('products[i].images[j].height');
      src = json.stringOf('products[i].images[j].src');
      k = 0;
      countK = json.sizeOfArray('products[i].images[j].variant_ids');
      while (k < countK) {
        json.k = k;
        intVal = json.intOf('products[i].images[j].variant_ids[k]');
        k++;
      }

      j++;
    }

    j = 0;
    countJ = json.sizeOfArray('products[i].image.variant_ids');
    while (j < countJ) {
      json.j = j;
      j++;
    }

    i++;
  }

  // A sample JSON response body that is parsed by the above code:

  // {
  //   "products": [
  //     {
  //       "id": 632910392,
  //       "title": "IPod Nano - 8GB",
  //       "body_html": "<p>It's the small iPod with one very big idea: Video. Now the world's most popular music player, available in 4GB and 8GB models, lets you enjoy TV shows, movies, video podcasts, and more. The larger, brighter display means amazing picture quality. In six eye-catching colors, iPod nano is stunning all around. And with models starting at just $149, little speaks volumes.<\/p>",
  //       "vendor": "Apple",
  //       "product_type": "Cult Products",
  //       "created_at": "2017-09-22T14:08:02-04:00",
  //       "handle": "ipod-nano",
  //       "updated_at": "2017-09-22T14:08:02-04:00",
  //       "published_at": "2007-12-31T19:00:00-05:00",
  //       "template_suffix": null,
  //       "published_scope": "web",
  //       "tags": "Emotive, Flash Memory, MP3, Music",
  //       "variants": [
  //         {
  //           "id": 808950810,
  //           "product_id": 632910392,
  //           "title": "Pink",
  //           "price": "199.00",
  //           "sku": "IPOD2008PINK",
  //           "position": 1,
  //           "grams": 567,
  //           "inventory_policy": "continue",
  //           "compare_at_price": null,
  //           "fulfillment_service": "manual",
  //           "inventory_management": "shopify",
  //           "option1": "Pink",
  //           "option2": null,
  //           "option3": null,
  //           "created_at": "2017-09-22T14:08:02-04:00",
  //           "updated_at": "2017-09-22T14:08:02-04:00",
  //           "taxable": true,
  //           "barcode": "1234_pink",
  //           "image_id": 562641783,
  //           "inventory_quantity": 10,
  //           "weight": 1.25,
  //           "weight_unit": "lb",
  //           "old_inventory_quantity": 10,
  //           "requires_shipping": true
  //         },
  //         {
  //           "id": 49148385,
  //           "product_id": 632910392,
  //           "title": "Red",
  //           "price": "199.00",
  //           "sku": "IPOD2008RED",
  //           "position": 2,
  //           "grams": 567,
  //           "inventory_policy": "continue",
  //           "compare_at_price": null,
  //           "fulfillment_service": "manual",
  //           "inventory_management": "shopify",
  //           "option1": "Red",
  //           "option2": null,
  //           "option3": null,
  //           "created_at": "2017-09-22T14:08:02-04:00",
  //           "updated_at": "2017-09-22T14:08:02-04:00",
  //           "taxable": true,
  //           "barcode": "1234_red",
  //           "image_id": null,
  //           "inventory_quantity": 20,
  //           "weight": 1.25,
  //           "weight_unit": "lb",
  //           "old_inventory_quantity": 20,
  //           "requires_shipping": true
  //         },
  //         {
  //           "id": 39072856,
  //           "product_id": 632910392,
  //           "title": "Green",
  //           "price": "199.00",
  //           "sku": "IPOD2008GREEN",
  //           "position": 3,
  //           "grams": 567,
  //           "inventory_policy": "continue",
  //           "compare_at_price": null,
  //           "fulfillment_service": "manual",
  //           "inventory_management": "shopify",
  //           "option1": "Green",
  //           "option2": null,
  //           "option3": null,
  //           "created_at": "2017-09-22T14:08:02-04:00",
  //           "updated_at": "2017-09-22T14:08:02-04:00",
  //           "taxable": true,
  //           "barcode": "1234_green",
  //           "image_id": null,
  //           "inventory_quantity": 30,
  //           "weight": 1.25,
  //           "weight_unit": "lb",
  //           "old_inventory_quantity": 30,
  //           "requires_shipping": true
  //         },
  //         {
  //           "id": 457924702,
  //           "product_id": 632910392,
  //           "title": "Black",
  //           "price": "199.00",
  //           "sku": "IPOD2008BLACK",
  //           "position": 4,
  //           "grams": 567,
  //           "inventory_policy": "continue",
  //           "compare_at_price": null,
  //           "fulfillment_service": "manual",
  //           "inventory_management": "shopify",
  //           "option1": "Black",
  //           "option2": null,
  //           "option3": null,
  //           "created_at": "2017-09-22T14:08:02-04:00",
  //           "updated_at": "2017-09-22T14:08:02-04:00",
  //           "taxable": true,
  //           "barcode": "1234_black",
  //           "image_id": null,
  //           "inventory_quantity": 40,
  //           "weight": 1.25,
  //           "weight_unit": "lb",
  //           "old_inventory_quantity": 40,
  //           "requires_shipping": true
  //         }
  //       ],
  //       "options": [
  //         {
  //           "id": 594680422,
  //           "product_id": 632910392,
  //           "name": "Color",
  //           "position": 1,
  //           "values": [
  //             "Pink",
  //             "Red",
  //             "Green",
  //             "Black"
  //           ]
  //         }
  //       ],
  //       "images": [
  //         {
  //           "id": 850703190,
  //           "product_id": 632910392,
  //           "position": 1,
  //           "created_at": "2017-09-22T14:08:02-04:00",
  //           "updated_at": "2017-09-22T14:08:02-04:00",
  //           "width": 123,
  //           "height": 456,
  //           "src": "https:\/\/cdn.shopify.com\/s\/files\/1\/0006\/9093\/3842\/products\/ipod-nano.png?v=1506103682",
  //           "variant_ids": [
  //           ]
  //         },
  //         {
  //           "id": 562641783,
  //           "product_id": 632910392,
  //           "position": 2,
  //           "created_at": "2017-09-22T14:08:02-04:00",
  //           "updated_at": "2017-09-22T14:08:02-04:00",
  //           "width": 123,
  //           "height": 456,
  //           "src": "https:\/\/cdn.shopify.com\/s\/files\/1\/0006\/9093\/3842\/products\/ipod-nano-2.png?v=1506103682",
  //           "variant_ids": [
  //             808950810
  //           ]
  //         }
  //       ],
  //       "image": {
  //         "id": 850703190,
  //         "product_id": 632910392,
  //         "position": 1,
  //         "created_at": "2017-09-22T14:08:02-04:00",
  //         "updated_at": "2017-09-22T14:08:02-04:00",
  //         "width": 123,
  //         "height": 456,
  //         "src": "https:\/\/cdn.shopify.com\/s\/files\/1\/0006\/9093\/3842\/products\/ipod-nano.png?v=1506103682",
  //         "variant_ids": [
  //         ]
  //       }
  //     }
  //   ]
  // }

  console.log('Example Completed.');
}