---
title: "A shopping list compared across chains (no city): shelf / effective / club totals per chain"
method: GET
path: "/basket/chains"
---

# A shopping list compared across chains (no city): shelf / effective / club totals per chain

`GET /basket/chains`

## Request

- Base URL: `https://wizbi.store/api/v1`
- URL: `https://wizbi.store/api/v1/basket/chains`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer
  - API key in query parameter `key`

shelf_total = sum of each chain's median shelf price; effective_total = its lowest price after promotions open to everyone; club_total = the same including club-only promotions. effective/club take each item's lowest price in any of the chain's branches (a best case); the ranking is by shelf_total — use /basket for real branches in one city. POST {"items": [...]} also works.

## Query parameters

- `items` string, required

## Response `200`

Totals per chain

- object
  - `as_of` string, date, nullable, required: Date of the latest price files in the dataset.
  - `source` string, required
  - `source_en` string
  - `page` string, uri, nullable: The human page that shows the same numbers — link it when quoting (also attribution.link).
  - `price_fields` string: What shelf / effective / club mean.
  - `coverage` object, nullable: What the dataset covers on as_of: chains, stores and barcoded products (the same counts as the site).
    - `chains` integer
    - `stores` integer
    - `products` integer
  - `attribution` Attribution, required
    - `required` boolean
    - `text` string
    - `text_en` string
    - `link` string, uri
    - `rule` string
    - `terms` string, uri
  - `data` ChainBasket, required
    - `method` string
    - `items` object[]
    - `matched_items` integer
    - `unmatched` string[]
    - `cheapest_complete_chain` object, nullable
    - `chains` object[]
      - `chain_key` string
      - `chain_name` string
      - `found` integer
      - `of` integer
      - `complete` boolean
      - `shelf_total` number, nullable: Σ the chain's median shelf price × qty. ILS. shelf — the regular price the chain publishes for the store, without any promotion.
      - `effective_total` number, nullable: Σ the chain's lowest effective price × qty. ILS. effective — the lower of the shelf price and a promotion open to every shopper, per unit ("3 for 30" = 10 per unit). This is the price the site compares by default.
      - `club_total` number, nullable: Same, counting club-only promotions. ILS. club — a promotion limited to the chain's loyalty-club members or card holders. Never folded into effective; shown separately.
      - `missing` string[]
      - `url` string, uri
    - `open_as_list` string, uri

## Other responses

- `400`: Error
- `401`: API key missing, invalid or revoked. Free sign-up: https://wizbi.store/developers#register
- `429`: Limit reached (1000/day or 60/minute per key). See Retry-After.
- `503`: Error

---

[API](https://skmtc.dev/wizbi/apis/wizstore-public-api-israeli-supermarket-price-comparison-in.md) · [All operations](https://skmtc.dev/wizbi/apis/wizstore-public-api-israeli-supermarket-price-comparison-in/llms.txt) · [OpenAPI document](https://skmtc.dev/wizbi/apis/wizstore-public-api-israeli-supermarket-price-comparison-in/revisions/f59f5e5e44a4?raw)
