Important question here: just how much is a pack of Tim Tams?

Below is the bare minimum curl request that Countdown’s api will accept.

curl 'https://shop.countdown.co.nz/api/v1/products/36066' \
 -H 'user-agent: ' \
 -H 'x-requested-with: any' \
 -H 'cookie: _any='  \
| jq '.price.salePrice'

After processing the JSON response with jq, we now know the price.

3.8

Modifying what we do with jq can give us some more useful information, such as the store name.

jq '{
 sku: .sku,
 name: .name,
 price: .price.salePrice,
 priceOriginal: .price.originalPrice,
 storeID: .context.fulfilment.fulfilmentStoreId,
 storeAreaID: .context.fulfilment.areaId,
 barcode: .images[0].big | gsub("^.*zoom/|.jpg$"; "")
}'

Returns:

{
  "sku": "36066",
  "name": "arnotts tim tam chocolate biscuits original",
  "price": 3.8,
  "priceOriginal": 3.8,
  "storeID": 9101,
  "storeAreaID": 256,
  "barcode": "9310072000282"
}

Of course, I have to run this from a shell manually for now…but the potential for a Tim Tam price checker now exists.

There are other endpoints avaialble; such as:

https://shop.countdown.co.nz/api/v1/products/search-suggestions?term=9310072000282
https://shop.countdown.co.nz/api/v1/products?target=search&search=9310072000282
https://shop.countdown.co.nz/api/v1/products/departments
https://shop.countdown.co.nz/api/v1/fulfilment/time-slots-summary
https://shop.countdown.co.nz/api/v1/shell
https://shop.countdown.co.nz/api/v2/dynamic-content?url=/shop/content/bookatimeslot
https://shop.countdown.co.nz/api/v1/targeted-offers
https://shop.countdown.co.nz/api/v1/recipes/1954/summary
https://shop.countdown.co.nz/api/v1/session
https://login.countdown.co.nz/accounts.login