Endpoint Playground
Returns Just Eat's full restaurant listing for a UK postcode -- every restaurant the site's own area page carries, ordered as Just Eat's default "best match" sort presents them (or by sort_by, if set), not a curated subset. Each restaurant carries its unique_name (the value the restaurant and menu endpoints take), name, image, rating, delivery time window, and open-now status. A postcode with no coverage returns an empty list rather than an error.
14 Oct 2026: 20 restaurants; 9 fields had a value in every checked item and 2 varied between items.
Sample value profiles: rating: 4 to 5, median 5; name: “Magic Wok” and 19 other values; image_url: d30v2pzvrfyzpo.cloudfront.net.
curl 'https://api.crawlora.net/api/v1/justeat/search?postcode=SW1A+1AA&sort_by=best_match' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| postcode | string | Yes | SW1A 1AA | UK postcode to search near |
| limit | integer | No | Restaurants to return, clamped to 100 (default 20) | |
| filter | array | No | Repeatable. Just Eat's own area-page filter slugs (e.g. open_now, or a cuisine tile's slug), passed through as-is and OR'd together. Also reaches non-restaurant categories -- groceries, alcohol, pharmacy, electronics, and more -- via the same mechanism, e.g. filter=groceries. The valid slug set is specific to the postcode you are searching -- call /justeat/search/filters with the same postcode for the current, complete, location-scoped list with live result counts. An unrecognized slug narrows to a smaller or empty result rather than erroring. | |
| sort_by | string | No | best_match | Result order, matching the area page's own Sort by control. Default best_match. |
{
"code": 200,
"msg": "OK",
"data": {
"restaurants": [
{
"restaurant_id": "120913",
"name": "McDonald's® - Victoria",
"unique_name": "mcdonalds-victorialondon",
"image_url": "https://d30v2pzvrfyzpo.cloudfront.net/uk/images/restaurants/120913.gif",
"city": "London",
"postal_code": "SW1E 5NA",
"rating": 4.5,
"rating_count": 4647,
"delivery_eta_min_minutes": 10,
"delivery_eta_max_minutes": 25,
"is_open_now": true
}
],
"total_count": 2173
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.