---
title: "List Cole Haan products"
method: GET
path: "/colehaan/products"
tags: ["Cole Haan"]
---

# List Cole Haan products

`GET /colehaan/products`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/colehaan/products`
- Auth: API key in header `x-api-key`

Returns products from Cole Haan's (https://www.colehaan.com) product catalog. The storefront URL is fixed server-side. Valid empty result pages return `200` with an empty products array.

## Query parameters

- `page` integer
- `limit` integer

## Headers

- `x-api-key` string, required

## Response `200`

OK

- ShopifybrandsProductsResponseDoc
  - `code` integer
  - `data` ShopifyProductsResponse
    - `facets` object: Facets and FacetsStats are populated when TransportMode is ssr_embedded (from the storefront's own embedded search-index facet buckets) or storefront_filtered (from the storefront's own Storefront Filtering sidebar -- Size/Color/etc. option facets, Product Type, and a "price" FacetsStats entry for the price-range slider's own min/max bounds).
    - `facets_stats` object: Lowest, highest and average value per numeric facet such as `price`. Present only when `transport_mode` is set.
    - `filters` object: Facet filters applied, mapping each facet name to the values requested. Present only for headless storefronts.
    - `in_stock_only` boolean: Whether only in-stock products were requested. Present only when `transport_mode` is `storefront_filtered`.
    - `limit` integer: Maximum number of products returned per page.
    - `max_price` number: Maximum price filter applied. Present only when `transport_mode` is `storefront_filtered`.
    - `min_price` number: Minimum price filter applied. Present only when `transport_mode` is `storefront_filtered`.
    - `page` integer: Page number returned.
    - `product_type` string[]: Product types the results were filtered to. Present only when `transport_mode` is `storefront_filtered`.
    - `products` ShopifyProductItem[]: Products on this page, one item per product.
      - `available` boolean: Whether at least one variant is available to buy.
      - `canonical_colour` string: Main colour name the storefront groups the product under, for example `black`.
      - `collection_tags` string[]: Collections the product is listed in, as the storefront labels them.
      - `colour` string: The fields below are only populated when the product was resolved via the embedded-SSR-JSON fallback transport (see ssr_fallback.go) and the source page exposed this data; they are additive and never populated for classic-store responses.
      - `compare_at_price` number: Original price before discount, in the store's currency. The highest compare-at price across variants.
      - `condition` string: Condition is only populated for resale-marketplace search results (Fashionphile's AlgoliaSearch, Rebag's StorefrontSearch -- see search.go) whose catalog data exposes a condition grade. Never populated for any other brand or endpoint in this family.
      - `created_at` string: Time the record was created, as Shopify returns it.
      - `description` string: Product description as plain text.
      - `discount_percentage` number: Discount currently applied to the product, as a percentage.
      - `featured_image` string: URL of the product's main image.
      - `handle` string: URL slug of the product, for example `mens-wool-runners`.
      - `id` string: Shopify product id.
      - `images` ShopifyImageItem[]: Images of the product, in the storefront's order.
        - `alt` string: Alternative text of the image.
        - `created_at` string: Time the record was created, as Shopify returns it.
        - `height` integer: Image height in pixels.
        - `id` string: Shopify image id.
        - `position` integer: Position of the image in the product's image list, starting at 1.
        - `updated_at` string: Time the record was last updated, as Shopify returns it.
        - `url` string: URL of the image file.
        - `variant_ids` string[]: Ids of the variants this image is attached to.
        - `width` integer: Image width in pixels.
      - `labels` string[]: Badges the storefront shows on the product, for example `new`.
      - `options` ShopifyOptionItem[]: Options the product varies by, such as size or colour.
        - `name` string: Option name, for example `Size`.
        - `position` integer: Position of the option on the product, starting at 1.
        - `values` string[]: Values the option can take, for example `S` or `M`.
      - `price` number: Current price in the store's currency. The lowest variant price when variants are listed.
      - `product_type` string: Product type set by the merchant, for example `Shoes`.
      - `published_at` string: Time the record was published, as Shopify returns it.
      - `rating` number: Average customer rating shown by the storefront.
      - `rating_count` integer: Number of customer ratings behind `rating`.
      - `tags` string[]: Tags the merchant attached to the product.
      - `title` string: Product name as shown on the storefront.
      - `updated_at` string: Time the record was last updated, as Shopify returns it.
      - `url` string: Storefront page URL of the product.
      - `variants` ShopifyVariantItem[]: Purchasable variants of the product, such as each size and colour.
        - `available` boolean: Whether this variant is currently available to buy.
        - `barcode` string: Barcode of the variant, such as a UPC or EAN.
        - `compare_at_price` number: Original price before discount, in the store's currency.
        - `created_at` string: Time the record was created, as Shopify returns it.
        - `featured_image` string: URL of the image shown for this variant.
        - `grams` integer: Weight of the variant in grams.
        - `id` string: Shopify variant id.
        - `inventory_quantity` integer: InventoryQuantity is only populated via the embedded-SSR-JSON fallback transport (see ssr_fallback.go); classic-store responses never set it.
        - `option1` string: Value of the product's first option for this variant, for example a size.
        - `option2` string: Value of the product's second option for this variant.
        - `option3` string: Value of the product's third option for this variant.
        - `position` integer: Position of the variant in the product's variant list, starting at 1.
        - `price` number: Current price of the variant in the store's currency.
        - `product_id` string: Shopify id of the product the variant belongs to.
        - `requires_shipping` boolean: Whether the variant is a physical item that needs shipping.
        - `sku` string: Merchant stock keeping unit code of the variant.
        - `taxable` boolean: Whether tax is charged on the variant.
        - `title` string: Variant name, for example `Natural Black / 10`.
        - `updated_at` string: Time the record was last updated, as Shopify returns it.
      - `vendor` string: Brand or vendor name set by the merchant.
    - `sort` 'sortLTH' | 'sortHTL' | 'newest': Sort and Filters echo back the effective sortBy/facet-filter query params that were applied, present only when transport_mode is ssr_embedded and the caller supplied at least one. Always omitted for the classic transport (which rejects them as invalid params instead).
    - `sort_by` 'manual' | 'best-selling' | 'title-ascending' | 'title-descending' | 'price-ascending' | 'price-descending' | 'created-ascending' | 'created-descending': SortBy, MinPrice, MaxPrice, ProductType, InStockOnly, and VariantOptions echo back the effective storefront-filtering params that were applied, present only when transport_mode is storefront_filtered.
    - `source_url` string: URL the data was read from.
    - `store_url` string: Base URL of the Shopify storefront that was queried.
    - `total_items` integer: TotalItems and TotalPages are populated only when TransportMode is ssr_embedded, from the storefront's own embedded search-result pagination metadata.
    - `total_pages` integer: Total number of result pages. Present only for headless storefronts.
    - `transport_mode` 'ssr_embedded' | 'storefront_filtered': Set to `ssr_embedded` for headless storefronts, or `storefront_filtered` when sort, price, product type, in-stock or variant filters were applied. Omitted otherwise.
    - `variant_options` object: Variant option filters applied, mapping an option name such as `size` to the values requested. Present only when `transport_mode` is `storefront_filtered`.
  - `msg` string

## Other responses

- `400`: Bad Request
- `429`: Too Many Requests
- `503`: Service Unavailable

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/0497899e2016?raw)
