Wolt venue menu with prices and options
The full menu of a Wolt venue: every category (with subcategories) and its items: id, name, description, price, original and 30-day lowest price, availability and reason, dietary preferences, tags, alcohol, Wolt+-only flag, per-order limit, unit price, delivery methods, time windows when the item is sold, image and all images, barcode (GTIN, when the venue lists it), caffeine info, VAT percent, minimum per order, whether the item has extra product info, and each option group with type, min/max choices, default and every value's extra price. language picks the menu language (en, the local language or another the venue offers).
Every response includes credits_used: the credits this call cost.
Parameters
| name | type | description |
|---|---|---|
slug | string | The venue slug (from /wolt/v1/venues). Example: mcdonalds-forum-katutaso |
url | string | The venue's wolt.com link instead of slug. |
language | string | Menu language, e.g. en (default), fi, de, pl. |
category | string | Only this category slug. |
Every endpoint also takes fresh, raw, fields (see lean responses and caching).
Example
curl "https://api.api.sh/wolt/v1/menu?slug=mcdonalds-forum-katutaso" \
-H "x-api-key: $APISH_KEY" import os, requests
res = requests.get(
"https://api.api.sh/wolt/v1/menu",
params={"slug": "mcdonalds-forum-katutaso"},
headers={"x-api-key": os.environ["APISH_KEY"]},
timeout=120,
)
res.raise_for_status()
data = res.json() const url = new URL("https://api.api.sh/wolt/v1/menu");
url.searchParams.set("slug", "mcdonalds-forum-katutaso");
const res = await fetch(url, { headers: { "x-api-key": process.env.APISH_KEY } });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
const data = await res.json(); Response
A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).