---
title: "Scrape ALDI Australia groceries"
method: POST
path: "/groceries/aldi-au"
tags: ["Plugins"]
---

# Scrape ALDI Australia groceries

`POST /groceries/aldi-au`

## Request

- Base URL: `https://api.scrapeunblocker.com`
- URL: `https://api.scrapeunblocker.com/groceries/aldi-au`
- Auth: API key in header `x-scrapeunblocker-key`

ALDI Australia (aldi.com.au) products as JSON. `mode=search&query=`, `mode=category&category=` and `mode=specials` return `products`: `id` (SKU), `name`, `brand`, `size`, `url`, `price`, `priceText`, `wasPrice`, `onSale`, `unitPrice` (`price`, `per`, `text`), `bottleDeposit`, `specialBuy` (on-sale date and label), `badges`, `available`, `soldOnline`, `ageRestricted`, `image`, `categories` and `categoryKeys`, plus `totalResults`, `totalPages` and `nextPage`. `mode=specials` lists one Special Buys drop (the current one, or the date / link in `category`; `theme` narrows it) and returns `promotions`, every drop ALDI has announced with its themes. `mode=product&product=` returns `product` with those fields and `description`, `ingredients`, `allergens`, `claims`, `storage`, `usage`, `countryOfOrigin` and `images`. Prices are ALDI's in-store prices in AUD (ALDI Australia does not sell groceries online). Listings collect up to `max_results` from `page` on, billed one unit per page.

## Query parameters

- `mode` string, nullable: 'search' (default): products matching `query`. 'category': a category listing. 'specials': a Special Buys drop. 'product': one product with ingredients and its images. Defaults to 'product' when `product` is given and to 'category' when `category` is.
- `query` string, nullable: What to search for (mode=search), e.g. 'milk', 'chocolate', 'nappies'.
- `category` string, nullable: mode=category: a category link (https://www.aldi.com.au/products/dairy-eggs-fridge/milk/k/1111111160) or its key ('1111111160'; '1588161425841179' = Lower Prices). mode=specials: the Special Buys drop - its date ('2026-10-14') or link (https://www.aldi.com.au/special-buys/2026-10-14); blank = the current drop.
- `product` string, nullable: mode=product: an ALDI SKU ('000000000000398691') or a product link (https://www.aldi.com.au/product/farmdale-light-milk-2l-000000000000398691).
- `theme` string, nullable: mode=specials: one theme of the drop, e.g. 'Gardening' (see `promotions[].themes`).
- `sort` string: Listing order: relevance, price_asc, price_desc, name_asc, name_desc.
- `page` integer: 1-based listing page to start from (60 products per page).
- `max_results` integer: Products to collect across pages, 1-600. Each page fetched is billed one unit.
- `proxy_country` string, nullable: Proxy country the request is sent from (ISO-2, e.g. 'AU', 'US'). Leave blank: ALDI answers every country, so the load spreads over all exits.

## Response `200`

JSON with `products` (listings) or `product`. A search with no matches answers 200 with an empty `products` list.

- unknown

## Other responses

- `400`: Invalid parameters.
- `404`: ALDI has no such product, or no Special Buys drop on that date.
- `422`: Validation Error
- `502`: No answer from ALDI on any attempt, an unusable answer, or no answer in time.

---

[API](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api.md) · [All operations](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api/revisions/c02f1254cc47?raw)
