Endpoint Playground
Returns one page of Boots UK's public product catalog, including product cards and live facets. Supply `q`, one or more hierarchical `category` keys, or both. Use repeatable `filter=facet_key:option_key` values from that response's dynamic facets, plus the dedicated price and stock controls. `sort` accepts `relevance`, `price_low_to_high`, `price_high_to_low`, `top_rated`, `best_seller`, or `newest`.
14 Oct 2026: 20 products; 19 fields had a value in every checked item and 1 varied between items.
Sample value profiles: brand: Boots (16), Garnier (2), The Ordinary (1) and 1 more; rating: 3.49 to 5, median 4.32; part_number: “10274975.P” and 19 other values.
curl 'https://api.crawlora.net/api/v1/boots/search?sort=relevance' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| q | string | No | Free-text product query; required unless category is supplied | |
| category | array | No | Repeat the exact category hierarchy keys from root through the desired leaf; required unless q is supplied | |
| filter | array | No | Repeat a dynamic facet filter as facet_key:option_key, using key/option values returned in facets; category, currentPrice, and inStock use their dedicated parameters | |
| price_min | number | No | Inclusive minimum GBP price; may be combined with price_max | |
| price_max | number | No | Inclusive maximum GBP price; may be combined with price_min | |
| in_stock | boolean | No | true hides out-of-stock items; false leaves stock unfiltered | |
| page | integer | No | Page from 1 through 1000 | |
| page_size | integer | No | Results per page from 1 through 48 | |
| sort | string | No | relevance | Sort: relevance, price_low_to_high, price_high_to_low, top_rated, best_seller, or newest |
{
"code": 200,
"msg": "OK",
"data": {
"query": "vitamin c",
"page": 1,
"page_size": 48,
"sort": "relevance",
"total": 3462,
"count": 1,
"products": [
{
"id": "2351529",
"name": "Boots Vitamin C 500 mg 90 Tablets",
"brand": "Boots",
"price": {
"amount": 5.5,
"currency": "GBP",
"text": "£5.50"
},
"regular_price": {
"amount": 7,
"currency": "GBP",
"text": "£7.00"
},
"unit_price": "£0.06 per 1UNI",
"can_add_to_basket": true,
"variants": {
"has_colours": true,
"has_sizes": false
}
}
],
"facets": [
{
"key": "brand",
"name": "Brand",
"options": [
{
"key": "Boots",
"name": "Boots",
"count": 317
}
]
}
]
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.