Queek docs
Storefront endpoint reference

Collections

GET
/store/collections

Curated and smart collections the merchant built (e.g. "New in", "Best sellers"). Use a collection’s id or slug with collections/{collection}/products.

Authorization

clientKey
X-Client-Key<token>

The store's API key (Dashboard → Settings → API keys). pk_live_… public keys are for browser code and only work from an origin on the key's allowlist; sk_live_… private keys are for servers and native apps and need no Origin.

In: header

Query Parameters

mode?|

Value in

  • "all"
  • "manual"
  • "smart"
  • null
include_empty?boolean|null
storefront?boolean|null
locale?string

Render this read in a published store locale (see GET store/locales). Unknown or unpublished codes fall back to the primary locale; the answer carries the locale used in Content-Language.

Header Parameters

X-Client-Key*string

Your store API key (Dashboard → Settings → API keys). pk_live_… public keys are for browser code and only work from an origin on the key's allowlist; sk_live_… private keys are for servers and native apps and need no Origin.

X-Request-Id?string

Your own correlation id (8–128 chars, ^[A-Za-z0-9_.:-]+$). Echoed back on the response and on every log line of the request; one is generated when you omit it.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/store/collections" \  -H "X-Client-Key: {{clientKey}}"
{  "data": [    {      "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c25",      "name": "New Season",      "slug": "new-season",      "description": "Fresh off the atelier table.",      "image": "https://media.usequeek.com/uploads/stores/2207/collections/new-season.jpg",      "image_variants": null,      "featured": true,      "parent_id": null,      "mode": "manual",      "products_count": 2,      "children": []    },    {      "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c26",      "name": "Owambe Ready",      "slug": "owambe-ready",      "description": "Party-season statement pieces.",      "image": null,      "image_variants": null,      "featured": false,      "parent_id": null,      "mode": "smart",      "products_count": 1,      "children": []    }  ],  "status": "success",  "message": "Collections retrieved",  "meta": []}
GET
/store/collections/{collection}/products

Paginated products in one collection, in the merchant’s order.

Authorization

clientKey
X-Client-Key<token>

The store's API key (Dashboard → Settings → API keys). pk_live_… public keys are for browser code and only work from an origin on the key's allowlist; sk_live_… private keys are for servers and native apps and need no Origin.

In: header

Path Parameters

collection*string

Query Parameters

keyword?|
Lengthlength <= 100
sort?|

Value in

  • "newest"
  • "price_low"
  • "price_high"
  • "popular"
  • null
in_stock?boolean|null
per_page?|
Range1 <= value <= 50
starting_after?string

Keyset cursor: pass the previous page next_cursor. Walk while has_more is true; a stale, tampered, cross-list or filter-changed cursor answers 422 starting_after_invalid. Never combine with page.

limit?integer

Items per read (alias of per_page, max 50). page mode caps at page 50 (page_too_deep); walk the cursor past that.

attributes?array<array<|>>
locale?string

Render this read in a published store locale (see GET store/locales). Unknown or unpublished codes fall back to the primary locale; the answer carries the locale used in Content-Language.

Header Parameters

X-Client-Key*string

Your store API key (Dashboard → Settings → API keys). pk_live_… public keys are for browser code and only work from an origin on the key's allowlist; sk_live_… private keys are for servers and native apps and need no Origin.

X-Request-Id?string

Your own correlation id (8–128 chars, ^[A-Za-z0-9_.:-]+$). Echoed back on the response and on every log line of the request; one is generated when you omit it.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/store/collections/new-season/products?per_page=15&limit=15" \  -H "X-Client-Key: {{clientKey}}"
{  "status": "success",  "message": "Collection products retrieved",  "data": [    {      "shop_id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c01",      "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c11",      "p_id": 31501,      "title": "Ankara Midi Dress",      "slug": "ankara-midi-dress",      "excerpt": "Flared ankara midi with pockets, cut in Lagos.",      "description": "Our signature flared midi in premium cotton ankara, with side pockets and a concealed back zip. Cut and finished in our Lekki atelier.",      "image": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-card.webp",      "thumbnail_image": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-thumb.webp",      "video_url": null,      "video_poster_url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-card.webp",      "type": "product",      "commerce_mode": "shop",      "currency": "NGN",      "price": 28500,      "discount_price": 24225,      "compare_at_price": 28500,      "is_price_from": false,      "price_range": {        "min": 28500,        "max": 28500      },      "has_variants": true,      "has_addons": false,      "tax_inclusive": false,      "discount": {        "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c31",        "title": "Lagos Fashion Week 15% Off",        "type": "percentage",        "value": 15,        "amount": 4275,        "final_price": 24225,        "image_url": "https://media.usequeek.com/uploads/stores/2207/discounts/fashion-week.jpg"      },      "discounts": [        {          "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c31",          "title": "Lagos Fashion Week 15% Off",          "type": "percentage",          "value": 15,          "amount": 4275,          "final_price": 24225,          "image_url": "https://media.usequeek.com/uploads/stores/2207/discounts/fashion-week.jpg"        }      ],      "media": {        "thumbnail": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-thumb.webp",        "image": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-card.webp",        "original": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress.jpg",        "primary_variant_image": null,        "image_variants": {          "thumb": {            "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-thumb.webp",            "w": null,            "h": null          },          "card": {            "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-card.webp",            "w": 480,            "h": 600          },          "card2x": {            "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-card2x.webp",            "w": 800,            "h": 1000          },          "view": {            "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-view.webp",            "w": 1200,            "h": 1500          },          "wa": {            "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-wa.jpg",            "w": 1080,            "h": 1350          },          "original": {            "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress.jpg",            "w": 1200,            "h": 1500          }        },        "primary_variant_image_variants": null,        "images": [          {            "id": 77101,            "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-card.webp",            "alt": "Ankara midi dress on a mannequin",            "variants": {              "thumb": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-thumb.webp",                "w": null,                "h": null              },              "card": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-card.webp",                "w": 480,                "h": 600              },              "card2x": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-card2x.webp",                "w": 800,                "h": 1000              },              "view": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-view.webp",                "w": 1200,                "h": 1500              },              "wa": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-wa.jpg",                "w": 1080,                "h": 1350              },              "original": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress.jpg",                "w": 1200,                "h": 1500              }            }          },          {            "id": 77103,            "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-back-card.webp",            "alt": "Ankara midi dress, back view",            "variants": {              "thumb": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-back-thumb.webp",                "w": null,                "h": null              },              "card": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-back-card.webp",                "w": 480,                "h": 600              },              "card2x": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-back-card2x.webp",                "w": 800,                "h": 1000              },              "view": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-back-view.webp",                "w": 1200,                "h": 1500              },              "wa": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-back-wa.jpg",                "w": 1080,                "h": 1350              },              "original": {                "url": "https://media.usequeek.com/uploads/stores/2207/ankara-midi-dress-back.jpg",                "w": 1200,                "h": 1500              }            }          }        ]      },      "inventory": {        "in_stock": true,        "tracking": true,        "quantity": 18      },      "variant_summary": {        "count": 3,        "min_price": 28500,        "max_price": 28500,        "total_stock": 18,        "tracks_inventory": true,        "in_stock": true      },      "variants_count": 3,      "rating": 4.5,      "review_count": 132,      "flags": {        "featured": false,        "is_marketplace": false,        "is_wholesale": false,        "is_new": false      },      "metafields": {},      "created_at": "2026-06-18 09:40:00",      "updated_at": "2026-09-22 16:05:00",      "shop": {        "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c01",        "name": "Zuri Atelier",        "slug": "zuri-atelier",        "logo": "https://media.usequeek.com/uploads/stores/2207/logo.png",        "rating": 4.7,        "rating_count": 486      }    },    {      "shop_id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c01",      "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c12",      "p_id": 31502,      "title": "Aso-Oke Head Wrap",      "slug": "aso-oke-head-wrap",      "excerpt": "Hand-woven aso-oke wrap in burnt orange.",      "description": "Hand-woven aso-oke head wrap in burnt orange with metallic striping. Two metres, ready to tie.",      "image": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-card.webp",      "thumbnail_image": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-thumb.webp",      "video_url": null,      "video_poster_url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-card.webp",      "type": "product",      "commerce_mode": "shop",      "currency": "NGN",      "price": 8500,      "discount_price": 8500,      "compare_at_price": null,      "is_price_from": false,      "price_range": null,      "has_variants": false,      "has_addons": false,      "tax_inclusive": false,      "discount": null,      "discounts": [],      "media": {        "thumbnail": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-thumb.webp",        "image": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-card.webp",        "original": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap.jpg",        "primary_variant_image": null,        "image_variants": {          "thumb": {            "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-thumb.webp",            "w": null,            "h": null          },          "card": {            "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-card.webp",            "w": 480,            "h": 480          },          "card2x": {            "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-card2x.webp",            "w": 800,            "h": 800          },          "view": {            "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-view.webp",            "w": 1200,            "h": 1200          },          "wa": {            "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-wa.jpg",            "w": 1080,            "h": 1080          },          "original": {            "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap.jpg",            "w": 1200,            "h": 1200          }        },        "primary_variant_image_variants": null,        "images": [          {            "id": 77102,            "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-card.webp",            "alt": "Burnt-orange aso-oke head wrap, folded",            "variants": {              "thumb": {                "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-thumb.webp",                "w": null,                "h": null              },              "card": {                "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-card.webp",                "w": 480,                "h": 480              },              "card2x": {                "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-card2x.webp",                "w": 800,                "h": 800              },              "view": {                "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-view.webp",                "w": 1200,                "h": 1200              },              "wa": {                "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap-wa.jpg",                "w": 1080,                "h": 1080              },              "original": {                "url": "https://media.usequeek.com/uploads/stores/2207/aso-oke-head-wrap.jpg",                "w": 1200,                "h": 1200              }            }          }        ]      },      "inventory": {        "in_stock": true,        "tracking": true,        "quantity": 34      },      "variant_summary": null,      "variants_count": 0,      "rating": 4.9,      "review_count": 58,      "flags": {        "featured": false,        "is_marketplace": false,        "is_wholesale": false,        "is_new": false      },      "metafields": {},      "created_at": "2026-07-02 13:15:00",      "updated_at": "2026-09-22 16:05:00",      "shop": {        "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c01",        "name": "Zuri Atelier",        "slug": "zuri-atelier",        "logo": "https://media.usequeek.com/uploads/stores/2207/logo.png",        "rating": 4.7,        "rating_count": 486      }    }  ],  "meta": {    "collection": {      "id": "019b0c4d-5e6f-7a8b-9c0d-1e2f3a4b5c25",      "name": "New Season",      "slug": "new-season",      "description": "Fresh off the atelier table.",      "image": "https://media.usequeek.com/uploads/stores/2207/collections/new-season.jpg",      "image_variants": null,      "featured": true,      "parent_id": null,      "mode": "manual",      "products_count": 2,      "children": []    },    "filters": {      "attributes": [        {          "name": "Size",          "slug": "size",          "type": "size",          "values": [            {              "value": "L",              "slug": "l",              "count": 1,              "selected": false,              "color_code": null            },            {              "value": "M",              "slug": "m",              "count": 1,              "selected": false,              "color_code": null            },            {              "value": "S",              "slug": "s",              "count": 1,              "selected": false,              "color_code": null            }          ]        }      ]    }  },  "has_more": false,  "next_cursor": null}