# Iceland UK groceries

> Search UK groceries. Supply query or category; anonymous online catalogue prices in GBP.
> ReefAPI engine `iceland` · 3 endpoints · clean JSON, no scraping or browsers to manage.

## How to call
- **Endpoint:** `POST https://api.reefapi.com/iceland/v1/<action>` with a JSON body.
- **Auth:** header `x-api-key: <YOUR_REEFAPI_KEY>` — create one free (1,000 credits, no card): https://reefapi.com/signup
- **Response (every call):** `{ ok: boolean, data: ..., meta: { record_count, credits, ... }, error: { code, message } }` — branch on `ok`. Failed calls are free except verified SHEIN NOT_FOUND on product/detail and price (4 credits).
- **One key + one shared credit pool** across every ReefAPI API. Per-call credits are listed on each endpoint below.
- **Use it from an AI agent (MCP):** connect `https://api.reefapi.com/mcp` (remote streamable-http). Send the key as `Authorization: Bearer <key>`, or put it in the URL (`?key=<key>`) when the client has no header field, as ChatGPT does.

## Endpoints

### POST https://api.reefapi.com/iceland/v1/search — 3 credits
Search UK groceries. Supply query or category; anonymous online catalogue prices in GBP.

**Parameters:**
- `query` (string, optional) — Product words searched by Iceland.
- `category` (string, optional) — Exact category id from facets.categoryPageId.
- `brand` (string, optional) — Exact brand from search facets.
- `availability` (enum, optional, default "in_stock") — Global catalogue status, not store-specific stock. [one of: in_stock, unavailable, all]
- `promotion_id` (string, optional) — Public promotion identifier from a product promotions array.
- `refinements` (object, optional) — Exact source facet names mapped to values (OR within a facet, AND across facets). Use facets returned by search.
- `sort` (enum, optional, default "default") — Iceland ordering; price sorts follow source index ordering. [one of: default, bestsellers, price_asc, price_desc, alpha_asc, alpha_desc]
- `page` (integer, optional, default 1) — One-based page; out-of-range pages return no rows.
- `page_size` (integer, optional, default 24) — Number of products requested per page.

**Returns:** products with shelf/unit prices, promotions and availability; source total, facets and paging metadata.

**Example request body:**
```json
{
  "query": "milk",
  "brand": "Iceland",
  "page_size": 12
}
```

### POST https://api.reefapi.com/iceland/v1/product/detail — 3 credits
Full public product page and label sheet, resolved from the retailer product id.

**Parameters:**
- `product_id` (string, required) — Iceland retailer identifier from search; not a barcode.

**Returns:** product, complete label data, public product page content and independent displayed price witnesses.

**Example request body:**
```json
{
  "product_id": "19492"
}
```

### POST https://api.reefapi.com/iceland/v1/bonus/benefits — 1 credit
Public Bonus Club benefits and terms. Reward credit is separate from product member pricing.

**Parameters:** none

**Returns:** benefits, reward-credit amounts where published, terms and source links.

## At scale
- **Volume:** 5M+ requests a day, measured at 60 requests a second across the fleet with no
  central bottleneck. Per-key limits are raised for high-volume accounts; volume pricing on request.
- **Missing a source:** tell us a site we do not cover and it becomes an engine. A customer asked
  for bestprice.gr on 21 Sep 2026 and it was in the catalog on 22 Sep.
- **Support:** 2 minute median time from a question in the live chat to the first answer. Setup
  help included, no support tier to buy.
- **One key, one credit pool** across every API. No per-site plans, no separate subscriptions.

## More
- Try it live, no code: https://reefapi.com/playground?engine=iceland
- Human docs page: https://reefapi.com/docs/iceland
- Overview page: https://reefapi.com/iceland-api
- Every ReefAPI API in one file (for your AI): https://reefapi.com/llms-full.txt
